Thibault Saunier
3979c49cd2
validate: The scenario only old a weak ref so unref the weak ref
...
We were unrefing an object we did not actually own a ref on.
2014-08-12 15:14:28 +02:00
Thibault Saunier
32dac5014a
validate: Allow several outputs in GST_VALIDATE_FILE
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
f42f0724e5
validate: Actually accept rounding errors and small mistakes for position
...
WHen seeking in paused the position right after should be pretty much
the exact one, but sometimes it can be a little different because of
rounding issues and similare.
2014-08-04 13:03:19 +02:00
Thibault Saunier
8518e08dbb
validate: Add a way to avoid printing all the issue in reports
...
Avoiding user to be flooded by information he does not want while
debugging
2014-08-04 13:02:46 +02:00
Thibault Saunier
d682bd29a9
validate: Print the report when aborting because of an issue
...
Letting a chance to the user to know what bug he faced!
2014-08-04 13:02:46 +02:00
Thibault Saunier
5c50219fae
validate: Enhance output about critical errors
...
+Lower some warning to INFO
2014-08-04 13:02:46 +02:00
Thibault Saunier
6da09fb919
validate: Allow overrides for scenario issues
2014-08-04 13:02:46 +02:00
Thibault Saunier
35b6bfb7c8
validate:scenario: Properly check that remaining actions are not 'ending' ones
...
When checking that all action were executed, we need to make sure that
actions such as EOS or stop are not taken into account as we might have
shorter medias than the duration of the scenario, and that should not be
fatal.
+ Plug a leak on the way
2014-07-23 17:49:44 +02:00
Thiago Santos
3cf3e7a438
gst-validate-scenario: add emit-signal
...
emit-signal action allows to emit signals to elements in scenarios.
The implementation only accepts signals without arguments for now but
it can be extended to use parameters if needed in the future
2014-07-22 11:59:58 -03:00
Thiago Santos
fd7c13d446
gst-validate-scenario: the structure has the type
...
Get the GValue directly from the structure and do not assume everything
is stored as a string and use the GstStructure's GValue to set the property
to the instances
2014-07-21 22:41:28 -03:00
Arnaud Vrac
e1b3ec2ad7
validate: Fix build on some custom platforms
...
We need to explicitely pass GLIB_LIBS for GModule as it seems not to be included by
GST_ALL_LIBS and we need LIBM
2014-07-21 19:09:58 +02:00
Aurélien Zanelli
d1c261f5b1
validate: duplicate strings in gst_validate_issue_new()
...
Do this to avoid discarding 'const' qualifier when using it with
constant strings. Moreover it will avoid a g_free on constant string.
https://bugzilla.gnome.org/show_bug.cgi?id=733362
2014-07-18 16:28:58 +02:00
Thibault Saunier
d7d1445e67
validate: Add a set-debug-threshold scenario action
...
Allowing users to activate the debug only at the interesting time
2014-07-17 17:04:59 +02:00
Thibault Saunier
cd55381a5f
validate: Add Gst debugging when using gst-validate printing feature
...
Giving usefull debugging informations in the GSt debug logs
2014-07-17 17:04:59 +02:00
Thibault Saunier
822c7eaa6e
validate: Avoid segfault in the error path
2014-07-16 15:47:58 +02:00
Thibault Saunier
f8a37a1c80
validate:media-descriptor-writer: Handle medias with 1 single stream
2014-07-16 15:47:58 +02:00
Thibault Saunier
fa35a10779
validate: Check that after a seek in PAUSED position is perfect
...
In case of ACCURATE seeking, the position after a SEEK in PAUSED state
should be *exactly* the one requested by the user.
2014-07-16 15:47:58 +02:00
Thiago Santos
db21883c0c
scenario: add set_property scenario action
...
Allows setting element's properties during a scenario. Very useful
for testing that elements behave correctly when changing properties
during playing state
https://bugzilla.gnome.org/show_bug.cgi?id=733070
2014-07-11 19:43:20 -03:00
Thibault Saunier
bed0f51d6c
validate: Execute actions if we get seeked in ready state
2014-07-07 11:27:35 +02:00
Thibault Saunier
87ae465c77
validate: Let scenarios tell the apps about whether it handles states
...
The user only needs to add handles-states=true in the description line
of the scenario
2014-07-07 11:27:34 +02:00
Thibault Saunier
52e39a4fcb
validate:scenario: Do not care about the position if we are not at least in PAUSED state
...
At that time the position query will be meaningless so we should just go to the next
action.
2014-07-07 11:27:34 +02:00
Thibault Saunier
1c2d31dd2f
validate:media-check: Changes in tags detection are not fatal issues
2014-07-07 11:27:34 +02:00
Thibault Saunier
00719fb07e
validate: Properly handle CLOCK_TIME_NONE position and duration values
...
In the value parser.
2014-07-07 11:27:34 +02:00
Thibault Saunier
f708156ff6
validate:scenario: Move the check about whether we are still seeking upper in the function
...
Avoiding to try to get position and do operations on a pipeline that is seeking
2014-07-07 11:27:34 +02:00
Vincent Penquerc'h
4dc3f5171e
validate-scenario: only use valid position/duration
...
Position/duration query may fail, or yield unknown values (eg,
unknown duration for live streams). In these cases, we must ensure
we do not use those invalid values.
https://bugzilla.gnome.org/show_bug.cgi?id=715160
2014-07-07 11:27:34 +02:00
Thibault Saunier
150c5bc6b2
validate:scenario: We are not changing state if the set_state failed.
2014-07-07 11:27:34 +02:00
Thibault Saunier
b3a168ed73
validate:scenario: Add a debug category and add some debug
2014-07-07 11:27:34 +02:00
Thibault Saunier
a4d3971709
validate: media-descirptor: Add more infos about discoverer error
2014-07-07 11:27:34 +02:00
Sebastian Dröge
b6c439ee88
validate: Don't call gst_debug_log_valist() if debugging is disabled
...
And also stop leaking a string every time.
2014-06-28 12:33:45 +02:00
Thibault Saunier
e847d7061a
validate: pad-monitor: Do not compare not fixed sinkpad caps fields
...
We are only able to check that the sink pad caps values are inside the src pad
value.
2014-06-16 16:43:02 +02:00
Thibault Saunier
93d9032712
scenario: Do not be so tolerant about seek drift
2014-06-16 08:56:30 +02:00
Edward Hervey
0693805e9c
pad-monitor: Handle out-of-segment first buffer
...
If the initial buffer is before segment.start, we don't want to raise
the "first buffer doesn't have 0 running-time" issue.
Also add debug for tracking issues
2014-06-03 10:05:25 +02:00
Edward Hervey
ca44a11429
validate: Run gst-indent on all code
...
so whitespace. much indent. spacing !
2014-06-03 10:05:25 +02:00
Nicolas Dufresne
fea3893686
validate: Don't pass NULL to g_strsplit
2014-05-24 01:28:36 -04:00
Edward Hervey
ebde58f1d1
validate-utils: Fix unitialized variable
...
gst-validate-utils.c:413:7: error: variable 'v0' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
if (c == '!') {
^~~~~~~~
gst-validate-utils.c:424:10: note: uninitialized use occurs here
return v0;
^~
gst-validate-utils.c:413:3: note: remove the 'if' if its condition is always false
if (c == '!') {
^~~~~~~~~~~~~~~
gst-validate-utils.c:411:13: note: initialize the variable 'v0' to silence this warning
gdouble v0;
^
= 0.0
1
2014-05-22 16:13:31 +02:00
Thibault Saunier
1a2f4a3cd3
validate: Move overrides and preload libraries to dedicated folders
...
This way it is cleaner and it is simpler to handle the various compilation dependencies.
2014-05-21 12:00:26 +02:00
Thibault Saunier
9660a8bd3a
validate: Properly use boolean in XML
2014-05-15 09:46:24 +02:00
Thibault Saunier
92d390bc5d
validate: Improve perf when writing the XML file
...
+ Pass the file into gst-indent
2014-05-08 17:48:39 +02:00
Thibault Saunier
ac6e463009
scenario: Add a general action to set state
2014-05-07 09:51:19 +02:00
Thibault Saunier
7d55065277
validate:scenario: Pass into gst-indent
2014-05-07 09:46:28 +02:00
Thibault Saunier
cd8000994b
validate: The wait mandatory field is duration
2014-05-07 09:15:34 +02:00
Thibault Saunier
0aff591b2f
validate: Make sure mandatory fields are present when parsing scenarios
2014-05-07 09:11:12 +02:00
Mathieu Duponchelle
7d4abf31e7
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
2014-05-06 15:37:26 +02:00
Mathieu Duponchelle
1332e9fc4f
scenario: make sure to not execute actions when changing state.
...
Conflicts:
validate/gst/validate/gst-validate-scenario.c
2014-05-05 17:21:06 +02:00
Thibault Saunier
aceba228ce
validate: Wait for the PAUSED state to be reached before executing actions
2014-05-02 20:05:28 +02:00
Thibault Saunier
fbcee57902
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
2014-05-02 18:30:23 +02:00
Thibault Saunier
ba38d09961
validate: Execute position right when the pipeline reaches PAUSED
...
We might go to PAUSED SYNC if nothing happens in the pipeline
2014-05-02 18:30:23 +02:00
Thibault Saunier
efb40d9778
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
2014-05-02 18:30:23 +02:00
Thibault Saunier
b37fafa1e6
validate: Plug a minor leak
2014-05-02 18:30:23 +02:00
Thibault Saunier
1ffb6b4e1c
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
2014-05-02 18:30:22 +02:00
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
3a1db22188
validate: Do not g_strrstr with a NULL pointer as needle
2014-05-02 18:30:22 +02:00
Thibault Saunier
3402d5556a
validate: Print more details when executing the switch_track action
...
+ Fix some issue in the memory freeing codepath of GstValidateAction
2014-05-02 18:30:22 +02:00
Thibault Saunier
93bd46dbc2
validate: Do not try to use a NULL iter
2014-05-02 18:30:22 +02:00
Thiago Santos
385d6d4ccd
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
2014-05-02 12:07:53 -03:00
Thibault Saunier
676602644c
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
2014-04-26 09:52:37 +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
4f920dc405
validate: Pass -scenario.c into gst-indent and fix some docs
2014-04-25 18:33:33 +02:00
Thibault Saunier
0c4216d005
validate: Add a "dot-pipeline" action
2014-04-25 18:27:30 +02:00
Thibault Saunier
eb4a70a263
validate: Return a boolean when parsing an enum string
2014-04-25 18:26:50 +02:00
Thibault Saunier
d280d0dbc9
validate: Add a media-descriptor parser and writer
2014-04-25 14:33:06 +02:00
Thibault Saunier
f6c6043317
validate: Minor printing cleanup
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
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
cac53e9078
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.
2014-04-23 09:37:22 +02:00
Thibault Saunier
21a4888ae7
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.
2014-04-22 16:57:21 +02:00
Thibault Saunier
8527d91737
validate: PAR is not a mandatory field
...
Also make it possible to check other not mandatory fields in the future
2014-04-22 16:57:21 +02:00
Thibault Saunier
279625a541
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
2014-04-22 16:57:21 +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
8899ad004c
validate: Allow comments in scenario files
...
Comment are per line only and start with #
2014-04-17 11:23:27 +02:00
Thibault Saunier
6104ed184f
validate: Avoid segfault when discovering fails
...
In that case the x->stream_info might not be set
2014-04-02 19:17:24 +02:00
Thibault Saunier
7e1c83b5b9
validate: Do not build LD_PRELOAD related code on windows
...
And do not forget to link against gst-pbutils
2014-03-28 12:17:25 +01:00
Thibault Saunier
083d303d69
validate: Use GModule to 'dlopen' ovverrides
...
We want gst-validate to be cross platform so use cross platform tools
2014-03-28 10:40:19 +01:00
Thibault Saunier
ff4879c749
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.
2014-03-26 10:57:04 +01:00
Edward Hervey
34a5946e6b
validate-scenario: Handle non-set env variable
...
Nothing guarantees it's present/set
2014-03-19 17:02:03 +01:00
Thibault Saunier
50d3d08ab5
validate:scenario: Do not be strict about position after not accurate seek
2014-03-12 15:23:33 +01:00
Thibault Saunier
fbf787889f
validate:scenario: Cleanup output and pass into gst-indent
2014-03-12 14:24:02 +01:00
Thibault Saunier
1bc0a687ee
validate:scenario: Cleanup output of --list-scenarios
2014-03-12 12:21:38 +01:00
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
Thibault Saunier
ea1f0a64f2
scenario: Rework scenarios to be: 1- Simpler to write them, 2- extendible
...
Make the scenario files a list of GstStructure-s as strings
2013-09-09 19:31:21 -03:00
Thibault Saunier
711946879e
bin-monitor: Add a way to specify pipelines on which to set scenarios
...
When used with LD_PRELOAD, the application might use various pipelines
for several different thing, we need to make it possible to spcify a
specific pipeline (or set of pipelines) on which to run the scenario.
The format is in the form of:
scenario_name:pipelinename_pattern*
2013-09-09 19:07:32 -03:00
Thibault Saunier
5cea134655
scenario: Try to run scenarios in development first
2013-09-09 19:01:44 -03:00
Edward Hervey
746b6f41b2
tools: Update .gitignore for tools move
2013-09-09 15:36:15 +02:00
Thiago Santos
24b6284d17
pad-monitor: avoid false positives when a seek fails
...
Remove the expected seqnums for events when a seek fails, preventing
false positives at the final report
2013-09-05 16:15:40 -03: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
Thiago Santos
789ea6e9d5
pad-monitor: fix typo on macro usage
...
Pass the correct variable to macro
2013-09-05 11:47:21 -03:00
Thiago Santos
1860712098
pad-monitor: allow flushing flow returns when pad is flushing
...
It should always be acceptable to return GST_FLOW_FLUSHING when the
pad is flushing
2013-09-05 11:46:46 -03:00
Thiago Santos
a1775e75e5
pad-monitor: removing bad check
...
Elements are allowed to accumulate segments, they don't have to push
1:1 segments as they receive
2013-09-04 08:51:54 -03:00
Thiago Santos
25c55501a0
pad-monitor: buffer timestamp ranges check
...
Improve buffer timestamp range check:
* Only do it for encoders or decoders
* Audio has an acceptable tolerance of 100ms
To do this, keep track of the caps on the pad and store
if it is dealing with audio or video
2013-09-03 15:35:36 -03:00
Thiago Santos
26cff77b72
pad-monitor: move caps check to common event handling
...
Allows both src and sink pad to keep track of the current caps, but
the duplicated caps check is still only applied to sink pads as
src pads can push the same caps multiple times when it isn't linked
2013-09-03 15:17:05 -03:00
Thiago Santos
bd0f19c105
pad-monitor: fix reference handling for expired events list
2013-09-02 20:41:35 -03:00
Thiago Santos
2e216818bd
Replacing mentions of qa with validate
2013-09-02 13:22:51 -03:00
Edward Hervey
cc65145eb1
pad-monitor: Check if iterator exists before trying to use it
2013-09-02 12:18:07 -03:00
Edward Hervey
788054bda7
pad-monitor: make debug log more readable
...
Use pad as the debug object to make logs more meaningful.
Also adds a FIXME note
2013-09-02 12:15:24 -03:00
Edward Hervey
fb58e16c5a
element-monitor: protect agains elements that have no klass
2013-09-02 12:11:25 -03:00
Thiago Santos
ea903da1c7
pad-monitor: use activate-mode function to detect when to clear pad data
...
Clear as much as a flush-stop when pad is deactivated
2013-09-02 12:05:46 -03:00
Edward Hervey
d2edb59a24
WIP: pad-monitor: Fix serialized event order check
2013-09-02 10:47:32 -03:00
Thiago Santos
fef4eba9a2
pad-monitor: also track eos event that should be emitted after a seek
...
When seeking out of the media file length, the element should push an
EOS with the same seqnum of the seek event
2013-09-02 10:46:55 -03:00