I want to receive an mpeg4 stream with gstreamer, the stream information is(using ffprobe shows the following):
Input #0, mpeg, from 'udp://[email protected]:8001':
Duration: N/A, start: 19215.434044, bitrate: N/A
Stream #0:0[0x1e0]: Video: mpeg4 (Advanced Simple Profile), yuv420p, 352x288 [SAR 1:1 DAR 11:9], 25 fps, 25 tbr, 90k tbn
and the pipeline that I came up with is:
gst-launch-1.0 -v udpsrc uri=udp://225.1.1.40:8004 caps="video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, parsed=(boolean)false, profile=(string)advanced-simple, level=(string)4" ! mpeg4videoparse ! nvmpeg4videodec ! xvimagesink sync=false
which kinda works but is quite unusable as you can see in the screenshot below:
P.S: playbin doesn't open the stream but ffplay does. P.S2: when I use this pipeline:
GST_DEBUG=3 gst-launch-1.0 -v udpsrc uri=udp://225.1.1.40:8004 caps="video/mpeg, mpegversion=(int)4, systemstream=(boolean)false, parsed=(boolean)false, profile=(string)advanced-simple, level=(string)4" ! mpeg4videoparse ! avdec_mpeg4 ! xvimagesink sync=false
I get this image and these errors:
this is also kinda working(when I move in front of the camera those pixels will change) Errors:
0:00:00.142530876 232851 0x7f0dec000b90 ERROR libav :0:: ac-tex damaged at 12 0
0:00:00.142550122 232851 0x7f0dec000b90 ERROR libav :0:: Error at MB: 12
0:00:00.221094402 232851 0x7f0dec000b90 ERROR libav :0:: Error at MB: 259
0:00:00.302009028 232851 0x7f0dec000b90 ERROR libav :0:: ac-tex damaged at 8 5
0:00:00.302061716 232851 0x7f0dec000b90 ERROR libav :0:: Error at MB: 123
0:00:00.342253369 232851 0x7f0dec000b90 ERROR libav :0:: ac-tex damaged at 17 5
...
- gst-launch-1.0 version 1.22.8
- garuda linux(arch)