实时流煤体协议概述v1.0
实时流煤体协议概述
流媒体传输类型:
流媒体传输分两类:实时流媒体和顺序流媒体
一般来说,如果视频为现场直播,或使用专用的流媒体服务器,或应用如RTSP等专用实时协议,即为实时流媒体传输;
如果使用普通的HTTP服务器,将音视频数据以从头至尾方式发送,则为顺序流媒体传输。
实时流传输既可传输实况直播,也可传输完整的音视频文件(专用协议流式)。
顺序流媒体不可用于实况直播,仅能传输完整的音视频文件(HTTP渐进式)。
主流的流媒体协议
主流的流媒体协议主要有:RTMP,HLS,RTSP等。
附:流媒体播放实现流程
一,h ttp渐进式下载原理(仅支持文件播放)http边下载边播放,严格意义上讲,不是实况直播协议。他的原理是先下载文件的基本信息,音频视频的时间戳,再下载音视频数据,以播放mp4为例,先下载文件头,根据文件头指引下载文件尾,然后再下载文件的音视频数据。
播放方式:1. 浏览器调用系统播放器播放;
2. 使HTML5的Video标签,浏览器内部支持直接播放。
二,苹果支持的hls原理(支持文件播放和实况直播)HLS的文件点播
1.使用“文件分段器”将基于H264和AAC或MP3的MPEG4分段,
生成.ts和.m3u8文件,存储于普通服务器上。
2.苹果应用程序或苹果浏览器可以通过访问.m3u8文件获取到索引,
并下载所需要的数据片段来播放。
HLS的实况直播
1.使用“流分段器”将基于H264、AAC、MP3的MPEG2传输
流分段,
2.可使用其它工具将MPEG4音视频文件加载到MPEG2传输流当中。
3.生成.ts和.m3u8文件,存储于普通服务器上。
4.苹果应用程序或苹果浏览器可以通过访问.m3u8文件获取到索引,
并下载所需要的数据片段来播放。
三,A dobe Flash 支持的RTMP协议(支持文件播放和实况直播)
必须采用Flash服务器FMS(Flash Media Server) 或 RED5.
FMS的文件点播
1. 服务器(FMS或RED5)将F4v 或 Flv文件转化为RTMP流或HTTP流
2. 客户端(Flash插件或应用程序)获取RTMP流,提取相应的Flv 或 F4v文件片段进行播放。
FMS的实况直播
1.设备端(摄像头)将数据转化为F4v片段,通过RTMP流上传到服务器
2. 服务器(FMS或RED5)转发RTMP流到客户端
3. 客户端(Flash插件或应用程序)获取RTMP流,提取数据片段播放。
四,R TSP协议
RTSP为纯粹的传输控制协议。
RTSP协议本身不与它负载的媒体数据相关。
RTSP协议需要自定义客户端向服务器发送RTSP命令。