天天看点

http live streaming (hls) 实时切片

之前是通过nginx进行 hls 直播,现在尝试自己去实现hls服务,以方便后续需求的更改。

实时的h264视频流封装为一段一段的ts流并生成一个动态更新的 m3u8文件。目前 h264 直接封装为ts流还有点问题,暂时采用下面的方案:

h264 封装为 mp4文件 再通过ffmpeg 转码为ts文件

m3u8 文件格式如下

#EXTM3U

#EXT-X-TARGETDURATION:5

#EXT-X-MEDIA-SEQUENCE:912

http://10.10.2.167/t00000000000086/test912.ts

http://10.10.2.167/t00000000000086/test913.ts

http://10.10.2.167/t00000000000086/test914.ts

由于是实时视频,因此不需要加  endlist

文件中总是保存最新三个ts文件,以滑动窗口的方式进行更新,序号如下

1,2,3

2,3,4

4,5,6

效果:

http live streaming (hls) 实时切片

后续需要做的工作:

1. h264直接封装为ts文件,提高效率

2. 在hls服务器上 实现一个http 服务