Thibault Saunier
f165fb41d0
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
2014-05-02 18:30:22 +02:00
Thibault Saunier
da42500df7
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
2014-05-02 18:30:22 +02:00
Thibault Saunier
3281add6b5
validate: Add a switch_audio_track_while_paused scenario
...
And run it as a default
2014-05-02 18:30:22 +02:00
Thibault Saunier
a62560bc81
validate: Add an action to set an external URI file on playbin at runtime
2014-05-02 18:30:22 +02:00
Thibault Saunier
2a9e0824b2
validate: Override switch_track action when using a playbin
...
And use the playbin feature for that when the pipeline is based on playbin
2014-05-02 18:30:22 +02:00
Thibault Saunier
28bd6ee17a
launcher: Now using git annex to handle media files
2014-04-28 13:08:17 +02:00
Thibault Saunier
a3a132489a
Revert "validate:launcher: Always put gst-validate result as stderr in reports"
...
This reverts commit 925ff7542b
.
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.
2014-04-26 09:16:26 +02:00
Thibault Saunier
925ff7542b
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
2014-04-26 08:11:20 +02:00
Thibault Saunier
bd936dae4c
validate:launcher: Properly set error message when sending EOS did not work
2014-04-25 14:51:28 +02:00
Thibault Saunier
da6dc3882b
validate:launcher: Add a way to specify tests filtering only on defaults
2014-04-25 14:51:28 +02:00
Thibault Saunier
be72ec5f6a
validate:launcher: Add support for audio track switching scenario
2014-04-25 14:51:28 +02:00
Thibault Saunier
8b4542540c
validate:launcher: Make it possible to run any scenario test in gst-validate
2014-04-25 14:33:06 +02:00
Thibault Saunier
8035094128
validate:launcher: Do not run reverse playback on mpegts files
2014-04-25 14:33:06 +02:00
Thibault Saunier
fba15f71c6
validate:launcher: Cleanup media descriptor usage
2014-04-25 14:33:06 +02:00
Thibault Saunier
81b0c74bfa
validate:launch: Port to the new media_info format
2014-04-25 14:33:06 +02:00
Thibault Saunier
d280d0dbc9
validate: Add a media-descriptor parser and writer
2014-04-25 14:33:06 +02:00
Thibault Saunier
2d7d03d2f7
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.
2014-04-25 14:33:06 +02:00
Thibault Saunier
7133e4b4e0
validate:launcher: Use the new validatelog file
...
Making the output cleaner and clearer in junit XML file
2014-04-25 14:33:06 +02:00
Thibault Saunier
38eda37341
validate: Handle position printing at the monitor level
...
Instead of replicating that code all around
2014-04-23 11:27:44 +02:00
Thibault Saunier
810e432da2
validate: Add printing utilities
...
Allowing the user to print everyting in a file through the
GST_VALIDATE_FILE env variable
2014-04-23 11:16:32 +02:00
Thibault Saunier
02abb60a67
validate:launcher: Send SIGINT signal instead of killing the subprocess
...
This way we get the result from GstValidate even on timeouts
2014-04-22 10:49:13 +02:00
Thibault Saunier
7f54c5dba8
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
2014-04-22 09:42:59 +02:00
Thibault Saunier
bbbd5fe2d0
validate:launcher: ring-buffer-max-size is in bytes
2014-04-17 12:58:48 +02:00
Thibault Saunier
ad25b4d160
validate: Handle g_log errors at the gst-validate level
2014-04-17 12:23:04 +02:00
Thibault Saunier
f45524a3cc
validate:launcher: Fix default blacklist management
2014-04-15 15:26:36 +02:00
Thibault Saunier
f1851235d5
validate:launcher: Print the number of the test being run
2014-04-02 19:17:24 +02:00
Thibault Saunier
86df60e16f
validate:launcher: Fix mixup in media_check tests expected file path
2014-04-02 12:12:11 +02:00
Thibault Saunier
78f91ae8da
validate:launcher: Flush stdout each time we print
...
So everything gets printed on time on windows and jenkins
2014-03-31 14:37:51 +02:00
Thibault Saunier
36a0f6a674
validate: launcher: Use the ConfigPraser object everywhere for file_infos
2014-03-31 11:03:48 +02:00
Thibault Saunier
3d8201d52b
validate:launcher: Properly handle missing scenarios on the system
2014-03-28 15:41:30 +01:00
Thibault Saunier
339703d2eb
validate:launcher: Handle windows path to construct arguments
2014-03-28 15:00:45 +01:00
Thibault Saunier
bc40235600
validate:launcher: Handle the fact that win32 apps end with .exe
2014-03-28 15:00:01 +01:00
Thibault Saunier
3408869f49
validate:launcher: Put gst logs in a specific file
...
+ Make default timeout 30seconds just in case.
2014-03-28 10:40:19 +01:00
Thibault Saunier
8fdf84b084
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.
2014-03-26 20:08:43 +01:00
Thibault Saunier
870df6e4e2
validate:launcher: Do not set sample path to letter in ges-launch
2014-03-26 11:46:48 +01:00
Thibault Saunier
5510b96639
validate:launcher: Start the server only when actually needed to run filtered tests
2014-03-26 11:00:32 +01:00
Thibault Saunier
36f9ba8f52
launcher: Allow user to set media-files directory
...
That was broken by 71dee6c384
2014-03-19 18:43:38 +01:00
Thibault Saunier
6d8ff8a92a
tools:validate: Start printing position on ASYNC_DONE
...
As this is what is done in the scenarios.
2014-03-19 17:45:36 +01:00
Edward Hervey
12ccebe0a9
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
2014-03-19 18:09:09 +01:00
Edward Hervey
c39a44441e
launcher: Warn if MAIN_DIR isn't present
...
And move blacklist file listing to further down
2014-03-19 17:13:14 +01:00
Edward Hervey
e62a2ce4c4
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
2014-03-19 17:04:14 +01:00
Edward Hervey
71dee6c384
launcher: --sync: Only update/clone git repo if specified
...
Allows:
* handling non-git-based asset directory
* working offline
* working without forcing updates
2014-03-19 17:03:05 +01:00
Thibault Saunier
e75e7df0ac
validate: tools: Fix path to media folder
2014-02-19 14:39:30 +01:00
Thibault Saunier
07b968a4f6
validate:tools: Clean test between runs when running forever
2014-02-19 14:34:10 +01:00
Thibault Saunier
f6bf92cbc9
validate: Do not check result furthers if alredy set as passing
2014-02-19 14:34:10 +01:00
Thibault Saunier
1189c48ff8
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
2014-02-18 21:07:31 +01:00
Thibault Saunier
d377158b42
validate:launcher: Avoid seeking in output files to parse them
...
Tihs creates issue and missing content.
2014-02-18 21:07:31 +01:00
Thibault Saunier
32d9d5dc44
validate:launcher: Properly classify test for media check
2014-02-18 21:07:31 +01:00
Thibault Saunier
0449817c11
validate:launcher: Handle issue with unknown framerate in HLS while transcoding
2014-02-18 21:07:31 +01:00
Thibault Saunier
c3adb05b2a
validate:tools: Handle cases were EOS does not stop the pipeline in the launcher
...
+ Fix parsing of GstClockTime
+ Avoid using play_15s scenario when not necessary
2014-02-18 21:07:31 +01:00
Thibault Saunier
90d9a686d7
validate: tools: Use the new scenario discovering fearure in the launcher
2014-02-18 21:07:31 +01:00
Thibault Saunier
4467b27b9f
validate: Add a way to save details about avalaible scenarios in a file
2014-02-18 21:07:31 +01:00
Thibault Saunier
9e66ac00f6
validate: Add a way to add a "description" to scenario files
...
Print details about the descriptions when listing scenario in a KeyFile
format
The description can contain any information about the scenario such as its duration before
EOS, how long the pipeline needs to be so the scenario can be applied...etc
2014-02-18 21:07:31 +01:00
Thibault Saunier
efc6938d01
validate: tools: Init gst-validate before listing scenarios
...
And return 0 when only listing scenarios
2014-02-18 21:07:31 +01:00
Thibault Saunier
904cdd6411
validate:tools: Rework the way we handle options
...
Make groups so it is easier for users to find what they look for
By default have 1 single directory where everything is oututed
(main-dir)
Add a way to specify how and where to look for remote assets
2014-02-18 21:07:31 +01:00
Thibault Saunier
ead3eb98a4
validate:tools:launcher: Take into account the position value when rendering
...
When rendering a files we try to use the size of the outputed file to
determine wether we are timeout or not, but if that fails
try to check the position
2014-02-18 21:07:31 +01:00
Thibault Saunier
10c192f693
validate: Better organize rendered files
2014-02-18 21:07:31 +01:00
Thibault Saunier
ca12b78be3
validate:tools: Use regex for parsing when appropriate
2014-02-18 21:07:31 +01:00
Thibault Saunier
df712e9404
validate:toold: Add a --output-dir parametter
2014-02-18 21:07:31 +01:00
Thibault Saunier
27e3758918
validate:tools: Keep file extension in test classnames
...
+ add test "namespace" in transcoded files
2014-02-18 21:07:31 +01:00
Thibault Saunier
2718923ae5
validate:tools: Add a class to back pipeline creation in gst-validate
2014-02-18 21:07:31 +01:00
Thibault Saunier
5927a6d8d8
validate:tools: Define supported protocols in an enum
2014-02-18 21:07:31 +01:00
Thibault Saunier
2f689fab73
validate: toold: Properly define scenario properties
2014-02-18 21:07:30 +01:00
Thibault Saunier
cd18609763
validate: Rename simple_backward to reverse_playback as this is what it does
2014-02-18 21:07:30 +01:00
Thibault Saunier
1ecd26eef6
validate:tools: Add namespace in apps global variables
...
Avoiding conflicts
2014-02-18 21:07:30 +01:00
Thibault Saunier
932fcaf9b8
validate:tools: Allow user to append paths to medias
2014-02-18 21:07:30 +01:00
Thibault Saunier
5e96c79000
validate:tools: Make use of the new seek_with_stop scenario
2014-02-18 21:07:30 +01:00
Thibault Saunier
cd098eb28c
validate:tools: Implement the logic of validate ouput parsing in the baseclass
...
+ Add some logic to check that we are mot playing outside wanted segment
2014-02-18 21:07:30 +01:00
Thibault Saunier
2c52d6374c
tools:validate: Make default blacklist handled by managers themselves
2014-02-18 21:07:30 +01:00
Thibault Saunier
7ab0447227
validate:tools: Only discover files with media-check
2014-02-18 21:07:30 +01:00
Thibault Saunier
a406ebb4c2
validate:tools: Add a 'discover-only' option to media-check
2014-02-18 21:07:30 +01:00
Thibault Saunier
1a9119cb33
validate: tools: Add a --fatal-error option to the launcher
2014-02-12 11:23:25 +01:00
Thibault Saunier
2520f4f110
validate: tools: Implement the notion of hard timeout
...
Allowing to define timeout that is not relative to the last observed number.
2014-02-12 11:23:25 +01:00
Thibault Saunier
2391a56714
validate: tools: Create a class for scenarios
2014-02-12 11:23:25 +01:00
Thibault Saunier
ba1f428351
validate: tools: Change timeouts depending on used protocol
2014-02-12 11:23:25 +01:00
Thibault Saunier
8b8562ea85
validate:tools: Implement Buffering support in the various tools
2014-02-12 11:23:23 +01:00
Thibault Saunier
b3c71bba02
validate:tools: Blacklist some scenario/protocol combinations
...
And add the option for user to easilly blacklist tests
2014-02-06 12:02:59 +01:00
Thibault Saunier
3bce8f8966
validate:tools: Print test result in the terminal after the end of each test
2014-02-06 12:02:59 +01:00
Thibault Saunier
299a677f09
validate:tools: Add an option to run testforever
2014-02-06 12:02:59 +01:00
Thibault Saunier
d9386f7542
validate: tools: Cleanup the way we return code in position query
2014-02-06 12:02:59 +01:00
Thibault Saunier
d000ca62a4
validate:tools: Use the same semantic for all tests classnames
2014-02-06 12:02:59 +01:00
Thibault Saunier
c0673d7eea
validate:tools: Add support for testing http streams locally
2014-02-06 12:02:59 +01:00
Thibault Saunier
c2e5c10767
validate:tools: Some cleanup in gst-validate test launcher
2014-02-06 12:02:59 +01:00
Thibault Saunier
33a744b688
validate:tools: Add actuall tests for media checking
2014-02-06 12:02:58 +01:00
Thibault Saunier
a3e7342eef
validate: tools: media-check: When comparing with a file just compare
...
We do not want to know if the file is seekable etc, but in that case we
want to see that the results are stable throughout the various runs
Also make sure to report an understandable error if the media file info
could not be parsed
2014-02-06 12:02:58 +01:00
Thibault Saunier
677e111f0b
validate: tools: Do not dot the pipeline every 50ms, it is a bit exessive
2014-02-06 12:02:58 +01:00
Thibault Saunier
d485180074
validate:tools: Return an exit code != 0 if pipeline can't go to playing
...
And give some information to the user about why the return code is !=0
everywhere it happens
2014-02-06 12:02:58 +01:00
Thibault Saunier
1c614b9ed9
validate:tools: Add informations about the test in the log files
2014-02-06 12:02:58 +01:00
Thibault Saunier
a6f3d5270c
validate:tools: Remove reference to get_backtrace which is not implemented
...
+ Enhance Message about launched apps
2014-02-06 12:02:58 +01:00
Thibault Saunier
26e3a9e3c5
validate:tools: Do not duplicated name in the classname in xunit reports
2014-02-06 12:02:58 +01:00
Thibault Saunier
654bacebc9
validate:tools: Do not check if position > duration
...
This is actually done by the scenario themselve. Instead if it is the
case, we return 0, this way it will timeout if it happens too many times
concecutively
2014-02-06 12:02:58 +01:00
Thibault Saunier
6bd9177205
validate:tools: Properly inform the user about the log location when test fails
2014-02-06 12:02:58 +01:00
Thibault Saunier
eb23274a5b
validate:tools: Add an option to generate .media_info files
...
So we can properly choose what media should be tested only placing
media_file as needed.
2014-02-06 12:02:58 +01:00
Thibault Saunier
32e1acbf88
validate:tools: use more scenarios in gst-validate launcher
...
And ensure that the list does not get mixed up with as we are sharing
"symboles" between all the files
2014-02-06 12:02:58 +01:00
Thibault Saunier
8e81727b87
validate:tools: Do not try to transcode images
2014-02-06 12:02:58 +01:00
Thibault Saunier
32e7b9a55e
validate:tools: Minor cleanups
2014-02-06 12:02:58 +01:00
Thibault Saunier
38615bcae2
validate:tools: Fix classname in gst-launch transcoding tests
2014-02-06 12:02:58 +01:00
Thibault Saunier
dc29cc2857
validate:tools: Properly name the project launcher in the report
2014-02-06 12:02:58 +01:00
Thibault Saunier
0b3b456f6a
validate:tools: Create the rendering directory if it does not exist
2014-02-06 12:02:58 +01:00
Thibault Saunier
8697dd3da4
validate:tools: Add an option to desativate ANSI colors
...
And enhance some debugging output
2014-02-06 12:02:58 +01:00
Thibault Saunier
eae7e94f44
validate:tools: Remove our dependency to PyGobject
2014-02-06 12:02:58 +01:00
Thibault Saunier
0c535ef9cf
validate:tools: Do not forget to add Makefile.am and main.py
2014-02-06 12:02:58 +01:00
Thibault Saunier
bd3aaded49
validate:tools: Enhance the way we detect if ges-launch can be used
...
We make sure it has been compiled against gst-validate
2014-02-06 12:02:58 +01:00
Thibault Saunier
c7aa259c78
validate:tools: Set video/webm instead of video/x-matroska as caps for webm
...
+ some mirore indentation cleanups
2014-02-06 12:02:58 +01:00
Thibault Saunier
384dd33843
validate:tools: Do not forget to keep our ref to file_info g-v-transcode
2014-02-06 12:02:57 +01:00
Thibault Saunier
446e5c88c2
validate:tools: Cleanup how we check result of rendering test
...
Factor out a method in the utils, and make use of it for both ges-launch and
gst-validate-transcode
2014-02-06 12:02:57 +01:00
Thibault Saunier
ff30c6ba3c
validate:tools: Don't give file duration as timeout for gst-validate
...
We use the other mean letting us actually control the process
advancement.
2014-02-06 12:02:57 +01:00
Thibault Saunier
cdff1c93ca
validate:tools: Veryfy test manager are operationnal before using them
2014-02-06 12:02:57 +01:00
Thibault Saunier
e30f6372f9
validate:tools: Move the main function in a dedictaed file
2014-02-06 12:02:57 +01:00
Thibault Saunier
c33d10470f
validate:tools: Print some statistic at the end of the test run
2014-02-06 12:02:57 +01:00
Thibault Saunier
d8fc68479c
validate:tools: Print position every 50ms in gst-validate
2014-02-06 12:02:57 +01:00
Thibault Saunier
ea7ae57d3b
validate:tools: Rename files around and integrate into autotools
...
File distribution used to be messy, clean it all up. Also make sure the
launcher is integrated into the autotools.
2014-02-06 12:02:57 +01:00
Thibault Saunier
ac9820a435
validate: tools: Enhance error message for GstValidate tests
2014-02-06 12:02:57 +01:00
Thibault Saunier
1f3432a33e
validate: tools: Concider timeouts as errors when printing tests
2014-02-06 12:02:57 +01:00
Thibault Saunier
dac5b38a4d
validate: tools: Refactor and add a GstValidateTranscodeTest class
2014-02-06 12:02:57 +01:00
Thibault Saunier
e591882794
validate: launcher: add the debug logger from pitivi
...
It is way more powerfull, simple to use and usefull
than the stock python one and has been proved to work reliably
2014-02-06 12:02:57 +01:00
Thibault Saunier
b51e143fdf
validate: tools: Unref the pipeline before the runner and monitor
...
Avoids segfault in some cases, and monitors and runners have week ref on
their targets.
2014-02-06 12:02:57 +01:00
Thibault Saunier
0d6d397e30
validate: tools: Add a gst-validate test manager
2014-02-06 12:02:57 +01:00
Thibault Saunier
e9b2967504
validate: tools: Cleanup test launcher tool
...
Previous commit was not meant to be pushed and those two should have
been fixed up together, sorry for the mistake
2014-02-06 12:02:57 +01:00
Thibault Saunier
b4a2ca6286
Add a test launcher tool
2013-12-31 11:45:07 +01:00
Thibault Saunier
e9dee065f7
tools: transcoding: Avoid reencoding unless explicitely specified
2013-11-25 16:56:09 -03:00
Thibault Saunier
1c3340ecbb
tools: Simplify the setting of action scenario vs config scenario
...
This make it easier for user to understand the difference between
the two concepts and avoids confusion.
Change-Id: Ib42913722c93a1e7e3c8b156173c458230946592
Conflicts:
validate/tools/gst-validate-transcoding.c
validate/tools/gst-validate.c
2013-11-25 16:55:25 -03:00
Thibault Saunier
9dfee4dffa
scenario: Do not execute anything when listing scenarios
2013-11-25 16:55:25 -03:00
Thibault Saunier
77bba657d1
scenario: Add support for "config" actions, actions executed at parse time
...
This type of actions is used to change some parametter on GStreamer
core and it plugins, it can be fore example, to change the rank of a
plugin or things like that.
2013-11-25 16:55:25 -03:00
Thibault Saunier
684eb19267
validate-transcoding: Dot pipeline on error
2013-11-13 18:46:15 -03:00
Thibault Saunier
74b86f7793
Properly link against gstreamer-video as it is now needed
2013-10-14 11:25:39 -03:00
Thibault Saunier
f8b4235e33
scenario: Add an action that checks the "force-key-unit" event execution
2013-10-09 14:24:42 -03:00
Thibault Saunier
464b008421
data: Add an adaptive video framerate scenario
2013-10-07 17:18:37 -03:00
Thibault Saunier
10442def2f
transcoding: Add a new action to change restriction caps at runtime
2013-10-07 15:57:30 -03:00
Thibault Saunier
75d7450e19
transcoding: Fix the way we get pad caps
2013-10-07 15:57:29 -03:00
Thibault Saunier
7e1249f089
runner: Use "18" as exit code in case of error
...
It is a random number, but it will in most cases give people a hint
that gst-validate reported a critical issue, and thus set the return
code, only by looking at it
Also make use of gst_validate_runner_print() in
gst-validate-transcoding.c as we were copy pasting that method there.
2013-10-05 13:36:04 -03:00
Olivier Crête
3a6f42bf67
gst-validate: Don't use the GOptionContext after freeing it
2013-09-30 09:52:07 -04:00
Edward Hervey
746b6f41b2
tools: Update .gitignore for tools move
2013-09-09 15:36:15 +02:00
Vincent Penquerc'h
fefc5ffb41
monitor-preload: schedule a report printout at exit
...
Conflicts:
tools/gst-validate.c
2013-09-05 13:40:41 -03:00
Vincent Penquerc'h
7223b183f3
gst-validate: ensure the top level element is a pipeline
...
For instance, "fakesrc" will return a fakesrc, not a pipeline.
This is similar to what gst-launch does, and avoids calling
pipeline API on a non pipeline object (and thus asserting).
2013-09-05 13:40:39 -03:00
Vincent Penquerc'h
9cf4857776
gst-validate: do not try to use a pipeline which failed to create
...
Instead, error out properly with the actual error, if available.
2013-09-05 13:40:35 -03:00
Vincent Penquerc'h
3019586677
gst-validate: initialize gst/glib before use in scenario listing
...
Also ensure that if just -l is passed, we don't try creating a
non existent pipeline.
This makes gst-validate -l work properly again.
2013-09-05 13:37:39 -03:00
Edward Hervey
78e1cb82da
validate: prettify output of results
...
Makes the result a bit more readable than a compact multi-line list.
FIXME: Figure out how to print the description of the issues (which can
spawn multiple lines) in a nice way.
2013-09-02 10:03:07 -03:00
Thibault Saunier
5953b71907
validate: Dump pipeline for each state change
...
Ala gst-launch
2013-08-28 18:54:18 -03:00
Thibault Saunier
beb537d10b
transcoding: Print duration regularly
2013-08-28 18:53:46 -03:00
Thibault Saunier
80702884f0
validate: Print state changes to help debugging
2013-08-28 18:51:53 -03:00
Thiago Santos
1dd93bea2a
licenses: improving licensing info on all files
2013-08-28 16:58:11 -03:00
Thiago Santos
41e0bf1e91
tools: moving applications from gst/validate to tools
...
Keeps the CLI applications separate from the libs files
2013-08-27 12:04:31 -03:00