我正在尝试使用ffmpeg启动一个rtmp代码转换器服务器; 接收udp MPEG-TSstream作为input,对其进行转码; 并生成一个rtmp输出到一个URL,可以由用户访问接收和播放rtmpstream。 所有这些预计将在一个局域网中执行,输出被所有用户访问。
1)首先我不知道URL应该指向哪里。 是否足够指定系统的IP和一些可选的端口? 程序是否应该在该端口上进行监听是否有必要?
2)我如何在URL上播放stream?
我使用一个Linux的Ubuntu的机器,IP = 10.1.1.229,我想在这个URL转码组播stream: udp://@224.10.1.1:2001
。
这里是用于转码inputstream并生成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"
这里是我试图播放rtmpstream的命令:
ffplay rtmp://10.1.1.229:2020
任何指导将是有益的。 谢谢。
ffmpeg没有(还)具有RTMP服务器function。 它输出到rtmp URL的function是输出stream,这是RTMP服务器(如Wowza或类似的)的input源。 简而言之,ffmpeg会向RTMP服务器提供正在由该RTMP服务器广播的input。