Quantcast
Channel: CodeSection,代码区,数据库(综合) - CodeSec
Viewing all articles
Browse latest Browse all 6262

笔记-组装M3U8文件

$
0
0

HLS是苹果推出的一项技术,主要是能够利用http服务器,以http的方式传输音视频文件,由于音视频文件都分割的足够小,所以下载也足够快的情况下,可以认为就相当于实时直播,相对于RTSP/RTMP这种实时的音视频传输来讲,TA不是最实时的。

直播的整个流程大概是这样:

采集视频源和音频源

对视频源H264编码,对音频源AAC编码

分割为TS文件

组装M3U8文件

Http传输以及部署到CDN

M3U8其实是一个索引文件,就像一个TXT一样,后缀名叫M3U,只不过是以UTF-8来编码的,所以命名为M3U8。

TA当中每一段描述了一段TS,TS是分割的十分小的已经编码好的音视频文件,可以直接播放,M3U8就描述了,比如一共10个TS文件,每段多长时间,地址是什么类似的信息。

TS文件可以无缝衔接,而MP4之类的文件很可能产生衔接过程闪动、黑屏等等原因。

HLS方式的主要优点就是利用了标准的Http技术,复用了当前标准的代理服务器和CDN这些成熟的技术,使得直播部署就像简单的下载服务器的部署一样

第一:Free Schema意味着重复Schema。在MongoDB数据存储的时候,不但要存储数据本身,Schema(字段key)本身也要重复的存储(例如:{“name”:”zhuanzhuan”, “infoid”:1,“infocontent”:”这个是转转商品”}),必然会造成存储空间的增大。

第二:Free Schema意味着All Schema,任何一个需要调用MongoDB数据存储的地方都需要记录数据存储的Schema,这样才能较好的解析和处理,必然会造成业务应用方的复杂度。

业务热点数据和索引的总量要能全部放入内存中,即:Memory > Index + Hot Data

所有业务都做到“无状态”和“异步化”

iOS 10 增加了新的安全设定。 如果要访问相机 相册 麦克风需要在 info.plist 内增加条目

根据控制台的提示,我们需要在plist文件添加相应的字段

相机权限

添加key字段NSCameraUsageDescription,string类型,value字段是给用户的提示文字,例如“我们需要使用您的相机“

通信录

NSContactsUsageDescription

麦克风

NSMicrophoneUsageDescription

相册

NSPhotoLibraryUsageDescription


Viewing all articles
Browse latest Browse all 6262

Trending Articles