Ffmpeg 使用GStreamer接收和发送h264视频(来自OBS)

Ffmpeg 使用GStreamer接收和发送h264视频(来自OBS),ffmpeg,gstreamer,Ffmpeg,Gstreamer,我一直在尝试设置使用,以获得对我可以从OBS输出的一些输入的支持 OBS:rtp\u mpegts到udp://localhost:5000 http-launch 8080 webmmux streamable=true name=stream udpsrc uri=udp://localhost:5000 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP2

我一直在尝试设置使用,以获得对我可以从OBS输出的一些输入的支持

OBS:rtp\u mpegts到udp://localhost:5000

http-launch 8080 webmmux streamable=true name=stream udpsrc uri=udp://localhost:5000 caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP2T-ES, payload=(int)
33" ! gstrtpjitterbuffer latency=200 ! application/x-rtp ! rtpmp2tdepay ! video/mpegts ! mpegtsdemux ! video/x-h264 ! queue ! decodebin ! vp8enc ! stream.   audiotestsrc ! vorbisenc ! stream.
然而,使用它似乎接受连接,但只是在一段时间后再次关闭它们。关于我做错了什么有什么线索吗?只要OBS/ffmpeg支持,我愿意接受任何格式更改

作为奖励,我如何添加对音频的支持

背景 我发现,这在通过http显示GStreamer视频时效果很好:

<video id="video" autoplay="autoplay" controls="">
    <source src="https://localhost:8080" type="video/mp4" codecs="avc1.4D401E, mp4a.40.2">
    You browser doesn't support element <code>video</code>.
</video>
我已经成功地建立了一个管道,在这里我可以使用GStreamer源将管道引入http启动 管道并在视频中显示:

http-launch 8080 webmmux streamable=true name=stream udpsrc port=5000 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96" ! mpegtsdemu
x ! h264parse ! TIViddec2 ! videoconvert ! vp8enc ! stream.   audiotestsrc ! vorbisenc ! stream.

gst-launch-1.0 -v videotestsrc ! videoconvert ! x264enc tune=zerolatency bitrate=500 speed-preset=superfast ! rtph264pay ! udpsink host=127.0.0.1 port=5000
但是,我认为不支持UDP上的rpt。它使用ffmpeg发送这些数据包,这些数据包可以流式传输rtp\u mpegts。我找到了一些声称支持该格式的文件,并将上述管道缝合在一起