直播技术

2018年2月24日16:15:04 发表评论 370 views

直播相关协议

RTMP

RTMP协议是一个互联网TCP/IP五层体系结构中应用层协议。

RTMP协议中基本的数据单元称为消息。

FLV

FLV协议是在大块的视频帧和音频头部加入一些标记头信息。

FLV协议非常适合于手机端的APP直播协议。

HLS

苹果推出的解决方案。

将视频分成5-10秒的视频小分片,然后用m3u8索引表进行管理。

在iPhone和Android手机浏览器上的支持非常好。

eg:QQ和微信朋友圈的URL分享。

M3U8

M3U8文件是一个索引文件。

概念:以UTF-8编码格式的m3u文件,m3u文件记录了一个索引的存文本文件,打开它时,播放软件并不是播放它,而是根据它里面的索引找到对应的音视频网络地址进行播放。

优点:主要是可以做多码率的适配,根据网络带宽,客户端会选择一个合适自己码率的文件进行播放,保证视频的流畅。

文件格式说明:

 

#EXTM3U

#EXT-X-VERSION:3

#EXT-X-TARGETDURATION:10 ---每个TS的最大的时长

#EXT-X-MEDIA-SEQUENCE:151946156 ---当前m3u8文件中第一个文件的序列号,每个ts文件在m3u8文件中都有固定唯一的序列号,该序列号用于在MBR时切换码率进行对齐。

#EXT-X-PROGRAM-DATE-TIME:2018-02-24T08:42:33Z ---第一个文件的绝对时间

直播源

 

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: