Commit graph

769 commits

Author SHA1 Message Date
Edward Hervey
5b54127c5a validate-utils: Add NULL check
Unlikely to be triggered. And fix typo at the same time

CID #1415464
2017-07-18 15:38:04 +02:00
Thibault Saunier
c1f613d8e7 validate:scenario: Allow setting properties by element factory name 2017-06-30 12:30:40 -04:00
Thibault Saunier
f2fc6a4550 validate:scenario: Enhance the set_property action to handle enum props
User needs to specify the enum value as a string, to be used
as with gst_util_set_object_arg.

Also enhance reporting and verify that the set value has actually
been taken into account.
2017-06-30 09:46:57 -04:00
Thibault Saunier
dbc598b378 validate: Use Gst printing utils in our reporting system
Allowing us to use GST_PTR_FORMAT and friends!
2017-06-30 09:45:02 -04:00
Thibault Saunier
6a8b0111cd validate:scenario: Enhance playbin3 stream selection error message 2017-06-22 11:52:26 -04:00
Thibault Saunier
eac403f87c validate: Add missing space in segment mismatch issue description 2017-06-20 15:51:27 -04:00
Thibault Saunier
a728a7df49 validate: Fix the way we check if _CONFIG is a list of structures 2017-06-16 17:36:34 -04:00
Thibault Saunier
6439494f40 validate: overrides: Add a hook about newly added elements in a bin 2017-06-16 17:36:34 -04:00
Thibault Saunier
e0484a7cdd validate: Attach overrides before calling monitor.setup() 2017-06-16 17:36:34 -04:00
Thibault Saunier
237a976d07 validate: Add a way to use config actions in GST_VALIDATE_CONFIG files
The synthax is:

core, action=action-name, param1=1, param2=param2
2017-06-07 11:17:53 -04:00
Thibault Saunier
8d251f12d9 scenario: Fallback to using media_info to determine stream duration
In the case the query duration return CLOCK_TIME_NONE.
2017-06-07 11:17:53 -04:00
Thibault Saunier
b9774b14b5 validate: Do not print \r in actual files 2017-06-07 11:17:53 -04:00
Thibault Saunier
3c62c315a9 validate: Implement RTSP support 2017-06-07 11:17:53 -04:00
Reynaldo H. Verdejo Pinochet
a18cef9c3f validate: reporter: add doc entry for gst_validate_report()'s varargs
Avoids GTK-Doc parser warnings
2017-06-07 00:04:34 -07:00
Reynaldo H. Verdejo Pinochet
4349e11cb0 validate: scenario: fix typo/grammar issues in function documentation 2017-06-07 00:04:34 -07:00
Reynaldo H. Verdejo Pinochet
018ca98fd9 validate: actions: drop needless newline before feature-rank and wait
Stale new-lines messed the help output of gst-validate -t
2017-06-07 00:02:54 -07:00
Reynaldo H. Verdejo Pinochet
7f396ec660 validate: actions: add info on mandatory fields for set-property
Additionally, drop a comment that becomes redundant after adding this
info to the action description
2017-06-06 23:04:52 -07:00
Reynaldo H. Verdejo Pinochet
89fff02bb3 validate: scenario: fix description for 'seek' and 'stop' 2017-06-06 23:04:28 -07:00
Reynaldo H. Verdejo Pinochet
4b57c0bbb4 validate: fix documentation for gst_validate_init() 2017-06-06 18:50:47 -07:00
Thibault Saunier
9d3b760cf3 validate: Make Reporter.runner a MT safe weak reference
It can be used in any thread!
2017-06-01 16:57:50 -04:00
Thibault Saunier
e27367f040 validate: Fix json serialized object leaks 2017-06-01 16:57:50 -04:00
Thibault Saunier
86e9135b56 validate: Use GWeakRefs on monitor target and pipeline
Making it thread safe and more future proof (though having them point
to NULL might not be handled all around).

https://bugzilla.gnome.org/show_bug.cgi?id=782784
2017-06-01 16:57:50 -04:00
Thibault Saunier
8cc1b39919 validate: monitor: Unref our weak reference to the pipeline 2017-05-31 14:53:05 -04:00
Thibault Saunier
8f123cbc6f validate: Make accessing Scenario.pipeline thread safe
The fact that Scenario.pipeline was not accessible in a thread way lead
to the fact that all users had to take the unref the last pipeline ref
in the main thread, otherwise we were crying. This was an ugly
restriction which lead to issue when using scenario on gst-rtsp-server.

This break the API as this commit remove the GstValidateScenario.pipeline
field but it is worth it.
2017-05-31 14:53:05 -04:00
Víctor Manuel Jáquez Leal
29480d006c validate: g_object_newv() is deprecated
Since glib version 2.54, g_object_newv() is deprecated.

This patch changes that function with a simpler g_object_new(),
since no properties are set.

