iOS 视频流媒体协议

作者: de7e01056dd4 | 来源:发表于2016-02-26 15:24 被阅读1118次

前端可选的视频直播协议:

1.HLS(HTTP Live Streaming) 其中RTMP是Adobe开发的协议,无法在iPhone中兼容,故目前兼容最好的就是HLS协议了HTTP Live Streaming(HLS)是苹果公司(Apple Inc.)实现的基于HTTP的流媒体传输协议,可实现流媒体的直播和点播,主要应用在iOS系统,为iOS设备(如iPhone、iPad)提供音视频直播和点播方案。HLS点播,基本上就是常见的分段HTTP点播,不同在于,它的分段非常小。

HTTP Live Streaming(HLS)是苹果公司实现的基于HTTP的流媒体传输协议,可实现流媒体的直播和点播。原理上是将视频流分片成一系列HTTP下载文件。所以,HLS比RTMP有较高的延迟。HLS基于HTTP协议实现,传输内容包括两部分,一是M3U8描述文件,二是TS媒体文件

相对于常见的流媒体直播协议,例如RTMP协议、RTSP协议、MMS协议等,HLS直播最大的不同在于,直播客户端获取到的,并不是一个完整的数据流。HLS协议在服务器端将直播数据流存储为连续的、很短时长的媒体文件(MPEG-TS格式),而客户端则不断的下载并播放这些小文件,因为服务器端总是会将最新的直播数据生成新的小文件,这样客户端只要不停的按顺序播放从服务器获取到的文件,就实现了直播。由此可见,基本上可以认为,HLS是以点播的技术方式来实现直播。由于数据通过HTTP协议传输,所以完全不用考虑防火墙或者代理的问题,而且分段文件的时长很短,客户端可以很快的选择和切换码率,以适应不同带宽条件下的播放。不过HLS的这种技术特点,决定了它的延迟一般总是会高于普通的流媒体直播协议。

根据以上的了解要实现HTTP Live Streaming直播,需要研究并实现以下技术关键点

1.采集视频源和音频源的数据

2.对原始数据进行H264编码和AAC编码

3.视频和音频数据封装为MPEG-TS包

4.HLS分段生成策略及m3u8索引文件

5.HTTP传输协议

2.RTMP是Real Time Messaging Protocol(实时消息传输协议

ffmpeg是一个多平台多媒体处理工具,处理视频和音频的功能非常强大

相关文章

  • iOS 视频流媒体协议

    前端可选的视频直播协议: 1.HLS(HTTP Live Streaming) 其中RTMP是Adobe开发的协议...

  • 流媒体协议

    在流媒体协议中,常用的流媒体协议主要有 HTTP协议,RTSP协议和RTMP协议。国内视频网站多采用HTTP+MP...

  • iOS-RTMP协议

    1.伪流媒体协议渐进式流媒体:下载一点、保存一点。 使用http协议,实现视频播放,快进快退,和流媒体很像,优酷、...

  • 02 视频点播和直播

    流媒体协议介绍 1 伪流媒体: 渐进式下载 : 边下边存, 文件会保存 使用http协议,也能够实现视频播放, 也...

  • iOS直播-播放基于RTMP协议的视频

    流媒体协议介绍 1. 伪流媒体: 渐进式下载 : 边下边存, 文件会保存 使用http协议,也能够实现视频播放, ...

  • 移动端直播应用的开发流程(转载)

    Part 1. 推流端 推流,就是将采集到的音频,视频数据通过流媒体协议发送到流媒体服务器。 一、选择流媒体协议 ...

  • 视频推流

    直播技术? 姿势:摄像头采集,音视频编解码,流媒体协议,音视频流推送到流媒体服务器,流媒体网络分发,用户播放器,音...

  • 玩转直播学习全套件

    最近学习的总结!首先来介绍下简单的推流.iOS 直播 —— 推流推流,就是将采集到的音频,视频数据通过流媒体协议发...

  • RTSP协议介绍

    流媒体传输协议介绍 1,RTMP协议(1)是流媒体协议。(2)RTMP协议是 Adobe 的私有协议,未完全公开。...

  • iOS视频

    1.MediaPlayer框架播放视频/网络流媒体/网络音频 iOS提供了MPMoviePlayerControl...

网友评论

  • muyang_js的简书:你这里面“其中RTMP是Adobe开发的协议,无法在iPhone中兼容,”这句。RTMP是支持iphone的
    技艺人生:是支持的,不过系统原生的播放器不支持RTMP协议,需要自行开发支持RTMP协议的解码器
  • puppySweet:iOS上内置相机应用录制的mov/mp4视频竖屏拍照的时候产生一个Rotation元数据,表示录制视频时摄像头旋转到了多少角度。其值一般为这四个:0、90、180或270。类似于图片文件的Exif信息中的Orientation元数据。

    Rotation元数据用于播放器确定渲染视频的方向,但有的播放器会对其视而不见。 我竖屏用avaasertWriter录制视频 所以我现在 Rotation 是90度 但是 windows下 有些网站播放器播放时 会倒转90 度 因为有些windows下 的播放 不认得 Rotation这个属性 怎么办 不会自动旋转90自适应 苹果安卓手机播放一点事都没有 火狐浏览器的播放器也没问题



    网上的案例旋转回90度的方法不是用avassertWriter 录制视频

    而是avcapturefileouDAtavideo录视频 再用AVMutableVideoComposition 旋转 exprotSession等旋转后压缩倒出的 这导致 我用avassertWriter设置的比特流 帧绿 还有一些属性全变了

    怎么办怎么办

本文标题:iOS 视频流媒体协议

本文链接:https://www.haomeiwen.com/subject/lwlwkttx.html