summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* d3d11: Add support for packed 4:2:2 and 4:4:4 10bits formatsSeungha Yang2020-11-201-2/+2
| | | | | | | | Add support for Y210 and Y410 formats which are commonly used format for en/decoders on Windows. Note that those formats cannot be used for render target (output) of shader. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1821>
* test: av1parser: update the test result because of bug fixing.He Junyan2020-11-171-8/+8
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1464>
* examples: Properly handle extended descriptorsEdward Hervey2020-11-091-5/+14
| | | | | | | By checking the extended tag. Provides a bit more information (if extended tag is known) Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1781>
* tests: Don't set dtlsenc state before linking.Jan Schmidt2020-10-311-1/+2
| | | | | | | Link the dtlsenc in the testsuite before setting it to paused, as it starts a pad task that can generate a not-linked error otherwise. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1744>
* dtls: Catch bus errors and fail instead of hanging.Jan Schmidt2020-10-311-1/+32
| | | | | | | | If the DTLS elements fail, they post a bus error and don't signal any key negotiation. Catch the bus error and fail the test early instead of letting it hang and time out. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1741>
* tests: Add CUDA filter unit testsSeungha Yang2020-10-163-0/+386
| | | | | | Adding a test for buffer meta and colorspace conversion Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1633>
* tests: svthevcenc: Fix test_encode_simpleJan Alexander Steffens (heftig)2020-10-101-1/+1
| | | | | | | Pick the same I420 format the other test use. Without this, the source picks AYUV64, which fails. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1573>
* tests/avtp: Fix coverity issuesEderson de Souza2020-09-283-5/+8
| | | | | | | | Fixes sign extension issues, unchecked return values and some constant expression results. CID: 1465073, 1465074, 1465075, 1465076, 1465077 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1398>
* d3d11: Add support for packed 8bits 4:2:2 YUV formatsSeungha Yang2020-09-181-2/+48
| | | | | | | | | Note that newly added formats (YUY2, UYVY, and VYUY) are not supported render target view formats. So such formats can be only input of d3d11convert or d3d11videosink. Another note is that YUY2 format is a very common format for hardware en/decoders on Windows. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1581>
* h265parse: recognize more HEVC extension streamsHaihao Xiang2020-09-161-30/+48
| | | | | | | | | | | | There are streams which have the right general_profile_idc and general_profile_compatibility_flag, but don't have the right extension flags. We may try to use chroma_format_idc and bit_depth to recognize these streams. e.g. https://www.itu.int/wftp3/av-arch/jctvc-site/bitstream_exchange/draft_conformance/SCC/IBF_Disabled_A_MediaTek_2.zip Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1328>
* h265parser: select the right profile for high throughput SCC streamHaihao Xiang2020-09-161-2/+1
| | | | | | | | | | | | | | Currently screen-extended-high-throughput-444 is recognized as screen-extended-main-444, screen-extended-high-throughput-444-10 is recognized as screen-extended-main-444-10 because they have the same extension flags, so without this patch, it is possible that a decoder which supports SCC but doesn't support throughput SCC will try to decode a throughput SCC stream. e.g. https://www.itu.int/wftp3/av-arch/jctvc-site/bitstream_exchange/draft_conformance/SCC/HT_A_SCC_Apple_2.zip Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1328>
* validate: plug leak in gssdpJordan Petridis2020-09-141-0/+59
| | | | | | These are triggered by the webrtcbin tests https://gitlab.gnome.org/GNOME/gssdp/-/issues/10
* webrtc: propagate more errors through the promiseMatthew Waters2020-09-141-27/+156
| | | | | | | | | Return errors on promises when things fail where available. Things like parsing errors, invalid states, missing fields, unsupported transitions, etc. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1565>
* videoparsers: Add vp9parse elementSeungha Yang2020-09-103-0/+1466
| | | | | | | | | | | | | | | | | | | | Adding vp9parse element to parse various stream information such as resolution, profile, and so on. If upstream does not provide resolution and/or profile, this would be useful for decodebin pipeline for autoplugging suitable decoder element depending on template caps of each decoder element. In addition, vp9parse element supports unpacking superframe into single frame for decoders. The vp9 superframe is a frame which consists of multiple frames (or superframe with one frame is allowed) followed by superframe index block. Then unpacked each frame will be considered as normal frame by decoder. The decision for unpacking will be done by downstream element's "alignment" caps field, which can be "super-frame" or "frame". If downstream specifies the "alignment" as "frame", then vp9parse element will split an incoming superframe into single frames and the superframe index (located at the end of the superframe) data will be discarded by vp9parse element. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1041>
* line21enc: add remove-caption-meta propertyMathieu Duponchelle2020-09-091-1/+2
| | | | | | Similar to #GstCCExtractor:remove-caption-meta Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1554>
* line21enc: heavily constrain video heightMathieu Duponchelle2020-09-091-4/+4
| | | | | | | | | | We can only determine a correct placement for the CC line with: * height == 525 (standard NTSC, line 21 / 22) * height == 486 (NTSC usable lines + 6 lines for VBI, line 1 / 2) Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1554>
* tests: mpegtsmux: Test that we can manipulate pads after stopJan Alexander Steffens (heftig)2020-09-011-2/+45
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1552>
* tests/webrtc: unref GBytes after useMatthew Waters2020-08-241-1/+4
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1535>
* cccombiner: Update for additional info parameter to the "samples-selected" ↵Sebastian Dröge2020-08-071-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>
* va: tests: example: Fix memory leaksVíctor Manuel Jáquez Leal2020-08-041-13/+27
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1489>
* tests: examples: add va-x11-render exampleVíctor Manuel Jáquez Leal2020-08-033-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.
* tests: examples: Comply with compilation orderVíctor Manuel Jáquez Leal2020-08-031-1/+1
|
* cccombiner: implement samples selection APIMathieu Duponchelle2020-07-301-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>
* directfb: suppress compiler warning from directfb headersTim-Philipp Müller2020-07-251-1/+1
| | | | | | On debian sid, directfb 1.7.7 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1467>
* avtp: rename tstamp-mode to timestamp-modeTim-Philipp Müller2020-07-111-3/+3
| | | | | | I thnk w cn spre the xtra lttrs. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1397>
* tests: mpegtsmux: Test we don't crash releasing unused padJan Alexander Steffens (heftig)2020-07-071-0/+33
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1411>
* tests: mpegtsmux: Avoid use-after-unrefJan Alexander Steffens (heftig)2020-07-071-2/+3
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1411>
* ccconverter: write the cdp timecode data correctlyMatthew Waters2020-07-031-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>
* ccconverter: fail negotiation when framerate conversion is not possibleMatthew Waters2020-07-011-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>
* ccconverter: fix missing output framerate on the capsMatthew Waters2020-07-011-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>
* vulkan/instance: expose extension/layer choicesMatthew Waters2020-06-211-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>
* vulkan/instance: add vulkan API version selection and checkingMatthew Waters2020-06-212-0/+138
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1341>
* tests: wasapi2: Add unit test for reusing wasapisrcSeungha Yang2020-06-082-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>
* tests/avtp: Plug some (more) leaksEderson de Souza2020-06-014-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>
* mpegtsdemux: tests: Test that tsparse doesn't drop paddingJan Alexander Steffens (heftig)2020-05-281-0/+74
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1300>
* avtp: Initialise strack structures to 0 in testsJan Schmidt2020-05-281-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>
* avtp: Fix some leaks in the testsJan Schmidt2020-05-283-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>
* tests: fix meson test env setup to make sure we use the right gst-plugin-scannerTim-Philipp Müller2020-05-271-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>
* tests: fix nalutils file nameStéphane Cerveau2020-05-191-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>
* mpegtsdemux: tests: Add simple tests for tsparse and tsdemuxJan Alexander Steffens (heftig)2020-05-182-0/+328
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1274>
* ccconverter: use a better padding byte sequence for writing cdpMatthew Waters2020-05-111-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>
* ccconverter: split temporary storage into 3Matthew Waters2020-05-111-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>
* ccconvert: compact input cc_data where possibleMatthew Waters2020-05-111-63/+63
| | | | | | Skip over padding cc_data triples. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1116>
* ccconverter: implement support for CDP framerate conversionsMatthew Waters2020-05-111-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>
* tests/ccconverter: test the time codes are successfully passed throughMatthew Waters2020-05-112-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>
* ccconverter: cc_count limits are per framerateMatthew Waters2020-05-111-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>
* test: h265parse: Test parsing buffer the ends with half a NAL headerNicolas Dufresne2020-05-071-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>
* test: h264/h265: Add test for four bytes start code initial skipNicolas Dufresne2020-05-072-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>
* test: h264/h265: Constify all test buffersNicolas Dufresne2020-05-074-48/+50
| | | | | | This ensure that no test modify other tests data. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1251>
* h264parse: Properly handle 4 bytes start codeNicolas Dufresne2020-05-071-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>