流媒体和 IPTV
互联网上的直播电视借用了三个不同地方的词汇——广播、网络和一个意外成为标准的特定面板软件。这些是出现的词。
-
HLS
HTTP Live Streaming -
Apple 的流媒体协议,几乎所有东西都使用该协议。视频被切成文本播放列表中列出的短片段,播放器通过普通 HTTP 按顺序获取它们。
HLS 获胜是因为它不需要特殊的服务器:片段是文件,播放列表是文件,任何 Web 服务器都可以提供这两者。 Apple 平台上的所有地方以及几乎所有其他地方都原生支持它。
它的设计带来了人们经常遇到的一个后果——没有单一的视频文件可供保存。你所看到的只是一千个片段和一组获取它们的指令。
-
显现
playlist, .m3u8 -
列出流的组成部分的文本文件。主清单列出了可用的质量级别;每个点都位于列出实际片段的媒体清单上。
打开其中有几十行:标题、一些参数和地址。你所看到的一切都在别处。对于直播,播放器每隔几秒重新获取该文件,因为它会随着广播的继续而增长。
清单地址通常是经过签名且有时间限制的,这就是为什么今天早上有效的链接到下午经常会指向任何内容的原因。
-
部分
chunk -
流的一小段(通常为两到十秒)作为其自己的文件传送。一小时的视频有数百到数千个。
分段使得在播放过程中切换质量成为可能:播放器只需从不同的质量级别请求下一个片段,并且更改发生在边界而不是中断。
这也是使下载流成为重建而不是副本的原因。必须提取每个段,然后将其写入具有适当索引的单个容器中 - 该步骤为结果提供了一个有效的滑动条。
-
自适应比特率
ABR -
以不同的质量级别提供相同的内容,并让玩家随着连接的变化而在这些级别之间移动。这就是为什么流的清晰度会降低而不是停止。
玩家衡量分段到达的速度,并选择它认为可以维持的最高质量。当连接拉紧时,通常在缓冲器耗尽之前,它会下降。
这是观看流媒体和下载文件之间最大的区别。下载想要最好的版本,就会等待;流宁愿看起来更柔和而不是暂停。
-
缓冲
-
播放器会在您正在观看的内容之前播放几秒钟的视频,因此短暂的网络中断不会成为暂停。当您看到这个词时,缓冲区已用完。
更大的缓冲区可以克服更多的干扰,但代价是启动时间更长并且对频道变化的反应更慢。直播流故意保持较小的规模,这就是为什么它们比点播视频更脆弱的原因。
当 IPTV 频道出现卡顿时,原因几乎总是在提供商和您之间——他们的服务器、路由、您的连接。同一设备上的同一个应用程序播放相同比特率的本地文件不会出现闪烁,这是区分两者的最快方法。
-
网络电视
-
电视通过互联网而不是通过广播、有线或卫星传送。作为一个词,它描述了一种交付方法,但没有说明谁有权交付什么。
订阅实际上由一个列表(M3U 播放列表或面板上的账户)组成,该列表命名频道并给出每个频道的地址。播放器将其变成频道指南;它既不承载也不提供任何东西。
这在法律上和技术上都是重要的部分。播放 IPTV 的应用程序不提供任何频道,而特定提供商是否有权携带其所携带的内容则是该提供商的问题。
-
M3U 播放列表
-
频道名称和流地址的纯文本列表,以及 IPTV 订阅最常见的交付方式。它根本不包含任何视频。
每个条目都是一行命名通道(带有徽标、组和按约定附加的标识符)以及一行给出其地址。这些约定都没有标准化,因此每个提供商的编写方式都略有不同。
提供商列表的增长远远超出了其格式的预期:数十万个频道和数百兆字节的文本现在很常见,在解析之前将其读入内存的应用程序将在完成之前被 iOS 杀死。
-
Xtream 代码
-
其API成为事实上的标准的面板软件。您获得的不是播放列表文件,而是服务器地址、用户名和密码,应用程序会向面板询问频道、电影、剧集和指南。
其背后的公司已于2019年关闭; API 比它更长寿,因为成千上万的提供商已经在它的基础上进行了构建,并且他们的客户也期望它。描述为“Xtream 兼容”的软件正在实现该接口,而不是使用该公司的产品。
它与普通播放列表有两个有用的区别:目录作为结构化数据而不是平面列表到达,并且面板强制执行连接限制 - 这就是为什么同时下载和直播频道可能会互相干扰的原因。
-
电子节目指南
electronic programme guide -
时间表:每个频道现在播放什么、接下来播放什么以及之前播放什么。与频道本身分开传送,通常作为 XMLTV 文件。
该指南通过提供商在每个频道上添加的标识符与频道进行匹配。当这些标识符丢失或不一致时(这种情况很常见),即使指南数据存在且正确,频道也不会显示节目信息。
对于大型提供商来说,完整的指南本身就是一个很大的下载量,涵盖了数千个频道的数天时间表。
-
追赶
timeshift, archive -
通过询问提供商的服务器过去在某个频道上的时间来观看已经广播的内容。它只存在于提供者记录的地方;您的设备上没有存储任何内容。
在提供的情况下,应用程序可以将指南中过去的节目转换为对该频道的该窗口的请求。典型的档案会运行几天。
这完全是提供商的能力。应用程序无法向没有任何频道的频道添加补播内容,上周的指南条目也不能证明该录音存在。