安装必备软件
- libx264
得到安装源代码 git clone git://git.videolan.org/x264.git
编译1
2./configure --disable-yasm --enable-shared --enable-static
make && make install
把so包增加到系统中
1 | echo '/usr/local/lib/' >> /etc/ld.so.conf |
- ffmpeg
下载 http://ffmpeg.org/releases/ffmpeg-2.7.2.tar.bz2
编译 ./configure –disable-yasm
使用
把mp4文件分割为多个ts文件和m3u8
1 | ffmpeg -i 2001045000007.mp4 -c:v libx264 -c:a aac -strict -2 -f hls -hls_time 15 -hls_list_size 0 output.m3u8 |
-hls_time n: 设置每片的长度,默认值为2。单位为秒
-hls_list_size n:设置播放列表保存的最多条目,设置为0会保存有所片信息,默认值为5
-hls_wrap n:设置多少片之后开始覆盖,如果设置为0则不会覆盖,默认值为0.这个选项能够避免在磁盘上存储过多的片,而且能够限制写入磁盘的最多的片的数量
-hls_start_number n:设置播放列表中sequence number的值为number,默认值为0
注意:播放列表的sequence number 对每个segment来说都必须是唯一的,而且它不能和片的文件名(当使用wrap选项时,文件名有可能会重复使用)混淆
生成的m3u8文件内容如下:
1 | cat output.m3u8 |
搭建hls播放服务
- 参考《做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)》