安裝segmenter 分割.ts為小檔為xxx.m3u8(待測試)
必要元件 yum -y install gd gd-devel *openssl*
git clone https://github.com/johnf/m3u8-segmenter cd m3u8-segmenter PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure make make install ln -s /usr/local/bin/m3u8-segmenter /usr/local/bin/segmenter
apache修改設定檔 在 /etc/apache2/mods-available/mime.conf 加入以下內容
# HLS file type AddType application/x-mpegURL .m3u8 AddType video/MP2T .ts
nginx修改設定檔/usr/local/web/nginx/conf/mime.types,加入以下內容
#在application/zip zip;這一行後面增加2行:
application/x-mpegURL m3u8; application/vnd.apple.mpegurl m3u8;
#在video/x-msvideo avi;行後,增加1行:
video/MP2T ts;
重啟ngnix or apache
/usr/local/web/nginx/sbin/nginx -s reload /usr/local/web/apache2/bin/apachectl restart
送視訊
ffmpeg -i rtmp://x.x.x.x:2035/gw/live1 -c:v libx264 -c:a copy -f hls /usr/local/web/nginx/html/live1/index.m3u8 ffmpeg -i rtmp://hack.twgg.org/live/time -c:v libx264 -r 12 -s 448x336 -b:v 200k -profile:v baseline -c:a copy -f hls /usr/local/web/nginx/html/live1/index.m3u8
-f hls #指定使用hls封裝
-hls_time 秒 #使用秒設置切片長度,默認是2秒
-hls_list_size #設置m3u8的條目數量, 0為存儲所有條目,默認是5條,如果是點播請設置0,不然播放會不完全
-hls_base_url #在m3u8的條目中添加絕對路徑,對於生成播放列表是十分有用
-hls_flags single_file #設置此項所有切片存儲在一個ts文件中,在m3u8中以字符位置定義條目
m3u8檔案定義
#EXTM3U m3u檔頭,必須放在第一行
#EXT-X-MEDIA-SEQUENCE 第一個TS分片的序號
#EXT-X-TARGETDURATION 每個分片TS的最大的時長
#EXT-X-ALLOW-CACHE 是否允許cache
#EXT-X-ENDLIST m3u8文件結束符
#EXTINF extra info,分片TS的信息,如時長,頻寬等