gstreamer/tests/check/elements
Ederson de Souza 12838af353 avtpcvfpay: Ensure NAL fragments are transmitted following stream specs
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-02 17:42:15 +00:00
..
dash_mpd_data mpdparser: Support multiple Period elements in external xml 2016-11-14 16:56:43 +02:00
uvch264demux_data UVC H264 plugin 2012-09-10 16:09:26 -04:00
adaptive_demux_common.c tests: fix bus leak in hls_demux testSeek unit test 2019-03-08 01:18:39 +00:00
adaptive_demux_common.h tests: adaptivedemux: only check for data length after seek 2016-04-22 17:33:15 -03:00
adaptive_demux_engine.c adaptivedemux: Allow that 2017-02-09 00:16:33 +11:00
adaptive_demux_engine.h documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
aiffparse.c aiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of the file 2016-08-02 17:07:37 +03:00
asfmux.c tests: Remove pointless unistd include 2018-12-30 22:34:43 +09:00
assrender.c assrender: Fix compiler warning in test 2014-02-08 20:07:16 +01:00
autoconvert.c fix buffer leaks in tests 2016-06-21 10:52:47 +03:00
autovideoconvert.c tests: fix bus leak 2016-07-18 12:41:12 +01:00
avtpaafdepay.c avtp: Plug several leaks 2020-02-07 21:53:57 +00:00
avtpaafpay.c avtp: Plug several leaks 2020-02-07 21:53:57 +00:00
avtpcrfbase.c tests: Add tests for GstAvtpCrfBase base class. 2020-04-30 23:31:25 +00:00
avtpcrfcheck.c tests: Add the tests for CRF Checker element 2020-04-30 23:31:25 +00:00
avtpcrfsync.c tests: Add tests for CRF Synchronizer element 2020-04-30 23:31:25 +00:00
avtpcrfutil.c tests: add tests for functions in gstavtpcrfutil.c 2020-04-30 23:31:25 +00:00
avtpcvfdepay.c avtp: Plug several leaks 2020-02-07 21:53:57 +00:00
avtpcvfpay.c avtpcvfpay: Ensure NAL fragments are transmitted following stream specs 2020-05-02 17:42:15 +00:00
avtpsink.c tests: Add AVTP sink tests 2019-07-03 09:59:35 -07:00
avtpsrc.c tests: Add AVTP source tests 2019-07-03 09:59:35 -07:00
avwait.c avwait: Start video and audio together if audio starts late 2018-08-17 14:57:36 +03:00
camerabin.c photography: Add additional settings relevant to Android 2019-11-18 23:10:04 +00:00
cccombiner.c cccombiner: Add unit test 2018-11-06 16:21:42 +00:00
ccconverter.c ccconverter: Fill remainder of the cc_data in CDP packets with empty packets 2020-01-24 09:26:28 +00:00
ccextractor.c ccextractor: Copy over timecode meta from the input buffers to the outgoing caption buffers 2018-12-06 16:06:05 +00:00
clockselect.c clockselect: Add TAI clock support 2020-04-30 19:21:37 +00:00
curlfilesink.c curl*sink: improve return value checks in test cases 2014-04-26 10:21:10 +02:00
curlftpsink.c tests: fix indentation 2015-12-23 23:14:17 +00:00
curlhttpsink.c tests: fix indentation 2015-12-23 23:14:17 +00:00
curlhttpsrc.c remove various useless linefeed in logs 2019-12-11 10:51:29 +01:00
curlsftpsink.c curlsftpsink: authenticate remote host via public key fingerprint 2014-05-20 08:58:08 +02:00
curlsmtpsink.c tests: fix indentation 2015-12-23 23:14:17 +00:00
d3d11colorconvert.c tests: d3d11colorconvert: Add test cases for visual validation 2020-01-09 16:29:47 +00:00
dash_demux.c remove various useless linefeed in logs 2019-12-11 10:51:29 +01:00
dash_mpd.c dashsink: Add new sink to produce DASH content 2020-01-03 20:50:27 +00:00
dtls.c tests: add a test for the dtls{enc,dec} elements 2018-02-05 17:44:33 +11:00
faac.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
faad.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
gdpdepay.c tests: Remove pointless unistd include 2018-12-30 22:34:43 +09:00
gdppay.c tests: Remove pointless unistd include 2018-12-30 22:34:43 +09:00
h263parse.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
h264parse.c tests: h264parse: unit tests for sliced data processing 2020-04-15 14:10:16 +00:00
h265parse.c tests: h265parse: Add unit test for conversion and sliced data 2020-04-15 14:10:16 +00:00
hls_demux.c remove various useless linefeed in logs 2019-12-11 10:51:29 +01:00
hlsdemux_m3u8.c documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
id3mux.c tests: id3mux: add unit test for GST_TAG_PRIVATE_DATA writing 2015-11-27 12:44:57 +00:00
jifmux.c documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
jpeg2000parse.c jpeg2000parse: add unit test 2019-11-05 21:21:51 +00:00
jpegparse.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
kate.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
line21.c closedcaption: fix leak in line21 decoder 2019-03-08 01:18:39 +00:00
mfvideosrc.c tests: mfvideosrc: Add unit test 2020-04-28 14:37:31 +00:00
mpeg2enc.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
mpeg4videoparse.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
mpegtsmux.c tsmux: Don't assert sinkpad reference counts in test 2020-04-19 19:16:25 +00:00
mpegvideoparse.c tests: mpegvideoparse: add unit test for CEA-708 closed captions extraction 2018-12-11 13:56:06 +00:00
mplex.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
msdkh264enc.c tests: add msdkh264enc element unit test 2018-03-09 10:48:11 -09:00
mssdemux.c remove various useless linefeed in logs 2019-12-11 10:51:29 +01:00
mxfdemux.c mxfdemux: Fix event handling in unit test 2013-05-15 11:31:14 +02:00
mxfdemux.h tests/check/elements/mxfdemux.*: Make sure the main loop is already running when handling the EOS event in pull mode.... 2008-12-16 12:37:15 +00:00
mxfmux.c mxf: Add unit tests for H264/PCM 2015-10-21 19:54:15 +03:00
neonhttpsrc.c Fix FSF address 2012-11-04 00:09:59 +00:00
netsim.c netsim: Add netsim element 2016-02-12 10:08:06 +00:00
nvdec.c documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
nvenc.c tests: nvenc: Test runtime resolution change 2019-09-02 10:59:07 +09:00
ofa.c ofa: port to 1.0 2013-05-12 23:42:06 +01:00
parser.c tests: h264parse: fix failures due to insertion of au delimiter 2017-03-08 14:19:43 +02:00
parser.h tests: Fix build with MSVC 2018-12-18 16:48:17 +00:00
pcapparse.c tests: fix indentation 2015-12-23 23:14:17 +00:00
pnm.c pnm: Add a basic unit test 2016-05-24 07:21:44 +10:00
ristrtpext.c ristrtpdeext: Expose the largest sequence number received 2020-04-30 18:31:32 +00:00
rtponvifparse.c check: Use gst_check_run_suite 2017-01-02 15:05:19 +01:00
rtponviftimestamp.c rtponviftimestamp: Update unit tests after changing default value of D-bit 2016-09-21 09:41:38 -04:00
rtpsink.c rtpmanagerbad: allow creation of elements at initialisation 2019-09-20 15:35:09 +00:00
rtpsrc.c rtpmanagerbad: allow creation of elements at initialisation 2019-09-20 15:35:09 +00:00
shm.c tests: shm: add an end to end test for live reception 2018-10-10 13:42:05 -04:00
srtp.c srtp: Add unit tests for MKI support 2018-11-09 15:08:05 -05:00
svthevcenc.c svthevcenc: Add new SVT-HEVC encoder element 2019-12-20 15:43:55 +00:00
switchbin.c switchbin: Add a basic unit-test 2019-11-13 10:15:32 +00:00
templatematch.c templatematch: fix buffer leak in test 2016-06-21 10:57:18 +03:00
test_http_src.c gst: Don't declare variables inside the for loop header 2016-12-13 22:39:01 +02:00
test_http_src.h adaptivedemux: tests: use macro to define names of request and response structs 2016-04-22 17:33:15 -03:00
uvch264demux.c uvch264demux: fix buffer leaks in test 2016-06-21 10:52:47 +03:00
videoframe-audiolevel.c tests: fix leak in videoframe-audiolevel test 2017-04-09 11:17:04 +03:00
viewfinderbin.c Fix FSF address 2012-11-04 00:09:59 +00:00
vkcolorconvert.c tests/vkcolorconvert: remove extra instance/device creation 2019-06-24 16:23:29 +10:00
vkdeviceprovider.c vulkan: add device provider implementation 2019-09-17 13:02:44 +10:00
voaacenc.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
voamrwbenc.c check: Use GST_CHECK_MAIN () macro everywhere 2015-06-02 16:04:40 +02:00
webrtcbin.c remove various useless linefeed in logs 2019-12-11 10:51:29 +01:00
x265enc.c tests: x265enc: Add tiny resolution encoding check 2019-07-31 18:13:31 +09:00
zbar.c zbar: split test 2015-06-07 16:27:13 +02:00
zxing.c zxing: initial plugin revision 2020-01-07 17:24:50 +00:00