通过 gstreamer 和 VLC 使用 RAW 视频编码

通过 gstreamer 和 VLC 使用 RAW 视频编码

我正在使用 gstreamer 流式传输 RAW 视频,如下所示:

gst-launch-1.0 -v videotestsrc ! rtpvrawpay ! udpsink host="127.0.0.1" port="5000"

这会输出以下上限:

caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:0, depth=(string)8, width=(string)320, height=(string)240, colorimetry=(string)BT601-5, payload=(int)96, ssrc=(uint)1103043224, timestamp-offset=(uint)1948293153, seqnum-offset=(uint)27904

我可以使用 gstreamer 查看此流:

gst-launch-1.0 udpsrc port="5000" caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)RAW, sampling=(string)YCbCr-4:2:0, depth=(string)8, width=(string)320, height=(string)240, colorimetry=(string)BT601-5, payload=(int)96, ssrc=(uint)1103043224, timestamp-offset=(uint)1948293153, seqnum-offset=(uint)27904" ! rtpvrawdepay ! videoconvert ! queue ! xvimagesink sync=false

使用 VLC,我创建了一个 SDL 文件:

v=0
c=IN IP4 127.0.0.1
m=video 5000 RTP/AVP 96
a=rtpmap:96 RAW/90000
a=fmtp:96 media=video; clock-rate=90000; encoding-name=RAW

但 VLC 错误如下:

core input error: no suitable demux module for `file/any:///home/.../settings.sdp'

如何让 VLC 接受 RAW 流?

答案1

显然 VLC 不支持通过 RTP 的原始视频,请参阅https://forum.videolan.org/viewtopic.php?t=145855(最近)和https://forum.videolan.org/viewtopic.php?t=45(较旧)。

相关内容