我正在尝试解密.m3u8
播放列表,我按照以下步骤操作:
my.key
,并将其放在目录中。注意
如果播放列表有多个键复制全部,则可以旋转键
他们对不同的文件。.ts
段复制到同一个目录playlist.m3u8
并仅使用文件名
key(s)URI(s)和segment。并使用此命令解密播放列表
ffmpeg -i playlist.m3u8 -c copy output.ts
但是我收到了这个错误:Invalid data found when processing input
这是我的m3u8:
#EXTM3U
#EXT-X-TARGETDURATION:12
#EXT-X-ALLOW-CACHE:YES
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-KEY:METHOD=AES-128,URI="my.key"
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:6.000,
s-1-v1-a1.ts
#EXTINF:6.000,
s-2-v1-a1.ts
#EXTINF:6.000,
s-3-v1-a1.ts
#EXTINF:12.000,
s-4-v1-a1.ts
#EXTINF:12.000,
s-5-v1-a1.ts
#EXTINF:6.000,
s-6-v1-a1.ts
#EXT-X-ENDLIST
.TS
文件?我希望separtly解密文件答案 0 :(得分:2)
尝试在清单中指定完整的本地路径,因此请将KEY设为:
#EXT-X-KEY:METHOD=AES-128,URI="file://path/to/local/my.key"
和TS块一样:
file://path/to/local/s-6-v1-a1.ts
如果这不起作用,则ffmpeg可能需要通过HTTP提供m3u8的输入。所以把你的m3u8文件和密钥以及所有块放在一些web目录上,然后使用m3u8的URL重新运行你的ffmpeg命令,这样就像:
ffmpeg -i http://mytestwebserver.com/playlist.m3u8 -c copy output.ts
如果您无法访问网络服务器,则可以安装一些本地和免费的MAMP。当输入是HLS URL时,使用上面的命令在本地复制HLS流没有问题。