如何通过ffplay查看mkvserver生成的流?

Cha*_*nya 5 ffmpeg mkv live-streaming

我想从一个源(ffmpeg)直播到我使用mkvserver 的多个客户端。我可以将网络摄像头从ffmpeg(客户端)实时流式传输到mkvserver(服务器),如下所示:

在服务器上:

nc -l <port-number> | ./server
Run Code Online (Sandbox Code Playgroud)

在客户端:

ffmpeg -f avfoundation -framerate 30 -i 0 -b 900k -f matroska -r 20 tcp://<ip-address>:<port-number>
Run Code Online (Sandbox Code Playgroud)

要查看服务器上的生成蒸汽,我使用了ffplay

ffplay tcp://<ip-address>:<port>
Run Code Online (Sandbox Code Playgroud)

但我得到了Connection timed out error. 请建议一种通过ffplay. 谢谢!

jlv*_*ero 4

让我回顾一下以进行澄清。

您正在使用 ffmpeg 从客户端进行流式传输

ffmpeg -f avfoundation -framerate 30 -i 0 -b 900k -f matroska -r 20 tcp://<ip-address>:<port-number>
Run Code Online (Sandbox Code Playgroud)

到通过 TCP 在某个端口上使用 NetCat 侦听的服务器。

nc -l <port-number>
Run Code Online (Sandbox Code Playgroud)

您正在将 NetCat outPut(客户端流)通过管道传输到 Matroska Server Mk2 (./server),该服务器通过端口8080上的所有接口上的http实时提供流媒体服务。

nc -l <port-number> | ./server
Run Code Online (Sandbox Code Playgroud)

所以我认为ffplay应该在8080端口通过http连接来查看Matroska Server Mk2(./server)的输出。

ffplay http://ip-address:8080
Run Code Online (Sandbox Code Playgroud)