http-live-streaming - 用于无尽流的 hls ext-x-discontinuity-sequence
问题描述
在无穷无尽的 HLS 流中,我不确定如何实现 EXT-X-DISCONTINUITY-SEQUENCE 标记。RFC 规定:
如果服务器从媒体播放列表中删除了一个 EXT-X-DISCONTINUITY 标记,它必须增加 EXT-X-DISCONTINUITY-SEQUENCE 标记的值,以便仍然在媒体播放列表中的片段的不连续序列号保持不变。EXT-X-DISCONTINUITY-SEQUENCE 标签的值不得减少或换行。如果每个媒体段没有一致的不连续序列号,客户端可能会发生故障。
我创建的媒体播放列表始终具有相同数量的片段,并且在添加新片段时会删除旧片段。有时,两个段之间可能存在不连续性,因此我在该段中添加了一个 EXT-X-DISCONTINUITY。然而,一段时间后,当播放列表中不再有不连续性时,我删除了这个标签并应该增加 EXT-X-DISCONTINUITY-SEQUENCE。
由于流是无穷无尽的,它必须在某个时候换行。人们通常如何实现这一点?
解决方案
的值EXT-X-DISCONTINUITY-SEQUENCE
定义为decimal-integer
0 - 2^64 - 1 范围内的数字(参见https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis-09#section -4.2 )
即使您每秒增加EXT-X-DISCONTINUITY-SEQUENCE
很多次(问题暗示您不是),您似乎也极不可能需要处理此值的包装。
考虑到一般情况下可能的范围和相对缓慢的增量,我严重怀疑是否有人担心包装这个值,但我有兴趣被证明是错误的。
推荐阅读
- php - 向 Symfony BaseModel 添加属性
- database-design - 维度数据建模中的注释、注释
- lightbox2 - 使用 Lightbox 2 时出现导航按钮问题
- javascript - 通过条件动态更改 div 中的图像
- python - 如何检查列表中的范围是否相同?
- java - Spring Boot 中的电子邮件
- sql - 将 varchar 转换为日期
- sql - 如何获取用户组的查询
- python - Which is better - execute(INSERT) or executemany(INSERT)
- apache-kafka - kafka:一位经纪人保留打印信息日志:“NOT_LEADER_FOR_PARTITION”