我有一个通用的Windows网络摄像头,我正在尝试广播
ffmpeg -f vfwcap -I 0 -vcodedc libx264 -tune zerolatency-b 900k -f mpegts udp://domain.com:8090
看起来没有错误。我可以在端口8090上使用TCPDUMP看到大量流量
ffServer正在在没有防火墙配置的FreeBSD服务器上配置
# cat /usr/local/etc/ffserver.conf| egrep -v "(^#.*|^$)"
HTTPPort 8090
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 200K
ACL allow 98.124.117.129
</Feed>
<Stream test1.mpg>
Feed feed1.ffm
Format mpeg
AudioBitRate 32
AudioChannels 1
AudioSampleRate 44100
VideoBitRate 64
VideoBufferSize 40
VideoFrameRate 3
VideoSize 160x128
VideoGopSize 12
ACL ALLOW all
</Stream>
<Stream test.asf>
Feed feed1.ffm
Format asf
VideoFrameRate 15
VideoSize 352x240
VideoBitRate 256
VideoBufferSize 40
VideoGopSize 30
AudioBitRate 64
StartSendOnKey
</Stream>
<Stream test1-rtsp.mpg>
Format rtp
File "/tmp/feed1.ffm"
</Stream>
<Stream stat.html>
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255 98.124.117.129 0.0.0.0
</Stream>
<Redirect index.html>
URL http://www.ffmpeg.org/
</Redirect>
端口是实时
# netstat -an|grep 8090
tcp4 0 0 *.8090 *.* LISTEN
但是,当我尝试通过VLC连接到FFServer
rtsp://persiaspalace.us:8090/feed1.ffm
连接失败。没有网络问题
如何配置从FFMPEG广播到FFServer的网络摄像头,以通过VLC(或类似)查看?
我相信您的端口混合在一起。FFServer使用端口8090用于HTTP,RTSP。在您的FFServer配置文件中设置RTSpport,然后确保您要击中流,而不是feed(如QA Collective指出的那样)。类似:
...
HTTPPort 8090
RTSPPort 5554
...
确保端口可用,然后尝试:
ffplay -loglevel debug "rtsp://persiaspalace.us:5554/test1.mpg"
您需要连接到流,而不是供稿。提要是传入的视频。流是即将发出的视频。
rtsp://persiaspalace.us:8090/feed1.ffm
需要
rtsp://persiaspalace.us:8090/test1.mpg或者rtsp://persiaspalace.us:8090/test.asf或者rtsp://persiaspalace.us:8090/test1-rtsp.mpg