大多数浏览器和
Developer App 均支持流媒体播放。
-
针对隔空播放 2 视频的 HLS 创作
通过隔空播放 2 视频功能,您可以将 Apple 设备上的视频分享到常见的智能电视。了解顺畅地将高质量视频传输到这些电视机的特别注意事项,以及如何利用验证工具来确保您的内容已准备好在黄金时段播放。
资源
- HTTP Live Streaming
- HTTP Live Streaming - Overview
- HTTP Live Streaming (HLS) authoring specification for Apple devices
- HTTP Live Streaming Tools
- Integrating AirPlay for Long-Form Video Apps
- 演示幻灯片 (PDF)
相关视频
WWDC19
-
下载
你们好 我是Eryk Vershen 我是HLS Streaming 团队的一名工程师 我们来聊一下 AirPlay 2 Video的HLS Authoring
自从我们在iOS上 引入隔空播放功能以来 用户们都喜欢在Apple TV 使用隔空播放视频 今年年初 我们大幅度地提升了在TV 直接使用隔空播放功能的支持
Apple TV和AirPlay capable TV 都能回放高质量的视频 你可能记得我们有 一些特殊的要求 关于投影到tvOS和 Apple TV的内容 AirPlay capable TV 是一类新的设备 所以这类设备有属于 它们自己的要求标准
接下来会有一个简单议程 我会说明新的要求标准 以及我们对验证工具 做出的修改 来帮您排查问题
我们最近发布了 一个新的HLS编写规范 关于对AirPlay 2 额外的要求标准
这是一个简练的列表 您无需现在就全部 了解整个清单 我将在一个演示文档中 详细说明每一条改动 我们来看一下细节
你需要同步 不同的视频类型 这能让转换容易点 如果彩色方块在时间线上 代表不同的视频类型 我们要做的是 将它们排列整齐 推荐你使用 毫秒级精度以上的标准 以及你的视频片段应该以 IDR帧来开始
你也要避免 不连续的变化 比如 不要在 HEVC和H.264以及 AAC和Dolby Digital 之间切换 因为这些格式不能在iOS 和Apple TV无缝转换 你可以小心地调整帧率 不要在 每秒25帧和30帧之间转换
如果你要每个编解码器都能 很好地支持每种格式 而这些视频格式使用的 一直是最开始的编解码器 所以 特别是 不要只在低分辨率视频 中使用H.264 在高分辨率视频中只使用HEVC 虽然在其他设备上起作用 但这里不行 你应该使用 I-frame方差 它们让快进 倒带 查询更有效率 因为此类设备 不太会切换编解码器 你需要使用一系列I-frame方差 来适配一般视频的编解码器
下面是关于编码的要求 并不只针对AirPlay 2 但我们要了解这些要求
一般的加密标准 推荐使用10%部分加密 我们需要使用FairPlay 其他的编码可能无法工作
对于样本加密 有两种方法 CMAF使用了一个senc box ISO则基于媒体格式 使用一对saio box和saiz box 我们推荐第二种方式 但你可以使用两者
最后 我们讲下其他要求 如果你要使用HDR内容 最好的方式是 提供多种格式类型 比如Dolby Vision和HDR 10 因为TV可能只支持 其中一种格式
使用WebVTT添加字幕 所有网络内容 我们都推荐 都使用MIME格式 下面我们来讲下具体 细节
我们使用MIME格式 发送HLS播放列表很长时间了 关于视频和音频的 MIME格式推荐 可能是你想要了解的 请留意 对于WebVTT 我们使用text/plain 尽管WebVTT文档 推荐text/VTT格式 然而text VTT格式 并不是由IANA注册 也可能不被一些客户端兼容 所以要使用text/plain格式
下面是 一些不太常用的MIME类型清单 清单的最后两个 不被AirPlay 2兼容 在这里列出 是因为我们推荐MIME格式 包括所有网站内容 而不仅仅是AirPlay 2
现在我们来看看 如何检测你的流媒体
我们记得有两个 工具来验证HLS 这些工具各有所长 Mediastreamvalidator 的特色是检测HLS是否符合标准 HLSreport则是 检测是否符合编写规范标准 你应该要始终使用这两个工具 我建议你写个脚本 使用这两个工具一并测试
至于HLSreport 我们做了重要的修改 以前你需要使用“-os”选项 测试多次 如果你想要检查iOS和tvOS 的规则的话 现在 默认情况下 它可以检测所有的规则 包括AirPlay 2的规则 设置选项的规则 来修改你的检测的测试 但通常你们不必使用它 当OS选项还在工作时 你需要停止使用它
我们来看下HLSreport 变化后的输出
请留意标题栏 所有的规则标准都被检测过了
一部分规则现在则被 分类到各个规则集 我们有通用的要求说明 每个规则集有Must Fix 和Should Fix 两个分项
在输出的最底部 有iOS要求说明
请留意规则10 上面的最后一则通规 被标记为Should Fix 然而在AirPlay 2 相同的规则是Must Fix
如果某个部分或 子部分没有违规 该部分或 子部分会被放过 比如 针对AirPlay 2 这个流媒体没有Should Fix
最需要留意的是 针对AirPlay 2的设备 我们添加了新的需求说明 记得使用HLSreport 这样你就可以 检测是否符合编写规范标准 HLSreport现在 可以检测默认设置中的所有规则
以上就是演讲507的所有内容 如你想要了解更多信息 你可通过链接 查看编写规范 以及工具 和HLS的其他信息 感谢聆听 祝你接下来的会议行程愉快
-
-
正在查找特定内容?在上方输入一个主题,就能直接跳转到相应的精彩内容。
提交你查询的内容时出现错误。请检查互联网连接,然后再试一次。