我们将openssl aes-128 encryption
用于Apple的HLS video streaming
上的流媒体。
下面是用于aes-128 encryption
的命令
openssl aes-128-cbc -salt -k <HEXKey> -iv <HEXIV> -in <INFILE> -out <OUTFILE>
以及下面我的Playlist / Index
文件用于hls流式传输。
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:NO
#EXT-X-VERSION:2
#EXT-X-KEY:METHOD=AES-128,URI="http://xxx.xxxx.xxx/key.txt",IV=0x00000000000000000000000000000000
#EXT-X-TARGETDURATION:10
#EXTINF:10,
http://xxx.xxxx.xxx/encry.ts
#EXT-X-ENDLIST
其中,key.txt
包含格式为0x00000000000000000000000000000000
的十六进制键。
但是这不起作用,并且无法在IOS
设备上播放媒体。提供错误,因为This movie could not be played
我不确定,这是什么问题。是encryption method
还是playlist file
请帮助我。我会感激的。
预先感谢
编辑:
我觉得,如果有什么问题,下面提供的一些信息可能会有所帮助。
下面是我用来创建十六进制key
和IV
的命令>
openssl enc -aes-128-cbc -k String@MyKey -P -md sha1
如果有任何问题,请帮助我。
现在我的播放列表文件可以用Media Stream Validator
很好地解析,但是在验证媒体时会出现以下错误。
unable to parse segment due to encryption
请帮助任何人。
我们正在使用openssl aes-128加密在Apple的HLS视频流上使用流媒体。以下是用于aes-128加密的命令openssl aes-128-cbc -salt -k
您的问题实际上与文件'key.txt'有关。 HLS规范说,#EXT-X-KEY标记内的URI属性必须指向一个文件,该文件具有二进制格式的16个八位字节的数组,而不是您提供的十六进制字符串。
嗯,实际的问题是key.txt
文件,我在几个小时之前就找到了。我的key.txt
不应包含hexkey
,而应包含16bytes
键。
您的EXT-X-KEY语法错误:
我有同样的问题,但仅在IOS设备上使用(浏览器,例如chromecast,firefox ...都可以)这是我的播放列表