https://bugzilla.gnome.org/show_bug.cgi?id=782860
2017-05-20 12:40:26 +02:00
Edward Hervey
a4b16d54a0 validate-report: Don't leak GError 2017-05-05 15:27:37 +02:00
Edward Hervey
506e537f82 validate-scenario: Don't end up with invalid action name
When replacing an action structure, also update the action name with
the (new) name from the new structure. Otherwise we end up with
a bogus name from the previous (deleted) structure.
2017-05-05 15:27:37 +02:00
Edward Hervey
790e78c4f8 validate-scenario: Avoid invalid memory access
The name of the action comes directly (i.e. not copied) from the
contained GstStructure field. Therefore make sure to take that
name from the proper structure field (copied just before) and
not from an outside one.
2017-05-05 14:43:25 +02:00
Reynaldo H. Verdejo Pinochet
9d33d0ec9c validate: drop unneeded break+concat in some string literals
Perform other related improvements while at it.
2017-04-12 10:31:21 -07:00
Thibault Saunier
26b388c349 validate: Do not expect track switch to be synchronous for playbin3
And let following actions to be executed (setting the action as
INTERLACED) which will make sure the track switch happened at some
point. It means the user has to set the pipeline to PLAYING so we can
make it works but we do not have choice here I think

https://bugzilla.gnome.org/show_bug.cgi?id=781213
2017-04-12 11:28:50 -03:00
Edward Hervey
1f5a900bce validate-pad-monitor: Fix previous commit
Post-send handling was only meant for seek events
2017-04-10 11:43:28 +02:00
Edward Hervey
b156616b5c pad-monitor: Safely store expected seek values
Protect the expected seek values with the same lock as the one
that will be used to read/validate the resulting segments and flush
values.

Avoids races with duplicated seeks (i.e. a seek that was already
sent and handled via another pad, such as in demuxers).

https://bugzilla.gnome.org/show_bug.cgi?id=781112
2017-04-10 09:15:50 +02:00
Reynaldo H. Verdejo Pinochet
22d99ac89c validate: scenario: fix error message on scenario parsing failure 2017-04-05 15:26:31 -07:00
Reynaldo H. Verdejo Pinochet
4ec6bda043 validate: report: avoid pointless var & associated dup/free
Just pass the replacement string literal to _regex_replace().
2017-04-05 14:40:32 -07:00
Reynaldo H. Verdejo Pinochet
38440a5931 validate: report: avoid _strdup_printf() if not needed
g_strdup() is enough for this string literal.
2017-04-05 14:36:10 -07:00
Reynaldo H. Verdejo Pinochet
c8478b87f8 validate: report: fix description for timestamp out of range
Additionally: Fix nits in the descriptions for
SCENARIO_ACTION_EXECUTION_ISSUE and CONFIG_ACTION_TYPE
2017-04-05 12:24:06 -07:00
Reynaldo H. Verdejo Pinochet
d5da8682b2 validate: scenario: improve description blurb for execute-on-idle
Additionally: Fix issues in _register_action_type() documentation.
2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
eb2353f037 validate: scenario: fix msg on _lookup_feature() failure 2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
d6169ccb9f validate: scenario: fix documentation for GstValidateAction
Additionally:
 Improve GstValidatePrepareAction documentation
 Correct one-off use of 'eos' instead of EOS.
2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
fd796d2976 validate: scenario: fix type field in description parameter
Nothing wrong with Sting though :)

Additionally: Fix typo in need-clock-sync's description
2017-03-28 15:03:47 -07:00
Reynaldo H. Verdejo Pinochet
b2ec10ace3 validate: do not check for NULL before g_free()
g_free() is NULL-safe.
2017-03-23 15:21:58 -07:00
Reynaldo H. Verdejo Pinochet
51a921b34b validate: fix issues with a couple of string constants
Fix missing and/or dupplicated separators, bogus breaks, typos, etc.
2017-03-23 15:20:05 -07:00
Nicolas Dufresne
bdd152484c Rename plugin filenames to match plugin names
- libgstvalidateplugin.so -> libgstvalidatetracer.so
- faultinjection -> validatefaultinjection
- gstvalidategtk -> validategtk
- ssim -> validatessim

https://bugzilla.gnome.org/show_bug.cgi?id=779344
2017-03-08 20:04:29 -05:00
Reynaldo H. Verdejo Pinochet
7f5d22f616 validate: report: avoid unnecessary calls to _append_printf
Additionally: simplify %format magic used for padding
2017-03-02 17:15:20 -08:00
Reynaldo H. Verdejo Pinochet
9588ccd02b validate: report: clarify misleading message on skipped actions
Intention is to notify that not all actions were
executed but previous message suggested none were.

Additionally: fix problems in two others
2017-03-02 17:14:37 -08:00
Reynaldo H. Verdejo Pinochet
c62e33a7b8 validate: report: fix _issue_new()'s parameter description 2017-03-02 17:04:16 -08:00
Thibault Saunier
95a5a3a62c validate: Ignore more parser related fields when comparing media caps 2017-02-27 12:12:38 -03:00
Reynaldo H. Verdejo Pinochet
158507585c validate: fix multiple occurrences of 'parametter' 2017-02-17 14:05:00 -08:00
Thibault Saunier
40016b9956 validate:scenario: Report action done with the execution duration 2017-02-17 15:29:41 -03:00
Reynaldo H. Verdejo Pinochet
f92569724a validate: runner: fix error msg for duplicated runner
- Add trailing whitespace to avoid accidental concatenation
- Fix bunch of typos and some grammar while at it
2017-02-16 14:34:33 -08:00