Commit graph

263 commits

Author SHA1 Message Date
Thibault Saunier
e355a17f71 validate: scenario: Load scenario if the name is actually a path to a file 2014-03-12 12:04:52 +01:00
Thibault Saunier
33aae792f6 validate:scenario: Pass into gst-indent 2014-02-19 14:34:08 +01:00
Thibault Saunier
5e0e092112 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
2014-02-19 14:32:47 +01:00
Thibault Saunier
2f44d15e0b validate: Ignore EOS actions that can not be executed 2014-02-19 14:32:47 +01:00
Thibault Saunier
68cbc15f35 validate: Handle various paths in GST_VALIDATE_SCENARIOS_PATH 2014-02-18 21:07:31 +01:00
Thibault Saunier
63f8034bec validate:scenario: Make GstValidateAction a GstMiniObject 2014-02-18 21:07:31 +01:00
Thibault Saunier
04029cb065 validate: Move enums and flags deserialization from scenario to utilities
This way it can be reused.
2014-02-18 21:07:31 +01:00
Thibault Saunier
5cfafb4910 validate:scenario: Make the pipeline puiblic
This way people can access it from outside the main action implementation.
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
6ab7f17386 validate:scenario: Handle backslashes in scenario files 2014-02-18 21:07:31 +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
a88d54aec2 validate: Plug a leak in validate-reporter 2014-02-06 12:02:59 +01:00
Thibault Saunier
7b236c96bf validate:tools: Do not forget to give a ref for reporter's reports
Also enhance a bit report 'wording'
2014-02-06 12:02:59 +01:00
Thibault Saunier
5d172e159e scenario: Enhance explanation about seek execution failure 2014-02-06 12:02:59 +01:00
Thibault Saunier
ac92d5b428 scenario: Do not remove GSource if it has never been set 2014-02-06 12:02:59 +01:00
Thibault Saunier
9eb665dddf validate: Properly handle images in the media-info helper
In the case of images we should not check reverse playback, fast
forward etc...

We also should keep the information
2014-02-06 12:02:58 +01:00
Thibault Saunier
7d0a6efaff validate: tools: media-info: Fixes in the media file descriptor parsing code
We used to always fail when the user was passing something not NULL as err
2014-02-06 12:02:57 +01:00
Reynaldo H. Verdejo Pinochet
8c39dbfaa8 validate: fix parallel build
Without this, parallel building with > 2 jobs fails.
Also, LDFLAGS should not contain -l flags but _LIBADD.
2014-01-30 17:26:16 -03:00
Reynaldo H. Verdejo Pinochet
463ca62ab2 validate: drop unneeded stdio include 2014-01-30 15:47:15 -03:00
Lubosz Sarnecki
e8db3c67b9 validate: fix installation
* install headers
* fix libname in pk file
2013-11-25 16:56:11 -03:00
Vincent Penquerc'h
70931813ad validate-scenarios: list scenarios in GST_VALIDATE_SCENARIOS_PATH
GST_VALIDATE_SCENARIOS_PATH was used only for loading scenarios,
so any in that path would not be listed by -l.

