跳转到内容

HTTP直播流:实用指南

原创开发苹果HTTP直播流币游国际真人娱乐视频流协议由 Android平台和其他移动平台支持HLS使用自适应比特率调整视频质量以适应每个查看者互联网速度和装置能力目前HLS强制对某些移动设备及大多数HTML5视频播放器进行直播

文章中你将学习以下题目

HLS协议通过自适应比特率流视频最初设计苹果设备时HLS现在使用其他设备,包括Android手机、智能电视、游戏台等

HLS从普通网络服务器发送音视频几乎可以运行任何服务器并设计可靠性HLS允许客户端设备提高或降低流质量并优化回播可达速度有线连接和无线连接视讯传送技术优先向用户传送流视频

HLS视频通过标准 web服务器或内容传递网络.过程期间HLS自动调整视频质量以匹配查看者互联网速度,平滑传送各种质量视频,从8k至144像素视频

HLS流视频使用三大构件:视频数据、分发通道和客户端设备

HLS从两个初级源码流视频

  • 内容服务器点播流
  • 实时视频源直播流

流前两个过程必须先实现, 通常是数据分发启动前在服务器上实现 :

  • 编码视频数据按H.264或H.265视频压缩标准格式化,使设备能正确识别并解码数据过程生成视频拷贝质量不等
  • 分割式视频数据划分为短段标准长度六秒.后创建索引文件以指定播放段的顺序和时间

视频编码分解后,可直接响应内容服务器请求向浏览者流流出方式可以通过CDN实现,通过CDN更容易分布流跨地理区域并缓存数据快速传送客户端设备

客户端设备接收并显示智能手机、笔记本电脑、桌面机、智能电视机和其他连通设备视频数据接收视频文件时,客户端设备决定按索引文件播放段序币游平台网页版官方并基于连接速度、局部系统资源 和屏幕维度 客户端设备发现流质量

流出细节见此文章未来Web音视频.

HLS得到普遍支持,并常见流视频到移动设备、平板板块或html5视频玩家多设备支持它 包括媒体播放器 流媒体服务器 OS 搜索 最新版 Android浏览器 Chrome

传统HLS延时比其他流选高30秒延迟2019年底苹果推出HLS低延时模式提供二二分位缓存直播低延时HLS原创需要修改出版社编译和提供视频流的方式,客户端和CDNs提供特殊支持至2020年5月低延时hLS协议的积分

HLS提供以下福利:

  • HLS自适应比特能力确保播音机提供最优用户经验并微量缓冲事件,
  • 玩家可自动适应并适应网络速度变化,当本地连接不稳定时可防止闲置
  • HLS原生支持方式有微软边缘12-18、Safari6+、iOSSafari3.2+、Android浏览器3+、Opera Move 46+和Chrome为Android81+
  • 可以通过HLS兼容视频播放器几乎所有其他客户端设备部署

注意HLS翻转面

  • HLS直播通常延时20至60秒
  • HLS对短表视频作用较小计划提供10秒剪报, 更好地使用累进下载- 技术让你提供视频文件的一小部分, 并下载视频播放时剩余部分

缓冲技巧检验此文章如何实现平滑视频缓冲改善视图经验.

加深理解HLS系统,看看它如何堆积 对其他直播协议下图简单比较HLS和3

实时通信协议(RTMP)又称Flash,由Mcromedia开发于2000年代中期供流音视频使用RTMP目前处于Adobe半开放标准下

此前所有传输网络默认流协议RTMP仍为多家广播机构标准, 因为这是从摄像头或编码器输入视频流的de-facto协议AdobeFlash常用浏览器RTMP游戏,现代浏览器退出Flash支持,RTMP失去关联性

多播音机使用币游国际真人娱乐在线视频平台或主机服务转换视频流为HLS,导致多CDNs退出RTMP支持

微软于2008年推出,微软滑流也用自适应比特率实时流微软设备专有性,MSS使用有限币游国际真人娱乐平台最常用 Xbox One游戏控制台

位率自适应性动图片专家团队自适应流HTTP(MPEG-DASH)是替代协议和首个HTTP国际流程程程程新多亏协议编码不可知性方法, 你几乎可以全局播放视频, 并接受标准MPEG-DASH支持各种格式,包括H.264H.265、VP8/9和AV1

优化MPEG-DASH教程见此文章视频优化第二部分:多相容比特率流.

