Commit graph

761 commits

Author SHA1 Message Date
Sebastian Dröge
63e280df22 rawbaseparse: Drop incomplete frames at EOS
See https://bugzilla.gnome.org/show_bug.cgi?id=773666

This would ideally be solved in baseparse but that requires further
thought at this point, and in the meantime it would be good to have
rawbaseparse not assert on this but handle it gracefully instead.
2017-02-18 20:18:50 +02:00
Jan Schmidt
4a0bb14d9c adaptivedemux: Allow that 2017-02-09 00:16:33 +11:00
Jan Schmidt
309368bac3 adaptivedemux: Fix tests for delayed pad exposure.
Make the unit tests handle the fact that pads don't appear
immediately. Before, the test assumed pads are exposed before the
internal source element is created, which is no longer true.
2017-02-08 22:59:49 +11:00
Seungha Yang
d59571e80e tests: hlsdemux: Fix live startup sequence and seek range
To satisfy follwing restriction of HLS spec 6.3.3,
select startup fragment sequence to 4th from end of playlist.
Also, seek range should exclude last three fragment in playlist.

"the client SHOULD NOT choose a segment which starts less than
three target durations from the end of the Playlist file."

https://bugzilla.gnome.org/show_bug.cgi?id=777682
2017-01-31 13:23:34 +02:00
Edward Hervey
d98e82d667 check: Use gst_check_run_suite
Ensures that xunit reports get generated when requested
2017-01-02 15:05:19 +01:00
Sebastian Dröge
bdc1236003 dash: Define debug category used in the isoff code for the test too now 2016-12-24 08:42:51 +02:00
Sebastian Dröge
9b5de05399 Remove various unported plugins
If they were not ported after 4+ years it seems unlikely that anybody is
ever going to need them again. They're still in the GIT history if
needed.

https://bugzilla.gnome.org/show_bug.cgi?id=774530
2016-12-21 11:17:11 +02:00
Sebastian Dröge
5c99f9cf37 gst: Don't declare variables inside the for loop header
This is a C99 feature.
2016-12-13 22:39:01 +02:00
Tim-Philipp Müller
de4bb6e1d4 dataurisrc: remove plugin, moved to core
https://bugzilla.gnome.org/show_bug.cgi?id=774527
2016-11-28 11:26:50 +00:00
Seungha Yang
e454694f0a mpdparser: Handle invalid external xml link for Period element
Section 5.3.3 in ISO/IEC 23009-1:2014 defines that invalid references
(e.g., invalide URI or cannot be resolved) specified by "@xlink:href" attribute
shall be removed. That means, we should play it without error,
and just ignore the corresponding element.
It's similar to "urn:mpeg:dash:resolve-to-zero:2013".

https://bugzilla.gnome.org/show_bug.cgi?id=774463
2016-11-21 09:43:30 +02:00
Matthew Waters
a7b0669ce8 gl/tests: fix glimagesink element test on OSX
It was suffering a race starting up the thread that could cause the main
loop to quit before the main loop had started.
2016-11-17 17:30:54 +11:00
Sebastian Dröge
72927c9b77 dash: Fix breakage in unit test caused by gst-indent 2016-11-14 17:00:21 +02:00
Seungha Yang
68e4f919a0 mpdparser: Support multiple Period elements in external xml
External xml could have empty, one or multiple top-level "Period" elements.
Because xml parser cannot parse the multiple top-level elements
(i.e., no root element), we need to wrap a xml in order to make root element.
See also ISO/IEC 23009-1:2014 5.3.2.2

https://bugzilla.gnome.org/show_bug.cgi?id=774357
2016-11-14 16:56:43 +02:00
Philippe Normand
0fbd2edaff mpdparser: wrap unmodified data in protection event
PlayReady being the one of the few DRM formats encoding its data with
base64 it was not consistent to have a special case for this. So the
base64 decoding operation now needs to be done by the protection event
consumer, if needed.

