Mathieu Duponchelle [Tue, 6 May 2014 13:34:08 +0000 (15:34 +0200)]
scenarios: add a stateless property.
This property enables the user to have actions executed independently
of the state of the pipeline.
Conflicts:
validate/gst/validate/gst-validate-scenario.c
Mathieu Duponchelle [Mon, 5 May 2014 15:00:45 +0000 (17:00 +0200)]
scenario: make sure to not execute actions when changing state.
Conflicts:
validate/gst/validate/gst-validate-scenario.c
Thibault Saunier [Sun, 4 May 2014 07:30:14 +0000 (09:30 +0200)]
validate: The 'buffering' variable needs to be static
We need its value between bus_callback calls to be the same
Luis de Bethencourt [Fri, 2 May 2014 21:25:07 +0000 (17:25 -0400)]
gst-validate: some static variables can be local
buffering is only used inside the bus_callback, so it can have that local
scope. same thing with ret which is only used in the main function.
Luis de Bethencourt [Fri, 2 May 2014 20:53:51 +0000 (16:53 -0400)]
gst-validate: small typo in usage summary
Thibault Saunier [Fri, 2 May 2014 18:05:28 +0000 (20:05 +0200)]
validate: Wait for the PAUSED state to be reached before executing actions
Thibault Saunier [Fri, 2 May 2014 17:00:49 +0000 (19:00 +0200)]
validate: Fix the name of the sintel blacklisting
Thibault Saunier [Fri, 2 May 2014 16:50:41 +0000 (18:50 +0200)]
validate: Add a scenario to disable subtitle track while paused
Thibault Saunier [Fri, 2 May 2014 12:06:18 +0000 (14:06 +0200)]
validate: Implement frame by frame writing in the media descriptor writer
+ Add an option to fully parse media files in the gst-validate-media-check tool
Thibault Saunier [Thu, 1 May 2014 12:58:14 +0000 (14:58 +0200)]
validate: Execute position right when the pipeline reaches PAUSED
We might go to PAUSED SYNC if nothing happens in the pipeline
Thibault Saunier [Thu, 1 May 2014 12:11:24 +0000 (14:11 +0200)]
validate: Add a scenario that disable subtitles
+ Clean the sythax to define switch-track action that actually
desactivate the track
Thibault Saunier [Thu, 1 May 2014 10:52:09 +0000 (12:52 +0200)]
validate: Do not execute action when buffering
While buffering we should no try to execute anything as we would not be
controlling properly the execution.
+ Activate scrub forward seeking for HTTP streams
Thibault Saunier [Thu, 1 May 2014 10:34:35 +0000 (12:34 +0200)]
validate: Add a scenario that switches subtitle track while paused
+ Integrate it in the launcher
Thibault Saunier [Thu, 1 May 2014 09:32:42 +0000 (11:32 +0200)]
validate:launcher: Sensibly simplify scenario handling
Thibault Saunier [Thu, 1 May 2014 08:27:53 +0000 (10:27 +0200)]
validate: Plug a minor leak
Thibault Saunier [Wed, 30 Apr 2014 13:51:43 +0000 (15:51 +0200)]
validate: Use ges-launch recursing path new feature
And fix path to URI conversion
Thibault Saunier [Wed, 30 Apr 2014 13:40:10 +0000 (15:40 +0200)]
validate: Add a gst-validate-launcher documentation
Thibault Saunier [Wed, 30 Apr 2014 09:52:00 +0000 (11:52 +0200)]
validate:launcher: Port OptionParser to ArgParse
Thibault Saunier [Wed, 30 Apr 2014 09:20:43 +0000 (11:20 +0200)]
validate: Can not do reverse playback on sintel sample
+ Minor improvement in the CLI
Thibault Saunier [Wed, 30 Apr 2014 09:13:51 +0000 (11:13 +0200)]
validate:launcher: Do not except meaningless argument in ges-launch
Thibault Saunier [Wed, 30 Apr 2014 09:06:09 +0000 (11:06 +0200)]
validate: Handle per file special scenarios
When a file is int the same folder as a media file and has a name like:
mediafilename.mkv.scenarios_name.scenario we run that scenario on that
particular file
Thibault Saunier [Wed, 30 Apr 2014 07:35:03 +0000 (09:35 +0200)]
validate: Allow specifying scenarios to parse when lisiting them
It used to only handle the scenario present in proper paths, we
also need to handle special scenarios provided by users on the fly
Thibault Saunier [Tue, 29 Apr 2014 18:00:21 +0000 (20:00 +0200)]
validate: Handle ERROR on the bus when monitoring the pipeline
This way the user get a clear information in the report about the issue
+ sensibly cleanup code
Thibault Saunier [Tue, 29 Apr 2014 17:04:46 +0000 (19:04 +0200)]
validate: Add a scenarios that switchs subtitle track
+ Make it easier and cleaner to tell that a switch is actually disabling
a track type.
And run the scenario in gst-validate-launcher by default
Thibault Saunier [Tue, 29 Apr 2014 16:51:54 +0000 (18:51 +0200)]
validate: Add a switch_audio_track_while_paused scenario
And run it as a default
Thibault Saunier [Thu, 1 May 2014 16:20:25 +0000 (18:20 +0200)]
validate: Add an action to set an external URI file on playbin at runtime
Thibault Saunier [Thu, 1 May 2014 16:19:50 +0000 (18:19 +0200)]
validate: Override switch_track action when using a playbin
And use the playbin feature for that when the pipeline is based on playbin
Thibault Saunier [Thu, 1 May 2014 16:17:44 +0000 (18:17 +0200)]
validate: Do not g_strrstr with a NULL pointer as needle
Thibault Saunier [Thu, 1 May 2014 16:16:16 +0000 (18:16 +0200)]
validate: Print more details when executing the switch_track action
+ Fix some issue in the memory freeing codepath of GstValidateAction
Thibault Saunier [Tue, 29 Apr 2014 15:16:50 +0000 (17:16 +0200)]
validate: Do not try to use a NULL iter
Thiago Santos [Wed, 2 Oct 2013 00:11:35 +0000 (21:11 -0300)]
pad-monitor: check that no buffers are pushed after a pad is EOS
Make sure no resources are wasted after elements are done with the
current segment
Thibault Saunier [Mon, 28 Apr 2014 11:08:09 +0000 (13:08 +0200)]
launcher: Now using git annex to handle media files
Thibault Saunier [Sat, 26 Apr 2014 07:52:37 +0000 (09:52 +0200)]
validate: Expose a seeking method so other actions types can seek
Other action types might need to seek and we GstValidateScenario need
to know about it, add a method others can use to do the seeking
Thibault Saunier [Sat, 26 Apr 2014 07:16:26 +0000 (09:16 +0200)]
Revert "validate:launcher: Always put gst-validate result as stderr in reports"
This reverts commit
925ff7542b69bb5516b6eb5b4488da23124a0cbc.
Actually jenkins never truncates on failure stacktrace... we do not
want to set gst-validate as failure stacktrace in our results. That
commit was not usefull.
Thibault Saunier [Sat, 26 Apr 2014 06:11:20 +0000 (08:11 +0200)]
validate:launcher: Always put gst-validate result as stderr in reports
This way jenkins will always keep the information in its database even
if the test passes
Thibault Saunier [Fri, 25 Apr 2014 16:33:33 +0000 (18:33 +0200)]
validate: Pass -scenario.c into gst-indent and fix some docs
Thibault Saunier [Fri, 25 Apr 2014 16:27:30 +0000 (18:27 +0200)]
validate: Add a "dot-pipeline" action
Thibault Saunier [Fri, 25 Apr 2014 16:26:50 +0000 (18:26 +0200)]
validate: Return a boolean when parsing an enum string
Thibault Saunier [Fri, 25 Apr 2014 11:42:03 +0000 (13:42 +0200)]
validate:scenarios: Prefer stop action instead of EOS when appropriate
Thibault Saunier [Fri, 25 Apr 2014 11:19:19 +0000 (13:19 +0200)]
validate:launcher: Properly set error message when sending EOS did not work
Thibault Saunier [Fri, 25 Apr 2014 11:18:41 +0000 (13:18 +0200)]
validate:launcher: Add a way to specify tests filtering only on defaults
Thibault Saunier [Fri, 25 Apr 2014 11:17:39 +0000 (13:17 +0200)]
validate:launcher: Add support for audio track switching scenario
Thibault Saunier [Fri, 25 Apr 2014 09:32:04 +0000 (11:32 +0200)]
validate:launcher: Make it possible to run any scenario test in gst-validate
Thibault Saunier [Fri, 25 Apr 2014 09:31:27 +0000 (11:31 +0200)]
validate:launcher: Do not run reverse playback on mpegts files
Thibault Saunier [Fri, 25 Apr 2014 09:31:01 +0000 (11:31 +0200)]
validate:launcher: Cleanup media descriptor usage
Thibault Saunier [Fri, 25 Apr 2014 08:23:21 +0000 (10:23 +0200)]
validate:launch: Port to the new media_info format
Thibault Saunier [Thu, 24 Apr 2014 13:41:50 +0000 (15:41 +0200)]
validate: Add a media-descriptor parser and writer
Thibault Saunier [Wed, 23 Apr 2014 11:25:44 +0000 (13:25 +0200)]
validate: Minor printing cleanup
Thibault Saunier [Wed, 23 Apr 2014 11:24:23 +0000 (13:24 +0200)]
validate: Add a 'stop' action to stop a pipeline
It uses the GST_MESSAGE_REQUEST state with the scenario as a source
so that application can stop running when they receive it on the bus.
Thibault Saunier [Wed, 23 Apr 2014 09:47:10 +0000 (11:47 +0200)]
validate:launcher: Use the new validatelog file
Making the output cleaner and clearer in junit XML file
Thibault Saunier [Wed, 23 Apr 2014 09:27:41 +0000 (11:27 +0200)]
validate: Handle position printing at the monitor level
Instead of replicating that code all around
Thibault Saunier [Wed, 23 Apr 2014 09:16:29 +0000 (11:16 +0200)]
validate: Add printing utilities
Allowing the user to print everyting in a file through the
GST_VALIDATE_FILE env variable
Thibault Saunier [Tue, 22 Apr 2014 14:50:08 +0000 (16:50 +0200)]
validate: Add an action to wait for a given amout of time
During that time we will just not execute any new action
+ Lower WARNING to DEBUG when no playbcak_time is provided for an
action, it should just be 0.
Thibault Saunier [Tue, 22 Apr 2014 10:02:35 +0000 (12:02 +0200)]
validate: Check that for raw, buffers are strictly contained in segment
For encoded data we might need buffers that have timestamp <
segment.start to make sure that we have the keyframe, etc... but for raw
data, buffer end should strictly be inside the segment, be more strict
about that.
Thibault Saunier [Tue, 22 Apr 2014 09:21:34 +0000 (11:21 +0200)]
validate: PAR is not a mandatory field
Also make it possible to check other not mandatory fields in the future
Thibault Saunier [Tue, 22 Apr 2014 09:10:01 +0000 (11:10 +0200)]
validate: Do not use GST_PTR_FORMAT when reporting
It will not work now that we have our own implementation of printf for that in Gst and
thus provide us with pretty useless infos
Thibault Saunier [Tue, 22 Apr 2014 08:49:10 +0000 (10:49 +0200)]
validate:launcher: Send SIGINT signal instead of killing the subprocess
This way we get the result from GstValidate even on timeouts
Thibault Saunier [Tue, 22 Apr 2014 07:42:57 +0000 (09:42 +0200)]
validate:launcher: Always set sync=True on fakesink on playback pipelines
This way we are in closer condition of real sink playback.
+ some minor cleanup in gst-validate.c
Thibault Saunier [Thu, 17 Apr 2014 10:58:48 +0000 (12:58 +0200)]
validate:launcher: ring-buffer-max-size is in bytes
Thibault Saunier [Thu, 17 Apr 2014 10:17:03 +0000 (12:17 +0200)]
validate: Handle g_log errors at the gst-validate level
Thibault Saunier [Thu, 17 Apr 2014 09:23:23 +0000 (11:23 +0200)]
validate: Allow comments in scenario files
Comment are per line only and start with #
Thibault Saunier [Tue, 15 Apr 2014 13:26:36 +0000 (15:26 +0200)]
validate:launcher: Fix default blacklist management
Thibault Saunier [Wed, 2 Apr 2014 17:14:30 +0000 (19:14 +0200)]
validate:launcher: Print the number of the test being run
Thibault Saunier [Wed, 2 Apr 2014 17:13:50 +0000 (19:13 +0200)]
validate: Avoid segfault when discovering fails
In that case the x->stream_info might not be set
Thibault Saunier [Wed, 2 Apr 2014 10:12:11 +0000 (12:12 +0200)]
validate:launcher: Fix mixup in media_check tests expected file path
Thibault Saunier [Mon, 31 Mar 2014 11:54:27 +0000 (13:54 +0200)]
validate:launcher: Flush stdout each time we print
So everything gets printed on time on windows and jenkins
Thibault Saunier [Mon, 31 Mar 2014 09:03:48 +0000 (11:03 +0200)]
validate: launcher: Use the ConfigPraser object everywhere for file_infos
Thibault Saunier [Fri, 28 Mar 2014 14:01:12 +0000 (15:01 +0100)]
validate:launcher: Properly handle missing scenarios on the system
Thibault Saunier [Fri, 28 Mar 2014 14:00:45 +0000 (15:00 +0100)]
validate:launcher: Handle windows path to construct arguments
Thibault Saunier [Fri, 28 Mar 2014 14:00:01 +0000 (15:00 +0100)]
validate:launcher: Handle the fact that win32 apps end with .exe
Thibault Saunier [Fri, 28 Mar 2014 10:30:01 +0000 (11:30 +0100)]
validate: Do not build LD_PRELOAD related code on windows
And do not forget to link against gst-pbutils
Thibault Saunier [Fri, 28 Mar 2014 09:30:21 +0000 (10:30 +0100)]
validate: Use GModule to 'dlopen' ovverrides
We want gst-validate to be cross platform so use cross platform tools
Thibault Saunier [Wed, 26 Mar 2014 19:09:12 +0000 (20:09 +0100)]
validate:launcher: Put gst logs in a specific file
+ Make default timeout 30seconds just in case.
Thibault Saunier [Wed, 26 Mar 2014 18:37:44 +0000 (19:37 +0100)]
validate: launcher: Let the use debug on test fail
When a test timeouts, let the user know about the subprocess etc,
and let him possibly connect gdb to it.
Thibault Saunier [Wed, 26 Mar 2014 10:46:48 +0000 (11:46 +0100)]
validate:launcher: Do not set sample path to letter in ges-launch
Thibault Saunier [Wed, 26 Mar 2014 10:00:32 +0000 (11:00 +0100)]
validate:launcher: Start the server only when actually needed to run filtered tests
Thibault Saunier [Wed, 26 Mar 2014 09:56:58 +0000 (10:56 +0100)]
validate: Do not query pad caps to check if caps are properly fowarded
Query caps will actually get the caps from downstream and those caps
might be different in case there is a Filter in between. What we want is
to check that the caps set on the internally linked pads are correct.
Thibault Saunier [Wed, 19 Mar 2014 17:42:37 +0000 (18:42 +0100)]
launcher: Allow user to set media-files directory
That was broken by
71dee6c3843d02d9d41bbb353cb3fa653190018d
Thibault Saunier [Wed, 19 Mar 2014 16:43:43 +0000 (17:43 +0100)]
tools:validate: Start printing position on ASYNC_DONE
As this is what is done in the scenarios.
Edward Hervey [Wed, 19 Mar 2014 17:09:09 +0000 (18:09 +0100)]
launcher: Don't hardcode option defaults
Since they are relative to other options, we need to post-process them
to get the proper value.
Fixes using the launcher with non-default MAIN_DIR
Edward Hervey [Wed, 19 Mar 2014 16:13:14 +0000 (17:13 +0100)]
launcher: Warn if MAIN_DIR isn't present
And move blacklist file listing to further down
Edward Hervey [Wed, 19 Mar 2014 16:04:14 +0000 (17:04 +0100)]
launcher: No need to start a web server when listing tests
It's not needed and makes listing faster.
Also sort the list of tests
Edward Hervey [Wed, 19 Mar 2014 16:03:05 +0000 (17:03 +0100)]
launcher: --sync: Only update/clone git repo if specified
Allows:
* handling non-git-based asset directory
* working offline
* working without forcing updates
Edward Hervey [Wed, 19 Mar 2014 16:02:03 +0000 (17:02 +0100)]
validate-scenario: Handle non-set env variable
Nothing guarantees it's present/set
Thibault Saunier [Wed, 12 Mar 2014 14:23:33 +0000 (15:23 +0100)]
validate:scenario: Do not be strict about position after not accurate seek
Thibault Saunier [Wed, 12 Mar 2014 13:24:02 +0000 (14:24 +0100)]
validate:scenario: Cleanup output and pass into gst-indent
Thibault Saunier [Wed, 12 Mar 2014 11:21:38 +0000 (12:21 +0100)]
validate:scenario: Cleanup output of --list-scenarios
Thibault Saunier [Wed, 12 Mar 2014 11:04:52 +0000 (12:04 +0100)]
validate: scenario: Load scenario if the name is actually a path to a file
Thibault Saunier [Wed, 12 Feb 2014 10:20:06 +0000 (11:20 +0100)]
validate: tools: Fix path to media folder
Thibault Saunier [Wed, 19 Feb 2014 12:07:03 +0000 (13:07 +0100)]
validate:tools: Clean test between runs when running forever
Thibault Saunier [Wed, 19 Feb 2014 09:31:15 +0000 (10:31 +0100)]
validate: Do not check result furthers if alredy set as passing
Thibault Saunier [Wed, 19 Feb 2014 08:58:22 +0000 (09:58 +0100)]
validate:scenario: Pass into gst-indent
Thibault Saunier [Wed, 19 Feb 2014 08:56:12 +0000 (09:56 +0100)]
validate: Add actions to the actions list only when they are fully parsed
Otherwize in some corner cases they can be executed before they are actually parsed
Thibault Saunier [Fri, 24 Jan 2014 16:36:53 +0000 (17:36 +0100)]
validate: Ignore EOS actions that can not be executed
Thibault Saunier [Tue, 18 Feb 2014 17:49:00 +0000 (18:49 +0100)]
validate: Handle various paths in GST_VALIDATE_SCENARIOS_PATH
Thibault Saunier [Tue, 18 Feb 2014 17:15:33 +0000 (18:15 +0100)]
validate:scenario: Make GstValidateAction a GstMiniObject
Thibault Saunier [Tue, 18 Feb 2014 17:13:39 +0000 (18:13 +0100)]
validate: Move enums and flags deserialization from scenario to utilities
This way it can be reused.
Thibault Saunier [Tue, 18 Feb 2014 17:09:37 +0000 (18:09 +0100)]
validate:scenario: Make the pipeline puiblic
This way people can access it from outside the main action implementation.
Thibault Saunier [Fri, 14 Feb 2014 15:07:51 +0000 (16:07 +0100)]
validate:launcher: Avoid running useless tests
For example we should not check if duration are equal when transcoding
with scenario set.
Also checking if position is in the seeked segment should be done at
a lower level
Thibault Saunier [Thu, 13 Feb 2014 14:35:01 +0000 (15:35 +0100)]
validate:launcher: Avoid seeking in output files to parse them
Tihs creates issue and missing content.