如题,使用ffmpeg,将任意格式的视频文件,以h.264直播流形式输出
FFmpeg
相当著名的音视频处理工具,开源,免费,还有各类开发者类库。所以你见到的很多播放器内容,其实都有它的身影。官方网址FFmpeg
FFmpeg主要包含四个程序
- ffmpeg 主要用于对媒体文件的内容进行操作,比如格式转换等
- ffplay 简易播放器,能播放各种格式的视频,但我还没有用过
- ffprobe 用于探查媒体文件的属性,时长,分辨率等
- ffserver 流媒体服务器,可用于架设视频直播
一番搜索,发现实现目标就变得清晰了:建立ffserver,使用ffmpeg负责把媒体文件推给ffserver,ffserver提供直播流的输出
理想很美满,现实很骨感```
各种测试各种试实现,官方文档在此[ffserver](https://www.ffmpeg.org/ffserver.html#Synopsis) ,使用```
ffmpeg -i INPUTFILE http://localhost:8090/feed1.ffm```向上推文件总是失败,百思不得姐,很无耐
踏破铁鞋无寻觅处,柳岸花明又一村 _ ```
Nginx闪亮登场
最后的实现方案,废掉了ffserver,使用nginx的rtmp模块,开启了一个流服务,然后ffmpeg再向上推流,一次成功,至些完成测试目录。