ffmpeg 搭配ffserver输出http协议视频流

来源:互联网 发布:skitch是什么软件 编辑:程序博客网 时间:2024/05/04 06:32

提前准备好三样东西:ffmpeg,ffserver,ffserver.conf

其中ffser.conf做一下介绍:

HTTPPort 8099
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
<Feed feed1.ffm>
File /home/liang/feed1.ffm
FileMaxSize 500M
ACL allow 127.0.0.1
</Feed>
<Stream test_100_100.flv>               #Stream:每一个广播(转换后的视频流)的转码设置项目
    Format flv                      #视频流格式
    Feed feed1.ffm                  #视频流的种子来源
    VideoFrameRate 40               #视频帧频
    VideoBitRate 900                #视频比特率
    VideoSize 720x576                #视频帧大小
    AVOptionVideo flags +global_header
    AudioBitRate 24                 #音频比特率
    AudioChannels 1                 #音频声道
    AudioSampleRate 44100
    AVOptionAudio flags +global_header
</Stream>
<Stream stat.html>
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
</Stream>
<Redirect index.html>
URL http://www.ffmpeg.org/
</Redirect>

配置文件中有三个东西需要注意,一个是端口号:HTTPPort ,这个当你访问的时候会用到。另外两个是Feed和Stream。Feed是缓存文件的名字,当误外界访问时,会将视频缓存到Feed的文件中。Stream是你要输出视频的格式,关联一个Feed。每一个Stream至少关联一个Feed。

启动服务方式:

1.先启动ffserver:ffserver   -f   ffserver.conf

2.启动ffmpeg:ffmpeg   -i   input   http://localhost:8099/feed1.ffm     

注意:上面的输入就不多说了,为视频输入源,输出这里,8099是配置文件中配置的端口号,可以随便改。/feed1.ffm  是你要利用那个缓存文件输出。

之后就可以在vlc上访问了,输入地址:http://localhost:8099/test_100_100.flv        注意:这里的后缀不是feed1.ffm     而是Stream关联的文件。

0 0