使用 GStreamer 转发 rtmp 流

Mah*_*oni 5 rtmp gstreamer live-streaming

如何使用 GStreamer 转发 RTMP 流。以下不太有效:

gst-launch-1.0 rtmpsrc location="rtmp://localhost:1936/myapp/mystream" ! queue ! rtmpsink location="rtmp://localhost:1935/test/live"

带有以下调试消息

然后大约2分钟后:

Caught SIGSEGV
Spinning.  Please run 'gdb gst-launch-1.0 21031' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
Run Code Online (Sandbox Code Playgroud)

Asw*_*mar 2

看起来只有当你再次解复用和复用时它才有效:

gst-launch-1.0 rtmpsrc location=rtmp://192.168.x.x/live/0 do-timestamp=true ! queue2 ! flvdemux name=demux \
    flvmux name=mux \
    demux.video ! queue ! mux.video \
    demux.audio ! queue ! mux.audio \
    mux.src ! queue ! rtmpsink location='rtmp://192.168.y.y/app'
Run Code Online (Sandbox Code Playgroud)

在此页面上找到它,这是示例管道的重要资源:http://www.francescpinyol.cat/gstreamer.html#gstreamer_from_rtmp