Change-Id: If3cb94867ef3876933bda02477675c8ccf67baaf
2013-11-25 16:56:11 -03:00
Thibault Saunier
a8ae32df6d pad-monitor: Do not concider TIME_NONE as 0 for serialized events
In case we have serialized events right after a buffer that had no
timestamp set we concider that last timestamp was 0, but we can
actually not concider the timestamp at all in that case as it is
only "meaningless value".
2013-11-25 16:55:25 -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
71758d49da scenario: Add a "set-feature-rank" config action
This action can be used to change the rank of a particular element,
so you can force a particular element to be used when using
autoplugging elements (such as decodebin, encodebin, and friends)
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
123ecb57c1 media-info: Do not use GST_PTR_FORMAT with g_print
Fix compilation
2013-10-14 11:20:03 -03:00
Thibault Saunier
182f4e9a41 report: Set refcount=1 when creating a report
As it should start with 1 reference, not 0
2013-10-14 11:05:58 -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
10d1c4560e scenario: Make the get_clocktime helper a public method
So it can be reused outside of the core code
2013-10-09 09:33:06 -03:00
Thibault Saunier
4d59a2720e pad-monitor: Do not try to compare 2 not fixed values
There is no reliable way of checking those values in the case they
are not fixed, let's just make sure we get fixed values before
executing the check
2013-10-07 19:47:15 -03:00
Thibault Saunier
b20166ff23 scenario: Pass through gst-indent 2013-10-05 13:36:05 -03:00
Thibault Saunier
820ebe3b26 scenario: Use g_error instead of exit (0) 2013-10-05 13:36:05 -03:00
Thibault Saunier
045cc47dcc scenario: Factor out function to get GstClockTime out of a structure 2013-10-05 13:36:04 -03:00
Thibault Saunier
4cea878563 scenario: Use a weak ref to the pipeline
We are listening to it, we should not be owning a ref to it.
2013-10-05 13:36:04 -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
Thibault Saunier
ae641d0353 scenario: Handle formulas in playback_time
And port seek forward/backward scenarios to relative seeking
2013-10-05 13:36:04 -03:00
Thibault Saunier
e24645b133 scenario: Check that all action were properly executed 2013-10-05 13:36:04 -03:00
Thibault Saunier
c9ee576e8e scenario: Add the notion of repeated actions 2013-10-05 13:36:03 -03:00
Thibault Saunier
a89f32725b utils: Add util functions to parse simple mathematical expressions
And make use of it to set the start of a seek
2013-10-05 13:19:14 -03:00
Thibault Saunier
75356d4bbe scenario: Error out and exit when we fail loading a scenario 2013-10-05 13:19:14 -03:00
Olivier Crête
75e1f5040a gst-validate-scenario: Only typedef the struct once
Some gcc versions don't like the typedef being done twice
2013-10-03 18:14:29 -04:00
Vincent Penquerc'h
bb124f787d scenario: do not set default seek flags
Seeks will be done with no particular flags, unless specified
in the scenario.
2013-10-03 05:32:54 -04:00
Thibault Saunier
c469f9b2a4 pad-monitor: Check if channel-mask is present only if channels > 2
As it is not a mandatory field otherwize

https://bugzilla.gnome.org/show_bug.cgi?id=708499
2013-09-21 00:34:05 +02:00
Thibault Saunier
42857faaae scenario: Add GST_VALIDATE_SCENARIOS_PATH environment variable
So you can specify the PATHS where to look for scenario files
2013-09-21 00:32:52 +02:00
Thiago Santos
e3e463c0cc validate-scenario: track position query results closer
Always keep probing the pipeline for the current position and compare
with the latest requested seek segment to detect if the seek boundaries
are being respected
2013-09-20 15:18:35 -03:00
Thibault Saunier
b4a711c568 scenario: Make it possible to define mandatory fields
And give a descrpition for actions
2013-09-17 18:38:31 -03:00
Vincent Penquerc'h
ccc3f8d696 scenario: add a track switch command, and an audio track switch test
The "switch-track" command can be used to switch tracks. The "type"
argument selects which track type to change (can be "audio", "video",
or "text"). The "index" argument selects which track of this type
to use: it can be either a number, which will be the Nth track of
the given type, or a number with a "+" or "-" prefix, which means
a relative change (eg, "+1" means "next track", "-1" means "previous
track").

Conflicts:
	validate/gst/validate/gst-validate-scenario.c
2013-09-17 18:38:31 -03:00
Thibault Saunier
f0ef3803dd scenario: Make it possible to register action parsing funcs before init 2013-09-16 18:49:31 -03:00
Thibault Saunier
8a9e9a7fd7 data: Port remaning scenario files to new format
And add support to user declared timestamps -1.0 as GST_CLOCK_TIME_NONE
2013-09-13 12:03:44 -03:00