2

我尝试使用 AES-128 加密 HLS 流。但是,当我尝试将此加密 hls 流发送到 Android 设备时,流无法播放,但在 IOS 和 Smarttv 上我的流工作正常。当我调试 Android 设备时,我发现 Android 检查 AES 密钥是 17 个八位字节,而规范告诉我们 aes 密钥必须是 16 个八位字节。我最后添加了 1 个八位字节,例如 0x00000000,但解密后它说这个文件不是 MPEG-TS。

我怎么能处理它?也许有人对android hls加密流有所了解。

4

1 回答 1

1

如果媒体文件碰巧使用 IIS 转换管理器进行分段,您可以尝试用零填充 IV 字段,使它们的长度为 32 个字符(128 位)。

我可以让 hls 视频在具有较短 IV 字段的 IOS 上播放,但如果没有填充,视频将无法在 Android(使用 MediaPlayer)上播放。

于 2013-08-15T21:32:47.663 回答