直播技术中的HLS知识点

直播协议:
1.HLS (http Live streaming)苹果开发,基于http协议的流媒体网络传输协议;原理是把整个流分成一个个的基于http的文件下载下来,每次只下载一些

hls的优势:跨平台,    pc/android/ios
ios上最稳定
视频封装的格式是TS,视频的编码格式为H264,音频编码格式为MP3,AAC或者AC-3

2.RTMP指Adobe的RTMP(realtime message protocol),广泛用于延时直播,也是编码器和服务器对接的实际标准协议,在PC(FLASH)上有最佳观看体验和最佳稳定性
4.HLS是apple的hls,本身就就是live的,点播(vod)也支持。hls是apple平台的标准流媒体协议,和RTMP在PC上一样支持得天衣无缝
5.pc主要的直播方案是RTMP,也有一些库能播放HLS,譬如jwplayer,基于osmf的hls插件也是一大堆,所以实际上如果选一种协议能跨平台pc/android/ios,那就是HLS.
6.HLS协议规定
    视频的封装格式是TS
    视频的编码格式是H264,音频编码格式为MP3,AAC或者AC-3
    除恶TS视频文件本身,还定义了用来控制播放器的M3U8文件(本地文件)
7.HLS协议说明
    hls的m3u8是一个TS的列表也就是告诉浏览器可以播放这些TS文件
8.m3u8实际上是一种文本文件,非视频文件,是用UTF-8描述的文本文件,当然如果你的m3u8文件

9.m3u8的测试地址,
    点播地址:http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
    
10.vlc播放的实际是一个个的ts文件,所以m3u8只是视频文件ts路径的封装或者容器,真正播放的是m3u8解析下载到本地的一段ts视频文件
11.ts文件
    ts文件为传输流文件,视频编码主要格式是:H264/mpeg4,音频为aac/mp3
    ts文件分为3层,    ts层:transport stream,             在pes层加入数据流的识别和传输必须的信息
                    pes层:packet Elemental Stream        在音视频数据上加了时间戳等对数据帧的说明信息
                    es层:elementary stream                音视频数据层
                    
                    
                    ts包大小固定为188字节,ts层分为三部分:ts header (固定4个字节), adaptation field,payload
                    
                    
12.HLS基于HTTP协议实现,传输内容包括两部分:一是M3U8描述文件,二是TS媒体文件
 


 

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读