Guillaume Desmottes
01c2ba564a
validate: transcoding: fix encoding_profile leak
...
Reviewed-by: Thibault Saunier <tsaunier@gnome.org>
Differential Revision: https://phabricator.freedesktop.org/D980
2016-05-24 10:28:55 -04:00
Guillaume Desmottes
2c4dcae918
validate: transcoding: fix caps leaks
...
The 'all_raw_caps' list is never used and was just leaking caps.
Reviewed-by: Thibault Saunier <tsaunier@gnome.org>
Differential Revision: https://phabricator.freedesktop.org/D979
2016-05-24 10:28:53 -04:00
Edward Hervey
0711d4e163
gst-validate: Avoid overreading array
...
If we offset the argv table as argument, we need to decrement the number
of items in the array (argc) when iterating it
2016-05-19 12:07:57 +02:00
Thibault Saunier
621bda9b62
validate: Use GstValidate logging system to print buffering avancement
...
So it can be used in the launcher.
And make sure to properly parse the info in the launcher.
2016-03-21 14:34:27 +01:00
Vineeth T M
65560d8b03
Validate: Fix consider, launch spelling mistakes
...
https://bugzilla.gnome.org/show_bug.cgi?id=763289
2016-03-08 09:28:11 +02:00
Thibault Saunier
3657e7867f
validate: Namespace all our structures and objects
...
Making GI a bit happier.
Those are not stable API anyway...
Differential Revision: https://phabricator.freedesktop.org/D704
2016-02-23 11:46:58 +01:00
Thibault Saunier
8c760b0a0e
validate: Turn GstValidateRunner into a GstTracer
...
This way we do not need the LD_PRELOAD hack anymore
Add a new libgstvalidateplugin GStreamer plugin, making sure it shares
the exact same code as the library (exposing only the wanted symbols).
Fix the way we set where to install GstValidate plugins
Try to keep backward compatibility even if tracers should never be instantiated
after an GstElement has been instantiated.
Differential Revision: https://phabricator.freedesktop.org/D459
2016-02-23 11:46:32 +01:00
Edward Hervey
4e2c7af46c
tools: Fix relative track switching
...
I have no idea where that "-2" came from, but it was obviously wrong.
Just use modulo "total number of streams" to get the proper track id.
2016-01-21 14:30:46 +01:00
Thiago Santos
ae52807efd
media-check: enable 'full' for files which reference are also 'full'
...
If the reference file has frames information, enable it automatically
so that the comparison file also has frames to be used.
https://bugzilla.gnome.org/show_bug.cgi?id=758855
2015-12-04 19:03:53 -03:00
Vineeth T M
d57fca241a
validate: Fix memory leaks when context parse fails
...
When g_option_context_parse fails, context and error variables are not getting free'd
which results in memory leaks. Free'ing the same.
And replacing g_error_free with g_clear_error, which checks if the error being passed
is not NULL and sets the variable to NULL on free'ing.
https://bugzilla.gnome.org/show_bug.cgi?id=753862
2015-11-11 10:12:49 +01:00
Vineeth T M
cfe7dc1d6d
validate-transcoding: trivial patch to change error from 0.10 to 1.0
...
While printing error in transcoding, gst-validate-transcoding-0.10 is being used.
Changing the same to 1.0
https://bugzilla.gnome.org/show_bug.cgi?id=756215
2015-10-19 15:43:35 -03:00
Vineeth TM
e1c1c45eb8
validate: media-check: Pass NULL instead of GError if not using it
...
If not using the GError being passed on to media descriptor, writer and parser,
simply pass NULL instead of GError.
https://bugzilla.gnome.org/show_bug.cgi?id=753340
2015-10-02 17:39:00 +02:00
Vineeth TM
5c0c42ed6d
validate:tools: set locale to all and change argument to FILENAME
...
When file name consists of characters from other languages, say korean,
then it throws an error
Error initializing: Invalid byte sequence in conversion input
Hence setting locale to all to fix this.
And changing the media-info argument to type G_OPTION_ARG_FILENAME
https://bugzilla.gnome.org/show_bug.cgi?id=753486
2015-10-02 17:32:19 +02:00
Vineeth T M
4071d60b0f
validate: Print the return value at the end
...
Makes it easier to know if the test passed or failed.
https://bugzilla.gnome.org/show_bug.cgi?id=754013
2015-10-02 17:21:50 +02:00
Sebastian Dröge
d14564fd84
validate/transcoding: Don't override the target state of the scenario when receiving BUFFERING=100%
...
If the scenario handles the states and wants to stay in PAUSED, it's not a
good idea to change the state to PLAYING when receiving BUFFERING=100%. This
caused a race condition in varios seeking tests, most often in the dash scrub
seeking test.
2015-08-17 17:20:07 +02:00
Sebastian Dröge
403b236426
validate: Don't override the target state of the scenario when receiving BUFFERING=100%
...
If the scenario handles the states and wants to stay in PAUSED, it's not a
good idea to change the state to PLAYING when receiving BUFFERING=100%. This
caused a race condition in varios seeking tests, most often in the dash scrub
seeking test.
2015-08-17 14:27:33 +02:00
Vineeth TM
c2a5909cd4
validate: tools: transcoding error due to wrong condition check
...
when checking the restriction caps, not adding proper check, which
results in assertion error when calling gst_caps_from_string
https://bugzilla.gnome.org/show_bug.cgi?id=752749
2015-08-05 17:19:24 -04:00
Vineeth TM
8d477c6d93
validate: media-descriptor: handle proper return values
...
while comparing the media descriptor with --expected-results, the return
values are not being handled properly, which results in wrong comparision
https://bugzilla.gnome.org/show_bug.cgi?id=748390
2015-07-31 09:42:04 -04:00
Vineeth TM
c91ed016b1
validate:tools: set locale to all and change argument to FILENAME
...
When file name consists of characters from other languages, say korean,
then it throws an error
Error initializing: Invalid byte sequence in conversion input
Hence setting locale to all to fix this.
And changing the media-info argument to type G_OPTION_ARG_FILENAME
https://bugzilla.gnome.org/show_bug.cgi?id=752945
2015-07-30 14:06:41 +01:00
Vineeth TM
e4906c7289
validate:launcher: return on error cases properly
...
When folder name contains spaces during --medias-paths, it does not
create the media info, but still it shows as passed.
Returing failed during this case
https://bugzilla.gnome.org/show_bug.cgi?id=752611
2015-07-22 16:39:24 +01:00
Thibault Saunier
8e37c81811
validate:ssim: Inform about min average and min minimum similarities
2015-06-24 16:25:24 +02:00
Tim-Philipp Müller
de40a24b8f
validate: spelling fixes
...
analize != analyze
2015-06-14 22:44:26 +01:00
Wonchul Lee
9ea5df9c98
validate: media-check: add newline to end of print statements
...
https://bugzilla.gnome.org/show_bug.cgi?id=750089
2015-06-14 22:41:12 +01:00
Wonchul Lee
953db96ede
validate: media-check: fix double unref in error code path
...
Writer would get unrefed twice when it could not parse the file.
https://bugzilla.gnome.org/show_bug.cgi?id=750606
2015-06-13 19:28:19 +01:00
Tim-Philipp Müller
736ecef382
validate: tools: fix build
...
/usr/bin/ld: gst-validate-images-check.o: undefined reference to symbol 'gst_init'
/home/tpm/gst/glib-master/gstreamer/gst/.libs/libgstreamer-1.0.so.0: error adding symbols: DSO missing from command line
2015-06-13 19:25:17 +01:00
Thibault Saunier
ab7e9930d1
validate:tools: Cleanup Makefile.am
...
Removing useless CFLAGS and LIBS
2015-06-09 10:52:38 +02:00
Thibault Saunier
7dd8bae7c2
validate: Fix make distcheck
2015-06-08 18:20:33 +02:00
Thibault Saunier
1dc3816943
validate: Add a gst-validate-images-check tool
...
Summary:
That is a new tool that uses ssim algorithm to compare images
+ Add a GstValidateVideo internal library adding an helper Gssim class
Depends on D210
Reviewers: Mathieu_Du
Differential Revision: http://phabricator.freedesktop.org/D211
2015-06-08 17:40:32 +02:00
Thibault Saunier
dfe29c56e5
validate 🏃 Add a method to force exiting the runner
...
This method is similar to runner_printf() but can be used
only once. The user needs to make sure all the pipeline
are in NULL state when this is called.
The method emits a "STOPPING" signal and at that point
overrides or monitors should do extra processing/checks if
needed.
+ Make use of it everywhere where it makes sense.
API:
gst_validate_runner_exit
GstValidateRunner::stopping signal
2015-06-06 08:50:47 +02:00
Guillaume Desmottes
92fa2b5681
validate: add gst_validate_deinit()
...
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D159
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
007f433d73
update gitignore
...
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D145
2015-05-04 14:48:26 +02:00
Guillaume Desmottes
044ab241ee
validate: use -debug versions of bins when running from source
...
Summary:
Those versions are using rpath instead of libtool's wrappers and so will be
faster to start and won't confuse valgrind.
Reviewers: thiblahute
Differential Revision: http://phabricator.freedesktop.org/D116
2015-04-21 11:19:17 +02:00
Guillaume Desmottes
36e69f305a
validate: use GstMediaDescriptorWriter as log handler
...
Allow us to catch warnings when running gst-validate-media-check-1.0.
2015-04-16 12:41:25 +02:00
Young Han Lee
102c13ed6f
validate:launcher: Handle git error properly
...
'OSError' exception is emitted but not handled properly when git is not
installed on running system.
https://bugzilla.gnome.org/show_bug.cgi?id=747892
2015-04-15 11:36:28 +02:00
Thibault Saunier
101ed96b5a
validate:tools: EOS handling is the responsibility of the scenario
...
Summary: If any scenario set
Reviewers: Mathieu_Du
Differential Revision:
http://phabricator.freedesktop.org/D90
2015-04-13 11:27:08 +02:00
Guillaume Desmottes
15918f1e40
validate: transcoding: don't create a second mainloop
2015-03-31 09:45:06 +02:00
Guillaume Desmottes
8b84f76df4
validate: transcoding: don't leak the requested sinkpad from decodebin
2015-03-31 09:45:06 +02:00
Guillaume Desmottes
779e44dd36
validate: media-check: don't leak output_file and expected_file
2015-03-26 15:40:50 +01:00
Guillaume Desmottes
093390981c
also call gst_deinit() in media-check and transcoding
...
More valgrind friendly.
2015-03-26 09:18:44 +01:00
Guillaume Desmottes
5456ddbae0
call gst_deinit() when we are done
...
More valgrind friendly.
2015-03-23 13:41:03 +01:00
Guillaume Desmottes
a35614d108
validate: call gst_bus_remove_signal_watch()
...
We are supposed to call gst_bus_remove_signal_watch() for each gst_bus_add_signal_watch() call to prevent leaks.
2015-03-23 13:41:03 +01:00
Guillaume Desmottes
08a9034576
validate: fix string arguments leaks
...
We are responsible of freeing the string arguments parsed by GOptionContext.
2015-03-20 12:15:03 +01:00
Thibault Saunier
e40d225614
validate:launcher Do not use git -C as it is relatively recent
...
https://bugzilla.gnome.org/show_bug.cgi?id=736160
2015-03-02 16:18:30 +01:00
Young Han Lee
2d6c667c9a
validate: Determine development mode using git hash value
...
Development mode has been determined by whether the launcher is in git
repo
or not. This could be wrong when the launcher is installed to
subdirectory of other project's git repo, such as jhbuild. It is normal
to install compiled output to subdirectory of your jhbuild.
Changed logic gets the first commit hash of current git repo and
compares it with gst-devtools' the first commit hash.
https://bugzilla.gnome.org/show_bug.cgi?id=744781
2015-02-19 13:57:30 +01:00
Thibault Saunier
bee292f548
validate: Wait for switch-track to complete before executing next action
...
This action type can take some time, we need to make sure that the
combiner/input-selector element properly pushed a buffer marked
as DISCONT to concider the action is done.
https://bugzilla.gnome.org/show_bug.cgi?id=743994
2015-02-14 16:32:08 +01:00
Mathieu Duponchelle
4ce91b98f0
validate: Implement a fault injection library.
...
+ And implement a corrupt-socket-recv action
+ Only compile this on Linux, LD_PRELOAD won't work on Windows.
For now the registering of the action is done through
a call to socket_interposer_init, this will get better
when we refactor the action logic.
https://bugzilla.gnome.org/show_bug.cgi?id=743871
2015-02-03 15:30:54 +01:00
Thibault Saunier
1bc32a888f
validate: Avoid assert removing an already removed signal handler
...
And, make sure that we set the return value != 0 when we receive
SIGINT
2014-12-05 20:51:44 +01:00
Thibault Saunier
130a2892b1
validate: print execution of set_subtitles actions
2014-12-05 19:23:43 +01:00
Mathieu Duponchelle
b0beefacfa
validate-launcher: restructure filesystem
...
https://bugzilla.gnome.org/show_bug.cgi?id=739091
2014-10-30 15:31:29 +01:00
Thibault Saunier
bb93dbb9fb
validate: Check all buffers when we have the info from MediaDescriptor
...
We now check that each buffer is the expected one for each buffer that
come into the decoder.
+ Fix some minor leaks in test-utils
https://bugzilla.gnome.org/show_bug.cgi?id=736138
2014-10-21 20:21:36 +02:00
Thibault Saunier
94efe0df85
validate: launcher: Fix printing of errors in final report
...
https://bugzilla.gnome.org/show_bug.cgi?id=736138
2014-10-21 20:14:05 +02:00
Thibault Saunier
20633cec19
validate: Add the possibility to generate media infos with frame descs
...
+ Fix a little issue when the generation fails.
https://bugzilla.gnome.org/show_bug.cgi?id=736138
2014-10-21 20:14:05 +02:00
Thibault Saunier
c5dfd9c8c8
validate: Add a way to pass a MediaDescriptor around monitors
...
And add an option in gst-validate so that the user can define what
media descriptor file to use.
https://bugzilla.gnome.org/show_bug.cgi?id=736138
2014-10-21 20:14:05 +02:00
Thibault Saunier
4823d998fc
validate:launcher: Minor enhancement in the documentation
2014-10-13 10:32:07 +02:00
Thibault Saunier
02ab99fcbb
validate: Rename gst_validate_add_action_type to gst_validate_register_action_type
...
The _register naming corresponds much better to what the method does
and makes it more similar to how we refer to this kind of action in
GStreamer.
It is a last minute API change, but that API should not change anymore
after 1.4 is released.
2014-10-12 20:10:19 +02:00
Thibault Saunier
8289f64904
validate: Rename --list-action-types to --inspect-action-type
...
Making clearer the meaning of the parameter and closer to the
usual naming in the GStreamer land.
2014-10-12 19:46:39 +02:00
Thibault Saunier
b856d5985c
validate:launcher: Factorize code to get a MediaDescriptor name for classname
...
Instead of copy/pasting that code badly
2014-09-12 11:26:48 +02:00
Thibault Saunier
b843ead1f8
validate: launcher: Cleanup and rename apps to avoid '-' in their name
2014-09-06 11:38:38 +02:00
Thibault Saunier
7838f3ebae
validate:launcher: Avoid '.' before media file extension in test classnames
2014-09-06 10:02:13 +02:00
Thibault Saunier
3755581fd3
validate: Take a const gchar ** in gst_validate_print_action_types
...
This is what we actually need and thus is cleaner.
2014-09-05 23:15:29 +02:00
Thibault Saunier
69165a9f04
validate: Implement the notion of implementer namespace to the action types
...
This allows users to know who implements an action type.
+ Enhance the printing of all action making it readable.
2014-09-05 23:03:58 +02:00
Thibault Saunier
15f52d4fa3
validate: Add informations on the switch-track action overrided for playbin
2014-09-05 19:30:52 +02:00
Thibault Saunier
34fd5af840
validate: docs: Add some GstValidate usage documentation
...
+ Fix minor issues in the gst-validate and gst-validate-transcoding
tools documentation
2014-09-05 19:00:23 +02:00
Thibault Saunier
4fd1939b21
validate: Rework the action parameter API
...
Making it possible to properly define parameters, and describe them.
+ Document all action types!
2014-09-05 19:00:23 +02:00
Thibault Saunier
d29a8e4a77
validate: Add an option to print all avalaible actions with details
...
+ Cleanup actions descriptions
+ Make GstValidateActionType internal only and only expose the structure
2014-09-05 19:00:23 +02:00
Thibault Saunier
45e6d86c92
validate: Use the buffering mode to see if pipeline is live or not
2014-09-05 19:00:23 +02:00
Anuj Jaiswal
eb16061fa9
gst-validate: fix some minor memory leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=735099
2014-08-23 11:57:12 +01:00
Mathieu Duponchelle
99204c0018
validate: generate test names with the stream_info filename.
...
And not with the contained uri string, which is variable.
2014-08-19 18:47:18 +02:00
Thibault Saunier
161610c26e
validate: Print when we set pipeline state because of buffering
2014-08-12 13:17:20 +02:00
Thibault Saunier
f4db183b2b
validate:launcher: Properly handle libsdir when gst-validate is installed
...
+ Fix the _in_devel function
+ Install the validate default testsuite implementation in the right
place
2014-08-12 13:16:43 +02:00
Thibault Saunier
f6c62d071c
validate:launcher: Let testsuite know the actual file in which they are
2014-08-12 13:16:43 +02:00
Thibault Saunier
bf30bf4fd7
validate:launcher: Add the logic of needed env variables in tests
2014-08-12 13:16:43 +02:00
Thibault Saunier
e81c0093fc
validate:launcher: Expose all classes to be used to create testsuites
...
To create testsuite from outside gst-validate, the user will need to be
able to use the TestGenerator and subclasses of Test that we implement
in the apps, to do so we publicly expose them in the TestManager class
so that user have acces to everything they need.
2014-08-12 13:16:43 +02:00
Thibault Saunier
20c28def3c
validate:launcher: Handle stdout/stderr as possible logfiles
...
Allowing people to get all the logs in the terminal
2014-08-12 13:16:43 +02:00
Thibault Saunier
8e1997d820
validate: Launcher: Add support for the dash protocol
...
And make sure that the HTTP server is started if it is needed to serve
some HLS or DASH streams
2014-08-12 13:16:43 +02:00
Thibault Saunier
631db75718
validate:Launcher: Use the first media path as a path for http server
...
We need to have a default path and the first one sounds like a
reasonnable default.
2014-08-12 13:16:43 +02:00
Thibault Saunier
2da2c6cc56
validate:launcher: Allow limitating local HTTP server bandwith
...
By default we limit its bandwith to 1MBps which is somehow similare to a
good internet connection case.
2014-08-12 13:16:43 +02:00
Thibault Saunier
702992cf7a
validate:launcher: Disable racy HLS tests
...
+ Add need-clock-synk to switch_audio_track_while_paused as it relies on
the clock sync to pause and then display subtitles
2014-08-06 09:08:36 +02:00
Thibault Saunier
bab8a4c3bb
validate:launcher: Take into account exitcode in transcoding tests
...
And disable a few racy tests that were not detected because of that
2014-08-05 11:33:08 +02:00
Thibault Saunier
7875b9a3d9
validate:launcher:testsuite: De activate backward playback where appropriate
...
And re activate it where it works
2014-08-04 13:03:54 +02:00
Thibault Saunier
1bd6b2767f
validate: Avoid readding several time the same test in the tests result list
2014-08-04 13:02:46 +02:00
Thibault Saunier
b9712e336e
validate:launcher: Fix test number print
2014-08-04 13:02:46 +02:00
Thibault Saunier
0dd8e9cd3d
tools: Launcher: Disable validate.file.*.simple.scrub_forward_seeking.synchronized
...
It is still a bit racy and sometimes the seek just does not happen
2014-07-31 17:56:13 +02:00
Thibault Saunier
7057a9fd50
tools: launcher: Disable subtitle track switching scenario on Sintel
...
It is racy at the moment.
2014-07-31 17:43:51 +02:00
Thibault Saunier
1aa0d4eb4a
validate:launcher: Allow informing minimum media duration in scenarios
...
Allowing the launcher to avoid running tests on medias that are not long
enough
2014-07-23 20:43:57 +02:00
Thibault Saunier
24fe345f73
validate:launcher: Always print final report + enhance output
2014-07-23 17:49:44 +02:00
Thibault Saunier
386b572066
validate: launcher: Force clock syncronization for some scenarios
...
In some cases it is necessary that the clock is sync so that all the
actions can be executed.
2014-07-23 17:49:44 +02:00
Thibault Saunier
40003689df
validate: Launcher: Make sure tests are always executed in same order
2014-07-23 13:48:44 +02:00
Thibault Saunier
1cdbba4327
validate: Launcher: Fix a backtrace using self in a @staticmethod
2014-07-22 15:50:47 +02:00
Thiago Santos
d7c3d652d0
gst-validate: properly set pipeline to null before unref
...
In case it fails when going ready->paused it will remain in ready state
and be unref'd in ready, leading to an assertion
2014-07-21 22:01:27 -03:00
Lubosz Sarnecki
24046a6168
httpserver: launch webserver with the same python interpreter.
2014-07-21 18:01:25 +02:00
Thibault Saunier
7d695fbed4
validate: Dot the pipeline on interuption
2014-07-19 09:48:17 +02:00
Thibault Saunier
cf540d002b
validate:launcher: Fix a backtrace using an undefined method
2014-07-18 16:28:49 +02:00
Thibault Saunier
3cfa480eba
valdate:launcher: Do not refer to self in @staticmethod
...
There is no self in there.
2014-07-17 17:04:59 +02:00
Thibault Saunier
f6884a5a54
validate: Do not auto flush pipeline bus
...
We want to see all messages in our async handler
And flush it when we are done.
2014-07-17 12:17:31 +02:00
Thibault Saunier
fcb8a77e17
validate:launcher: Avoid using sync=true on fakesinks
...
Making the test run much faster!
2014-07-16 19:38:01 +02:00
Thibault Saunier
b075646451
validate: Launcher: Print total time spent in the final report
2014-07-16 19:37:35 +02:00
Thibault Saunier
f5454f07f0
validate:launcher: Properly check that encoded files have the exact wanted format
2014-07-16 15:47:58 +02:00
Thibault Saunier
fe9ed41d6c
validate:launcher: Add a method to create a GstValidateMediaDescriptor from a uri
2014-07-16 15:47:58 +02:00
Thibault Saunier
265688fcd6
validate:launcher: Move MediaFormatCombination to baseclasses.py
...
+ Add some simple helpers
2014-07-16 15:47:58 +02:00