1

我正在尝试使用 ffmpeg 启动一个 rtmp 转码器服务器;接收 udp MPEG-TS 流作为输入,对其进行转码;并生成一个 rtmp 输出到一个 URL,用户可以访问该 URL 以接收和播放 rtmp 流。所有这些都应在 LAN 中执行,并且所有用户都可以访问输出。

1) 首先我不知道 URL 应该指向哪里。指定系统的IP和一些可选端口是否足够?程序是否必须在该端口上侦听?

2) 如何在 URL 上播放流?

我使用 IP=10.1.1.229 的 linux ubuntu 机器,我想在这个 URL 上转码多播流:udp://@224.10.1.1:2001.

这是用于对输入流进行转码并生成 rtmp url "rtmp://10.1.1.229:2020" 的命令。

ffmpeg -y -f mpegts -i "udp://@224.10.1.1:2001" -re -vcodec libx264 -maxrate 700k -r 25 -s 640x360 -deinterlace -acodec libfaac -ab 64k -ac 1 -ar 44100 -f flv "rtmp://10.1.1.229:2020"

这是我试图播放 rtmp 流的命令:

ffplay rtmp://10.1.1.229:2020

任何指导都会有所帮助。谢谢你。

4

1 回答 1

1

我在您的命令中看到了一个错误:rtmp URL(在您的情况下是“rtmp://10.1.1.229:2020”)应该是流的完整路径,包括它的名称。我也在使用 FFmpeg 来完成类似的任务(将 RSTP 转码为 RTMP 并将其流式传输到 Wowza)。我的网址如下所示:

rtmp://[服务器IP]/livecam/desc

于 2013-04-02T08:02:32.573 回答