MPEG-TS 诊断
HLS 中的 MPEG-TS 同步字节 0x47 说明
MPEG-TS 包通常以 0x47 同步字节开始,并按固定 188 字节间隔出现。如果首个包前存在额外字节,HLS 播放可能失败。
同步字节的作用
在 MPEG-TS 分片中,每个传输流包为 188 字节。每个包的第一个字节应为 0x47,这让解复用器可以用简单模式识别包边界。
如果首个包前被添加了额外字节,预期的 0x47 模式就不在偏移 0 处。一些解复用器可以恢复,另一些则会报解析或媒体错误。
为什么 HLS 分片会错位
错位可能来自封装错误、自定义分发层,或在传输流数据前添加少量前缀的诊断包装。
修复 loader 可以扫描分片开头,寻找 0x47 以及 188、376 字节后的重复模式,然后为本地播放测试裁掉前缀。
把修复当作诊断,而不是绕过
同步字节修复不会解密内容,不会绕过 CORS、鉴权或许可限制。它只帮助处理一类较窄的、已授权但 MPEG-TS 分片格式异常的问题。
如果生产环境需要修复,应修正打包器或源站管线,让所有客户端都收到正确对齐的媒体数据。