fakevideodec: Add some tests

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5636>
This commit is contained in:
Thibault Saunier 2023-11-10 11:46:34 -03:00 committed by GStreamer Marge Bot
parent 47dbd03604
commit ef62696505
8 changed files with 105 additions and 0 deletions

View file

@ -26,6 +26,17 @@
fun:glXQueryVersion fun:glXQueryVersion
} }
{
This use of uninitialized memory is fixed in latest GLib
Memcheck:Value8
fun:UnknownInlinedFun
fun:UnknownInlinedFun
fun:UnknownInlinedFun
fun:g_checksum_get_string
fun:g_compute_checksum_for_data
...
}
{ {
Leak in mesa fixed with http://lists.freedesktop.org/archives/mesa-dev/2015-April/082100.html Leak in mesa fixed with http://lists.freedesktop.org/archives/mesa-dev/2015-April/082100.html
Memcheck:Leak Memcheck:Leak

View file

@ -0,0 +1,21 @@
# Check that `fakevideodec` works in "encoded video" mode
meta,
handles-states=true,
args = {
"appsrc name=src format=time ! fakevideodec name=dec ! videoconvert ! $(videosink)",
},
configs = {
"$(validateflow), pad=dec:sink, buffers-checksum=as-id, ignored-event-types={ tag, stream-start }",
"$(validateflow), pad=dec:src, buffers-checksum=as-id, ignored-event-types={ tag, stream-start }",
}
foreach,
i=[0, 20],
actions={
[appsrc-push, target-element-name=src, fill-mode=counter, pts="$(i)/20", duration=1.0, size=8,
caps=(GstCaps)[video/x-h264,framerate=20/1,width=640,height=480,parsed=true]],
}
appsrc-eos, target-element-name=src
play

View file

@ -0,0 +1,23 @@
event caps: video/x-h264, framerate=(fraction)20/1, height=(int)480, parsed=(boolean)true, width=(int)640;
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=none, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
buffer: content-id=0, pts=0:00:00.000000000, dur=0:00:01.000000000, flags=discont
buffer: content-id=2, pts=0:00:00.050000000, dur=0:00:01.000000000
buffer: content-id=4, pts=0:00:00.100000000, dur=0:00:01.000000000
buffer: content-id=6, pts=0:00:00.150000000, dur=0:00:01.000000000
buffer: content-id=8, pts=0:00:00.200000000, dur=0:00:01.000000000
buffer: content-id=10, pts=0:00:00.250000000, dur=0:00:01.000000000
buffer: content-id=12, pts=0:00:00.300000000, dur=0:00:01.000000000
buffer: content-id=14, pts=0:00:00.350000000, dur=0:00:01.000000000
buffer: content-id=16, pts=0:00:00.400000000, dur=0:00:01.000000000
buffer: content-id=18, pts=0:00:00.450000000, dur=0:00:01.000000000
buffer: content-id=20, pts=0:00:00.500000000, dur=0:00:01.000000000
buffer: content-id=22, pts=0:00:00.550000000, dur=0:00:01.000000000
buffer: content-id=24, pts=0:00:00.600000000, dur=0:00:01.000000000
buffer: content-id=26, pts=0:00:00.650000000, dur=0:00:01.000000000
buffer: content-id=28, pts=0:00:00.700000000, dur=0:00:01.000000000
buffer: content-id=30, pts=0:00:00.750000000, dur=0:00:01.000000000
buffer: content-id=32, pts=0:00:00.800000000, dur=0:00:01.000000000
buffer: content-id=34, pts=0:00:00.850000000, dur=0:00:01.000000000
buffer: content-id=36, pts=0:00:00.900000000, dur=0:00:01.000000000
buffer: content-id=38, pts=0:00:00.950000000, dur=0:00:01.000000000
event eos: (no structure)

View file

@ -0,0 +1,23 @@
event caps: video/x-raw, colorimetry=(string)0:1:0:0, format=(string)RGBA, framerate=(fraction)20/1, height=(int)480, interlace-mode=(string)progressive, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, width=(int)640;
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=none, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
buffer: content-id=1, pts=0:00:00.000000000, dur=0:00:01.000000000, flags=discont, meta=GstVideoMeta
buffer: content-id=3, pts=0:00:00.050000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=5, pts=0:00:00.100000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=7, pts=0:00:00.150000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=9, pts=0:00:00.200000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=11, pts=0:00:00.250000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=13, pts=0:00:00.300000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=15, pts=0:00:00.350000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=17, pts=0:00:00.400000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=19, pts=0:00:00.450000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=21, pts=0:00:00.500000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=23, pts=0:00:00.550000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=25, pts=0:00:00.600000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=27, pts=0:00:00.650000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=29, pts=0:00:00.700000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=31, pts=0:00:00.750000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=33, pts=0:00:00.800000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=35, pts=0:00:00.850000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=37, pts=0:00:00.900000000, dur=0:00:01.000000000, meta=GstVideoMeta
buffer: content-id=39, pts=0:00:00.950000000, dur=0:00:01.000000000, meta=GstVideoMeta
event eos: (no structure)

View file

@ -0,0 +1,9 @@
# Check that `fakevideodec` works in "raw video" mode
meta,
args = {
"videotestsrc num-buffers=5 ! video/x-raw,format=RGBA ! fakevideodec name=dec ! videoconvert ! $(videosink)",
},
configs = {
"$(validateflow), pad=dec:sink, buffers-checksum=as-id, ignored-event-types={ tag, stream-start }",
"$(validateflow), pad=dec:src, buffers-checksum=as-id, ignored-event-types={ tag, stream-start }",
}

View file

@ -0,0 +1,8 @@
event caps: video/x-raw, format=(string)RGBA, framerate=(fraction)30/1, height=(int)240, interlace-mode=(string)progressive, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, width=(int)320;
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=none, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
buffer: content-id=0, pts=0:00:00.000000000, dur=0:00:00.033333333, flags=discont
buffer: content-id=1, pts=0:00:00.033333333, dur=0:00:00.033333333
buffer: content-id=2, pts=0:00:00.066666666, dur=0:00:00.033333334
buffer: content-id=3, pts=0:00:00.100000000, dur=0:00:00.033333333
buffer: content-id=4, pts=0:00:00.133333333, dur=0:00:00.033333333
event eos: (no structure)

View file

@ -0,0 +1,8 @@
event caps: video/x-raw, colorimetry=(string)sRGB, format=(string)RGBA, framerate=(fraction)30/1, height=(int)240, interlace-mode=(string)progressive, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, multiview-mode=(string)mono, pixel-aspect-ratio=(fraction)1/1, width=(int)320;
event segment: format=TIME, start=0:00:00.000000000, offset=0:00:00.000000000, stop=none, time=0:00:00.000000000, base=0:00:00.000000000, position=0:00:00.000000000
buffer: content-id=0, pts=0:00:00.000000000, dur=0:00:00.033333333, flags=discont
buffer: content-id=1, pts=0:00:00.033333333, dur=0:00:00.033333333
buffer: content-id=2, pts=0:00:00.066666666, dur=0:00:00.033333334
buffer: content-id=3, pts=0:00:00.100000000, dur=0:00:00.033333333
buffer: content-id=4, pts=0:00:00.133333333, dur=0:00:00.033333333
event eos: (no structure)

View file

@ -25,6 +25,8 @@ tests = [
'giosrc/read-growing-file', 'giosrc/read-growing-file',
'encodebin/set-encoder-properties', 'encodebin/set-encoder-properties',
'uridecodebin/expose_raw_pad_caps', 'uridecodebin/expose_raw_pad_caps',
'fakevideodec/encoded',
'fakevideodec/simple'
] ]
env = environment() env = environment()