ffmpeg到ffserver工作,但无法查看

时间:2017-02-23 02:34:55

标签: ffmpeg udp rtsp ffserver

我正在播放一个通用的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(或类似设备)进行查看?

2 个答案:

答案 0 :(得分:0)

您需要连接到流,而不是Feed。 Feed是传入的视频。流是传出视频。

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

答案 1 :(得分:0)

我相信你的端口混乱了。 FFserver使用端口8090进行HTTP,RTSP。在您的FFserver配置文件中设置RTSPPort,然后确保您正在点击流而不是源(如QA Collective指出的那样)。类似的东西:

modelBuilder.Entity<SomeEntity>().Property(x => x.SomeProperty).IsUnicode(false);

确保端口可用,然后尝试:

...
HTTPPort 8090
RTSPPort 5554
...