Playback of SRT Stream with GStreamer 1.16 not possible
Hi,
I am able to start a SRT Stream on a Raspberry Pi 4 using GStreamer with this Pipeline:
GST_DEBUG=2 gst-launch-1.0 v4l2src io-mode=2 ! "video/x-raw,framerate=50/1,format=UYVY" ! v4l2h264enc output-io-mode=2 extra-controls="controls,video_bitrate=6000000;" ! video/x-h264,profile=high ! h264parse ! queue ! mpegtsmux ! srtsink uri=srt://:8888 latency=100
For this to work I had to change a sourcefile and rebuilt GStreamer Bad Plugins, because of a problem in C-Code (see https://github.com/Haivision/srt/issues/1374).
The output is like:
0:00:00.004466663 20214 0x1e412c0 WARN GST_PERFORMANCE gstbuffer.c:486:_priv_gst_buffer_initialize: No 64-bit atomic int defined for this platform/toolchain!
Leitung wird auf PAUSIERT gesetzt ...
0:00:00.117928338 20214 0x1e412c0 WARN v4l2 gstv4l2object.c:4211:gst_v4l2_object_probe_caps:<v4l2h264enc0:src> Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Das Argument ist ungültig
Leitung ist aktiv und erfordert keinen VORLAUF …
Leitung wird auf ABSPIELEN gesetzt ...
New clock: GstSystemClock
Verzögerung neu verteilen …
0:00:00.174356827 20214 0x1f3b1b0 WARN v4l2bufferpool gstv4l2bufferpool.c:810:gst_v4l2_buffer_pool_start:<v4l2h264enc0:pool:src> Uncertain or not enough buffers, enabling copy threshold
0:00:00.189427690 20214 0xb21029b0 WARN v4l2bufferpool gstv4l2bufferpool.c:1279:gst_v4l2_buffer_pool_dqbuf:<v4l2h264enc0:pool:src> Driver should never set v4l2_buffer.field to ANY
0:00:00.206208501 20214 0xb21029b0 WARN v4l2videoenc gstv4l2videoenc.c:680:gst_v4l2_video_enc_loop:<v4l2h264enc0> Encoder is producing too many buffers
The problem is that I am not able to playback this stream on a client device. I tried several Apps, programs and systems: VLC (win10), Haivision Pro Player (iOS) and VMix. None of the apps is reporting any errors - they just show a black screen.
I tried it using an url structure like: srt://:8888 - depending on the specific app.
The same happens if I try the testing pipeline:
GST_DEBUG=2 gst-launch-1.0 -v videotestsrc ! video/x-raw, height=1080, width=1920 ! videoconvert ! x264enc tune=zerolatency ! video/x-h264, profile=high ! mpegtsmux ! srtsink uri=srt://:8888/
I am not sure if this problem is GStreamer-Plugin related, but I am not able to debug the problem on any other way..
Any help appreciated!
Greetings