本节描述如何部署HLS启动前确保实现下列要求:

  • 以HTML页面形式流到浏览器或客户端应用流到移动设备或平板板块
  • 网络服务器或CDN形式主机
  • 工具编码视频源工具必须能够编码视频分片MPEG-4或MPEG-2TS文件,H.264或H.265数据,音频文件辅助替代通信或DolbyAC3

查道格Sillars上的文章HLS适配比特率工作

步骤1:创建HTML页面并嵌入视频.js

快速启动HLS的方法是嵌入视频播放器像Vibe.js币游国际真人娱乐视频.js轻量级播放器响应并整合像YouTube和Vimeo等平台

添加下方代码嵌入视频.js


         
         

步骤2:配置Web服务器

配置网络服务器为视频流服务如前所述,任何正常 web服务器都可实现此目的配置期间,将文件扩展与正确MIME类型连接识别数据

下表显示哪些文件扩展与MIME类型相关

文件扩展 MIME类型
.m3u8 vnd.apple.mpegURL
.ts 视频/MP2T
.mp4/m4s 视频/mp4

几个小技巧

  • 为确保兼容性,如果网络服务器有MIME型约束,.m3u文件带音频/调频.

  • 确定压缩文件优化索引文件往往大并经常重新下载,压缩大相径庭良好做法是在上传前压缩或搭建实时gzi压缩服务器

    索引文件的另一个问题缓存流直播时索引文件常被覆盖为了确保你提供最新版本,通过缩短文件直播时间(TTL)保留索引文件并满足每项请求,以适当缓存最近文件视频点播索引文件不变,以便跳过此步

学习进化网见此文章媒体重程序进步We营救.

步骤3验证流

流媒体前向查看者验证流以确保文件正确和顺畅播放一种方法就是使用媒体流验证器,这是它的一部分苹果HTTP流直播工具箱.

媒体流验证器CLI工具验证本地文件HTTPURL生成诊断报告 发现错误或问题添加文件到流后, 总是运行此工具或相似工具作为保障 。

步骤4:安全提供密钥文件HTTPS

视内容而定,你或愿搭建安全协议流可使用苹果实现飞电流软件开发工具包直接为HTTPS提供文件或为HTTPS提供媒体文件,在这种情况下你必须加密文件可使用苹果文件流分割器工具设置加密选项,包括定期加密密钥修改以将生命周期放入媒体,限制存取时间段

后用初始化向量解密媒体文件和键一样,您可以定期修改初始化向量最优保护,我们建议你每三至四小时修改键盘,每流数据50MB初始化矢量

保护您的密钥不被窃并避免加密努力被浪费,通过HTTPS或另一种安全方法转移密钥这可能是复杂任务,但先测试内部密钥对HTTP那样,如果问题浮出水面,在添加 HTTPS前可以解决

建立HTTPS密钥服务的初步需求如下:

验证HTTPS服务器上签名SSL证书if not,从付费或免费提供商获取并安装有效证书

视证书服务使用而定,或运行证书客户端,如Certbot,或直接安装证书后一选项,确定同时安装中间或叶证书以便用户验证root证书

验证您的密钥文件认证域与您的首选播放列表文件匹配这样的搭建使您能从 HTTP服务器提供播放列表文件 并从HTTP提供其他文件因为没有播放列表文件无法正确播放,您的视频在一定程度上安全化

下一步为观众验证自身设置方法通过构建对话框或系统存储客户端设备证书可实现此目的HLS不提供对话框,所以如果选择此选项,请自己构建对话框

HTTP安全细节见此文章为何不是每个人都使用HTTPS和如何用云处理.

使用HLS创建多视频拷贝或视频表示器,其中每一种都必须符合各种设备分辨率、数据率和视频质量的要求此外,你必须做以下工作:

  1. 添加索引流文件表示式
  2. 创建主文件引用表示式并提供信息和元数据供各种视频版本使用

连一盘视频都用到转向云端自动生成并交付视频原版所有文件,转码为HLS或MPEG-DASH或这两个协议调用流剖面图,该特征可配置自适应流过程可自定义默认配置设置以满足需求等这些设置建立后,云形自动处理所有工作

流动剖面详解见下

币游平台网页版官方其他资源是交互式演示文集、常见问题网页和云社区论坛

最重要的是,试出这个超级特征你自己启动创建免费云式账户.


回顶

特征邮箱

Baidu
map