rtmp转http-hls/http-ts
http-hls简介
HTTP-HLS(HTTP Live Streaming)是由苹果公司提出的自适应流媒体传输协议,广泛用于视频直播与点播。其核心思想是将视频流切分为短时长的 TS 文件片段(Transport Stream),并通过 HTTP 协议传输。客户端通过下载 M3U8 播放列表(基于文本的索引文件)动态选择不同码率的片段,实现网络自适应与流畅播放。
配置
- 首先需要在mms.yaml中开启http服务,请参考回源中的配置说明
- 接着,还需要在推流域名配置中,使能rtmp到hls的转换以及切片配置
yaml
type: publish
name: test.publish.com
apps:
- name: app # 接入点名称
hls: # 切片配置
ts_min_seg_dur: 2000 # 2000ms,默认2000ms,单位ms
ts_max_seg_dur: 6000 # 6000ms就必须切片,默认6000ms,单位ms
ts_max_bytes: 2m # 最大2m字节,默认2M字节,单位支持k/m
min_ts_count_for_m3u8: 3 # 3个就可以输出m3u8,默认3
bridge: # 转协议配置
no_players_timeout_ms: 10s # 多少时间无人播放,转协议结束
rtmp:
to_flv: on # 使能rtmp转flv
to_hls: on # 使能rtmp到hls转换
播放
使用ffplay播放即可
shell
ffplay http://test.play.com:8080/app/test/.m3u8
ffplay http://test.play.com:8080/app/test/.ts
提示
同时支持http-ts直播