https://bugzilla.gnome.org/show_bug.cgi?id=774112
2016-11-14 11:50:13 +01:00
Philippe Normand
dd0c56b4a2 mpdparser: MS PlayReady ContentProtection parsing
The "pro" (PlayReady Object) element contents are now base64-decoded
and properly stored in Protection events.

https://bugzilla.gnome.org/show_bug.cgi?id=773936
2016-11-04 17:04:59 +02:00
Sebastian Dröge
4899bf0926 gst: Fix more mentions of interlaced-mode to say interlace-mode 2016-11-04 16:26:50 +02:00
Edward Hervey
99721ddffa check: Add new test to .gitignore 2016-11-03 08:32:04 +01:00
Sebastian Dröge
898a62c1ac Revert "tests: rawvideoparse: add test for flow error handling"
This reverts commit 280b4ac2ff.

https://bugzilla.gnome.org/show_bug.cgi?id=773666
2016-11-02 09:36:04 +02:00
Tim-Philipp Müller
280b4ac2ff tests: rawvideoparse: add test for flow error handling
Also needs fixes in baseparse:
https://bugzilla.gnome.org/show_bug.cgi?id=773666
2016-11-01 20:34:37 +02:00
Vincent Penquerc'h
9a2df5dc3b tests: add a test for srtp elements
https://bugzilla.gnome.org/show_bug.cgi?id=772357
2016-11-01 19:37:50 +02:00
Joakim Johansson
25cb3afb58 rtponviftimestamp: Update unit tests after changing default value of D-bit
The D bit shall always be set to true for the first buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=770221
2016-09-21 09:41:38 -04:00
Sebastian Dröge
268c18054d dash: Fix build of unit test 2016-08-26 20:12:21 +03:00
Josep Torra
2702d98d6b gitignore: add missing dash_isoff file 2016-08-25 16:33:17 +02:00
Carlos Rafael Giani
638c442467 rawparse: Fix and extend unit tests
* Add caps change test to unit tests
* Cleanup leftover buffers after each unit test
* Add missing rawvideoparse entry in .gitignore

https://bugzilla.gnome.org/show_bug.cgi?id=769637
2016-08-18 10:53:58 +03:00
Carlos Rafael Giani
91cf5ac69f rawvideoparse: Compute plane offsets & strides if no custom ones are set
This is useful to ensure that the offsets and strides are computed if
only width, height, format etc. in the property config are set.

https://bugzilla.gnome.org/show_bug.cgi?id=769797
2016-08-18 09:21:16 +03:00
Sebastian Dröge
6dbfb1133c dash: Add test for parsing a moof box
https://bugzilla.gnome.org/show_bug.cgi?id=741104
2016-08-11 11:56:55 +02:00
Sebastian Dröge
e3805e4a96 dash: Add unit test for ISOBFF box header parsing
https://bugzilla.gnome.org/show_bug.cgi?id=741104
2016-08-11 11:56:55 +02:00
Tim-Philipp Müller
4df6f1ee93 hlsdemux: move variant list handling over to new master playlist code
Adapt hlsdemux for the m3u8 playlist changes.
2016-08-03 23:49:54 +10:00
Sebastian Dröge
aa27e34331 aiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of the file
This previously did not fail as before we didn't get any tags at all in PUSH
mode, now we get the bitrates.
2016-08-02 17:07:37 +03:00
Alex Ashley
dc6e4ccbf9 tests: dashdemux: add test for gst_mpd_client_get_maximum_segment_duration
Add a test of the gst_mpd_client_get_maximum_segment_duration() function
to check that it first checks the MPD@maxSegmentDuration and then falls
back to checking all of the segment durations.

https://bugzilla.gnome.org/show_bug.cgi?id=753751
2016-08-02 12:52:34 +01:00
Carlos Rafael Giani
d555f34562 rawparse: Add new raw audio and video parser elements
The new rawaudioparse and rawvideoparse elements are based on GstBaseParse
and completely replace audioparse and videoparse

