如何在gstreamer中混合两个rtmp流?
Src:nginx-rtmp cams - h.264 / speex 接收器:nginx-rtmp
GStreamer 0.10或1.0
---------- -------
| rtmp src |----->| |
---------- | | ----------
| video |----->| rtmp sink|
---------- | mixer | ----------
| rtmp src |----->| |
---------- | |
-------
答案 0 :(得分:3)
您可以使用视频混合器,视频游戏和视频播放器实现此目的。
这个答案可以给你一些想法:Can I use the Gstreamer API to merge 2 videos?
答案 1 :(得分:2)
我在Red5服务器(Santosh,Amit)上手动发布两个流,使用以下管道,我可以混合两个流并在Red5(测试)上发布另一个流。
GST_DEBUG=videomixer:6 gst-launch-1.0 videomixer sink_1::xpos=10\ sink_1::ypos=0 sink_2::xpos=10 sink_1::ypos=220 sink_3::xpos=50 \sink_1::ypos=120 name=mix ! videoconvert ! video/x-raw, height=500, \width=1000 ! x264enc tune=zerolatency bitrate=2000 ! flvmux ! rtmpsink \location='rtmp://xx.xx.xx.xx/oflaDemo/Test live=1' rtmpsrc name=src1 \location='rtmp://xx.xx.xx.xx/oflaDemo/Amit live=1' ! decodebin ! \mix.sink_1 rtmpsrc name=src2 \location='rtmp://xx.xx.xx.xx/oflaDemo/Santosh live=1' ! decodebin !\ mix.sink_2