summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)AuthorFilesLines
5 dayscccombiner: Update for additional info parameter to the "samples-selected" ↵Sebastian Dröge1-1/+3
signal See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/590 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1498>
8 daysva: tests: example: Fix memory leaksVíctor Manuel Jáquez Leal1-13/+27
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1489>
9 daystests: examples: add va-x11-render exampleVíctor Manuel Jáquez Leal3-0/+336
This a GTK+ example will share, through GstContext, a custom X11 VADisplay to a pipeline using vah264dec and appsink. When the frames are processed for rendering, the VASurfaceID is fetched from the buffer and it is rendered using vaPutSurface in a X11 widget.
9 daystests: examples: Comply with compilation orderVíctor Manuel Jáquez Leal1-1/+1
13 dayscccombiner: implement samples selection APIMathieu Duponchelle1-0/+42
Call gst_aggregator_selected_samples() after identifying the caption buffers that will be added as a meta on the next video buffer. Implement GstAggregator.peek_next_sample. Add an example that demonstrates usage of the new API in combination with the existing buffer-consumed signal. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1390>
2020-07-25directfb: suppress compiler warning from directfb headersTim-Philipp Müller1-1/+1
On debian sid, directfb 1.7.7 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1467>
2020-07-11avtp: rename tstamp-mode to timestamp-modeTim-Philipp Müller1-3/+3
I thnk w cn spre the xtra lttrs. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1397>
2020-07-07tests: mpegtsmux: Test we don't crash releasing unused padJan Alexander Steffens (heftig)1-0/+33
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1411>
2020-07-07tests: mpegtsmux: Avoid use-after-unrefJan Alexander Steffens (heftig)1-2/+3
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1411>
2020-07-03ccconverter: write the cdp timecode data correctlyMatthew Waters1-22/+28
We were mixing up the tens part with the unit parts all over the place. e.g. 12 seconds would be encoded as 0x21 instead of the correct 0x12 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1400>
2020-07-01ccconverter: fail negotiation when framerate conversion is not possibleMatthew Waters1-0/+55
Converting between anything but cdp will fail at converting framerates and negotiation should reflect that. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393>
2020-07-01ccconverter: fix missing output framerate on the capsMatthew Waters1-1/+12
A pipeline like this: closedcaption/x-cea-708,format=cdp,framerate=30000/1001 ! ccconverter ! closedcaption/x-cea-708,format=cc_data would produce a critical/assert: GStreamer-CRITICAL **: 14:21:11.509: gst_util_fraction_multiply: assertion 'a_d != 0' failed because there would be no framerate field on ccconverter's output. Fixed by always fixating a framerate if the input has a framerate. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1393>
2020-06-21vulkan/instance: expose extension/layer choicesMatthew Waters1-1/+38
Extensions and layers can be enabled before calling gst_vulkan_instance_open() but after calling gst_vulkan_instance_fill_info(). Use the list of available extensions to better choose a default display implementation to use based on the available Vulkan extensions for surface output. Defaults are still the same. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-21vulkan/instance: add vulkan API version selection and checkingMatthew Waters2-0/+138
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
2020-06-08tests: wasapi2: Add unit test for reusing wasapisrcSeungha Yang2-0/+180
Test state change between playing and null and playing again Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1264>
2020-06-01tests/avtp: Plug some (more) leaksEderson de Souza4-0/+14
Some leaks were introduced in new tests - this patch fix them. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1312>
2020-05-28mpegtsdemux: tests: Test that tsparse doesn't drop paddingJan Alexander Steffens (heftig)1-0/+74
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1300>
2020-05-28avtp: Initialise strack structures to 0 in testsJan Schmidt1-2/+2
Avoid valgrind warnings about accessing uninitialised memory in the tests by initialisting structures to 0 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1305>
2020-05-28avtp: Fix some leaks in the testsJan Schmidt3-0/+35
Fix valgrind errors that area showing on the CI now that AVTP elements are built. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1305>
2020-05-27tests: fix meson test env setup to make sure we use the right gst-plugin-scannerTim-Philipp Müller1-1/+7
If core is built as a subproject (e.g. as in gst-build), make sure to use the gst-plugin-scanner from the built subproject. Without this, gstreamer might accidentally use the gst-plugin-scanner from the install prefix if that exists, which in turn might drag in gst library versions we didn't mean to drag in. Those gst library versions might then be older than what our current build needs, and might cause our newly-built plugins to get blacklisted in the test registry because they rely on a symbol that the wrongly-pulled in gst lib doesn't have. This should fix running of unit tests in gst-build when invoking meson test or ninja test from outside the devenv for the case where there is an older or different-version gst-plugin-scanner installed in the install prefix. In case no gst-plugin-scanner is installed in the install prefix, this will fix "GStreamer-WARNING: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run. You might need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual." warnings when running the unit tests. In the case where we find GStreamer core via pkg-config we use a newly-added pkg-config var "pluginscannerdir" to get the right directory. This has the benefit of working transparently for both installed and uninstalled pkg-config files/setups. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1302>
2020-05-19tests: fix nalutils file nameStéphane Cerveau1-1/+1
The filename was too long causing issues with ccache Fix https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/97 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1281>
2020-05-18mpegtsdemux: tests: Add simple tests for tsparse and tsdemuxJan Alexander Steffens (heftig)2-0/+328
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1274>
2020-05-11ccconverter: use a better padding byte sequence for writing cdpMatthew Waters1-55/+55
0xf8 can be interpreted as cea608 data at the beginning of a cdp packet as the cc_valid bit is not checked when cc_valid in (0b00 or 0b01). Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-11ccconverter: split temporary storage into 3Matthew Waters1-85/+217
Instead of storing the raw cc_data, store the 2 cea608 fields individually as well as the ccp data. Simply copying the input cc_data to the output cc_data violates a number of requirements in the cea708 specification. The most prominent being, that cea608 triples must be placed at the beginning of each cdp. We also need to comply with the framerate-dpendent limits for both the cea608 and the ccp data which may involve splitting or merging some cea608 data but not ccp data or vice versa. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-11ccconvert: compact input cc_data where possibleMatthew Waters1-63/+63
Skip over padding cc_data triples. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-11ccconverter: implement support for CDP framerate conversionsMatthew Waters1-21/+401
- Any format involving CDP is supported. - Time codes (if present) are scaled as well. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-11tests/ccconverter: test the time codes are successfully passed throughMatthew Waters2-16/+38
Where time codes are not stored in the caption data themselves Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-11ccconverter: cc_count limits are per framerateMatthew Waters1-0/+20
Enforce this and add a test for cdp input being too large. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
2020-05-07test: h265parse: Test parsing buffer the ends with half a NAL headerNicolas Dufresne1-0/+35
This test cover the case where we are parsing, but our current buffers ends with half the NAL header (which is 2 bytes in HEVC). Previously we would throw an error message on the bus. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1251>
2020-05-07test: h264/h265: Add test for four bytes start code initial skipNicolas Dufresne2-0/+85
This test detects if the parser have skipped too much and dropped meaninful NALs. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1251>
2020-05-07test: h264/h265: Constify all test buffersNicolas Dufresne4-48/+50
This ensure that no test modify other tests data. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1251>
2020-05-07h264parse: Properly handle 4 bytes start codeNicolas Dufresne1-21/+14
This will stop stripping four bytes start code. This was fixed and broken again as it was causing the a timestamp shift. We now call gst_base_parse_set_ts_at_offset() with the offset of the first NAL to ensure that fixing a moderatly broken input stream won't affect the timestamps. We also fixes the unit test, removing a comment about the stripping behaviour not being correct. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1251>
2020-05-06webrtc: fix an off-by-one calculating low-thresholdMatthew Waters1-1/+1
We were not signalling low-threshold when the previous amount was at exactly the low-threshold mark. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1247>
2020-05-06webrtc: fix a slightly racy testMatthew Waters1-6/+14
There is no guarantee that the peer data channel has transitioned to open when we do. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1247>
2020-05-06tests/webrtc: fix a data channel leak in a testMatthew Waters1-0/+1
test_data_channel_create_after_negotiate overrides the data_channel_data without ever freeing it. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240>
2020-05-06tests/webrtc: move bus thread creation earlierMatthew Waters1-7/+7
Fixes a small deadlock race where the bus watch GSource could execute before the unlock mutex GSource. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240>
2020-05-06tests: add libnice to the plugin loading whitelistMatthew Waters1-1/+1
Allows webrtcbin to actually unit test some negotiation scenarios. Without this, only two of the possible 33 tests are being executed. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1240>
2020-05-05test: h265parser: Add a test case for SCC extension.He Junyan1-0/+86
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1146>
2020-05-05libs: parser: h265: Add SCC extension support.He Junyan1-1/+1
Add support for screen content coding extensions profiles. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1146>
2020-05-05check: Fix dash mpd unit testEdward Hervey1-1/+1
Unexpected critical/warning: g_object_set_is_valid_property: object class 'GstMPDBaseURLNode' has no property named 'service location' Stack trace: gst_debug_get_stack_trace (gstinfo.c:3021) gst_check_log_critical_func (gstcheck.c:281) g_logv (gmessages.c:1350) g_log (gmessages.c:1415) g_object_set_valist (gobject.c:2327) gst_mpd_client_add_baseurl_node (gstmpdclient.c:3142) dash_mpdparser_check_mpd_client_set_methods (dash_mpd.c:6192) srunner_run_tagged (check_run.c:465) gst_check_run_suite (gstcheck.c:1086) main (dash_mpd.c:6521) __libc_start_main (libc-start.c:308) _start (/home/bilboed/work/devel/gst-build/build/subprojects/gst-plugins-bad/tests/check/elements_dash_mpd:0x40554a)
2020-05-03tests: curlhttpsrc: fix compiler warning on raspbianTim-Philipp Müller1-1/+1
tests/check/elements/curlhttpsrc.c:142:14: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 8 has type ‘gsize’ {aka ‘unsigned int’} Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1239>
2020-05-02avtpcvfpay: Ensure NAL fragments are transmitted following stream specsEderson de Souza1-3/+65
TSN streams are expected to send packets to the network in a well defined "pace", which is arbitrarily defined for each stream. This pace is defined by the "measurement interval" property of a stream. When the AVTP CVF payloader element - avtpcvfpay - fragments a video frame that is too big to be sent to the network, it currently defines that all fragments should be transmitted at the same time (via DTS property of GstBuffers generated, as sink will use those to time the transmission of the AVTPDU). This doesn't comply with stream definition, which also has a limit on how many packets can be sent on a given measurement interval. This patch solves that by spreading in time the DTS of the GstBuffers containing the AVTPDUs. Two new properties, "measurement-interval" and "max-interval-frames", added to avptcvfpay element so that it knows stream measurement interval and how many AVTPDUs it can send on any of them. More details on the method used to proper spread DTS/PTS according to measurement interval can be found in a code commentary inside this patch. Tests also added for the new property and behaviour. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1004>
2020-05-01libs: parser: Adds AV1 parser.Georg Ottinger2-0/+588
This is the first version of AV1 parser implementation in GStreamer. A test file is also provied with several test cases. It contains a test sequence taken from the aom testdata set, with one key and one inter-frame. The same test sequence has been reencoded to annexb. testdata is taken from aom testdata (and reencoded for annexb) as well as handcrafted testcases. Once reference testdata is available, the testing could be imporved aswell. Co-author: He Junyan <junyan.he@hotmail.com> Co-author: Víctor Manuel Jáquez Leal <vjaquez@igalia.com> Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/785>
2020-04-30tests: add tests for functions in gstavtpcrfutil.cVedang Patel2-0/+150
This adds tests for the helper functions in ext/avtp/gstavtpcrfutils.c
2020-04-30tests: Add the tests for CRF Checker elementVedang Patel2-0/+248
This adds tests to ensure the avtpcrfchecker element validates and drops the packets which do not match the CRF Synchronization criteria.
2020-04-30tests: Add tests for GstAvtpCrfBase base class.Vedang Patel2-0/+725
This adds tests which test the functions which do not call any external syscalls and the properties.
2020-04-30tests: Add tests for CRF Synchronizer elementVedang Patel2-1/+368
This adds tests to validate whether the avtpcrfsync element applies the adjustment correctly. Also, the infrastructure to include additional source files while compiling is added. This change is exactly the same as the one in gst-plugins-good.
2020-04-30clockselect: Add TAI clock supportEderson de Souza1-0/+25
Via new value for property clock-id, "tai", it's possible to use GST_CLOCK_TYPE_TAI as pipeline clock. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1009>
2020-04-30clockselect: Remove non-sense commentEderson de Souza1-4/+0
Commentary appears to assume `gst_harness_find_element` return value was "transfer none", but it is not the case. So, element must be unrefed before the end. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1009>
2020-04-30ristrtpdeext: Expose the largest sequence number receivedOlivier Crête1-3/+21
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1153>