https://bugzilla.gnome.org/show_bug.cgi?id=767011
2016-07-26 13:44:39 +03:00
Guillaume Desmottes
b3b764999a tests: fix bus leak
gst_bus_remove_signal_watch() has to be called to release the ref
taken by gst_bus_add_signal_watch().

https://bugzilla.gnome.org/show_bug.cgi?id=768843
2016-07-18 12:41:12 +01:00
Guillaume Desmottes
9106bf573a templatematch: fix buffer leak in test
Need to call gst_check_drop_buffers() to unref the buffers exchanged
during the test.

https://bugzilla.gnome.org/show_bug.cgi?id=767159
2016-06-21 10:57:18 +03:00
Guillaume Desmottes
0d6359d4a2 glimagesink: fix query leak in test
https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
e071510b12 glimagesink: properly setup/teardown tests
tcase_add_checked_fixture() is suppose to call the setup and teardown
functions so the tests don't have to do it manually.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
bebe4ca7ab uvch264demux: fix buffer leaks in test
The mock chain functions aren't unreffing the buffers so the caller
should do it.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
9694e7e820 camerabin: fix element leak in test
https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
a68534d094 fix buffer leaks in tests
gst_check_drop_buffers() release the buffers exchanged during the test.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
fc5cb1ec13 fix event leaks in tests
The events are supposed to be unreffed when finishing the test, not
reffed.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
2ec2e15a2a audiointerleave: fix message leaks by flushing the bus
https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Guillaume Desmottes
e925a8acf0 autoconvert: fix factories leak in test
The factories returned by gst_registry_find_feature() have to be
unreffed.

https://bugzilla.gnome.org/show_bug.cgi?id=766663
2016-06-21 10:52:47 +03:00
Jan Schmidt
1079e1c48c pnm: Add a basic unit test
Test that we can run an encode / decode cycle in various
formats without errors
2016-05-24 07:21:44 +10:00
Thiago Santos
04e4392afe tests: adaptivedemux: only check for data length after seek
When the test involves doing a seek, only check for data size after
the seek. The final segment range after seek might be different/smaller
than the threshold for doing the seek and doing the check before
seeking would fail.
2016-04-22 17:33:15 -03:00
Florin Apostol
00a74e98b3 adaptivedemux: tests: use macro to define names of request and response structs
Following the Don't Repeat Yourself principle, define macros
for the structures that contain the request and response headers,
so that the name is not repeated in multiple places in multiple files.

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00
Florin Apostol
3224cfd0b5 adaptivedemux: tests: improved checks for expected data
Check the size of received data for each buffer received by AppSink

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00
Florin Apostol
808a51dc0e dashdemux: tests: added content protection test
Test content protection
Configure 3 content protection sources:
- a uuid scheme/value pair
- a non uuid scheme/value pair (dash recognises only uuid schemes)
- a complex uuid scheme, with trailing spaces and capital letters in scheme uri
Only the uuid scheme should be recognised. We expect to receive 2 content protection events

https://bugzilla.gnome.org/show_bug.cgi?id=758064
2016-04-22 17:33:15 -03:00
Florin Apostol
5b6b24859f dashdemux: tests: added test for media download error for in stream fragment
Tested download error for a fragment that is not the last media fragment
in the stream.

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00
Florin Apostol
01397f56f2 dashdemux: tests: added test for download errors during header download
Test header download error.
Let the adaptive demux download a few bytes, then instruct the
GstTestHTTPSrc element to generate an error while the fragment header
is still being downloaded.

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00
Florin Apostol
b8ba8a3b7e dashdemux: tests: refactor testFragmentDownloadError
Renamed testFragmentDownloadError to testMediaDownloadErrorLastFragment.
Added gst_adaptive_demux_test_unexpected_eos function.
Remove unneeded testFragmentDownloadErrorCheckSizeOfDataReceived.

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00
Florin Apostol
f89fe6cb45 dashdemux: tests: tested latency query
Updated query test to also check if dash responds correctly to a latency
query.

https://bugzilla.gnome.org/show_bug.cgi?id=762144
2016-04-22 17:33:15 -03:00