2013-01-09 661 views
0

我有一个m3u8文件的网址,其中有ts文件的列表。所有这些文件都通过AES-128方法加密。随着ts文件m3u8文件也包含密钥的URI。如何解密m3u8文件中给出的ts文件?

首先我想下载ts文件&然后解密他们。解密后我想播放这些文件。

网址,我M3U8文件就像https://my.server.com/myxml/myclips/250/prog_index.m3u8

我M3U8文件看起来像这样。

#EXTM3U 
#EXT-X-TARGETDURATION:10 
#EXT-X-VERSION:2 
#EXT-X-MEDIA-SEQUENCE:0 
#EXTINF:10, 
#EXT-X-KEY:METHOD=AES-128,URI="https://my.server.com/myxml/myclips/keys/250/crypt_480x272_250_0.key",IV=0x8da4a2d80b88785f7931874bf1e0914b 
fileSequence0.ts 
#EXTINF:10, 
fileSequence1.ts 
#EXTINF:10, 
fileSequence2.ts 
#EXTINF:10, 
fileSequence3.ts 
#EXTINF:10, 
fileSequence4.ts 
#EXTINF:10, 
fileSequence5.ts 
#EXTINF:10, 
fileSequence6.ts 
#EXTINF:10, 
fileSequence7.ts 
#EXTINF:10, 
fileSequence8.ts 
#EXTINF:10, 
fileSequence9.ts 
#EXTINF:10, 
fileSequence10.ts 
#EXTINF:10, 
fileSequence11.ts 
#EXTINF:10, 
#EXT-X-KEY:METHOD=AES-128,URI="https://my.server.com/myxml/myclips/keys/250/crypt_480x272_250_1.key",IV=0x8e2d35559338d21f2586e79d6cd5c606 
fileSequence12.ts 
#EXTINF:10, 
fileSequence13.ts 
#EXTINF:10, 
fileSequence14.ts 
#EXTINF:10, 
fileSequence15.ts 
#EXTINF:10, 
fileSequence16.ts 
#EXTINF:10, 
fileSequence17.ts 
#EXTINF:10, 
fileSequence18.ts 
#EXTINF:10, 
fileSequence19.ts 
#EXTINF:2, 
fileSequence20.ts 
#EXT-X-ENDLIST 

我没有得到任何线索我该怎么做,请帮助。

+0

那么,你应该知道它:你还尝试过什么? – rekire

+0

我可以下载所有的ts文件,但由于这些都是加密的,所以我无法播放。 – AB1209

+0

数据似乎用AES-128加密查找CipherInputStream类。 – rekire

回答

1

正如我的评论所述,AES-128解密是由媒体框架自动完成的Android 3.x & 4.x设备。

但是,m3u8中有一个错误。请颠倒#EXTINF和#EXT-X-KEY的顺序。 #EXTINF要求在下一行包含TS URI。

以下报价从HLS draft

EXTINF是描述跟随它通过 标识的URI的媒体文件中的记录标记。每个媒体文件URI必须在前面有一个 EXTINF标签。

+0

但我可以播放相同的m3u8当我将其与Media Framework一起使用,我想要解密和播放ts文件。 – AB1209

相关问题