两个输入视频流的VLC RTSP流-命令行问题

时间:2019-02-26 13:22:09

标签: vlc rtsp

我正在尝试在一个视频流上创建两个摄像机的叠加视图,并将其作为 RTSP 协议进行流式传输。输入有两个IP摄像机流,只有一个视频流将两个视图叠加在一起作为输出。

要创建覆盖效果和流视频输出,我在Windows 10上使用了 VLC播放器v3.0.6 。我从命令行运行它来设置所有内容(正确的覆盖,接受输入流并创建输出)流)。我可以接收输入并创建覆盖,然后将其显示在屏幕上,或使用http协议将其流式传输出去。 HTTP Steam很好用,我可以在另一台计算机上打开它并观看它。但是,我无法将输出从HTTP更改为RTSP并使其正常工作。

这是一个VLM配置文件,用于设置输入和输出。这个输出HTTP流。

del all

new channel1 broadcast enabled                                                  
setup channel1 input rtsp://xxx:xxx@192.168.xx.xx/profile2/media.smp
setup channel1 output #duplicate{dst=mosaic-bridge{id=1,height=720},select=video}                                                                                                                                                                                         

new channel2 broadcast enabled 
setup channel2 input rtsp://xxx:xxx@192.168.x.x/profile2/media.smp
setup channel2 output #duplicate{dst=mosaic-bridge{id=4,height=340},select=video}        

new background broadcast enabled
setup background input "file:///C:\Program Files\VideoLAN\VLC\pic.jpg"
setup background option image-duration=-1
setup background option image-fps=10
setup background option mosaic-width=1280
setup background option mosaic-height=720
setup background option mosaic-keep-picture=1   


setup background output #transcode{sfilter=mosaic,vcodec=mpeg,vb=2000,fps=10}:bridge-in{delay=0,id-offset=0}:standard{access=http,mux=ogg,dst=192.168.xx.xx:18554}

control channel1 play
control channel2 play
control background play 

要运行它,我使用以下命令调用VLC:

vlc "--vlm-conf=C:\Projekty\mosaic\mosaic4.vlm" "--clock-jitter=0" "--mosaic-width=1280" "--mosaic-height=720" "--mosaic-keep-picture" "--mosaic-row=2" "--mosaic-cols=2" "--mosaic-position=1" "--mosaic-order=1,2,3,4" "--ttl=12" "--udp-caching=800" --verbose=2

它设置镶嵌视图和分辨率。

现在,在设置输出时,问题出在VLM文件中。我使用:standard模块进行输出,但是此模块不支持RTSP。

好的,让我们尝试让VLC为我配置所有内容。有使用常规VLC GUI进行流传输的选项。您选择要蒸的内容(文件/您的屏幕/单个输入流),然后选择输出格式,仅此而已。在过程结束时,VLC甚至向您显示其用于流式传输的命令。看起来像这样:

:sout=#transcode{vcodec=h264,vb=56,venc=x264{profile=baseline},fps=12,scale=Automaticky,width=176,height=144,acodec=mp3,ab=24,channels=1,samplerate=44100,scodec=none}:rtp{sdp=rtsp://:8554/} :no-sout-all :sout-keep

这是一堆视频转码设置,然后是输出-:rtp {sdp = rtsp://:8554 /} 。但是效果很好,另一端接收到了有效的RTSP流。

自然地,我尝试用:rtp设置替换我的:standard(http)模块,但是由于某些原因,它根本不起作用-另一端无法打开流。

setup background output #transcode{sfilter=mosaic,vcodec=mpeg,vb=2000,fps=10}:bridge-in{delay=0,id-offset=0}:rtp{sdp=rtsp://:8554/} :no-sout-all :sout-keep

有什么建议吗?我可以接收我的信息流,可以将它们合并在一起,但是无法将它们输出。此时,VLC文档没有太大帮助。

任何帮助将不胜感激。

0 个答案:

没有答案