解密AES-128加密的.m3u8播放列表和与.TS FFMPEG文件

问题描述 投票:1回答:1

我试图解密.m3u8播放列表,我按照这些步骤:

  • 创建一个目录
  • 该密钥复制到密钥文件,即my.key,并将其放置在该目录。请注意,键可以旋转,如果播放列表有多个按键全部复制到不同的文件。
  • 所有.ts段复制到同一目录
  • 复制和编辑playlist.m3u8和只使用文件名(个),钥匙(S)URI(S)和段。

和使用该命令来解密该播放列表

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解密文件
ffmpeg streaming http-live-streaming hls
1个回答
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需要输入要投放一个M3U8通过HTTP。所以,把你M3U8文件和钥匙和所有块上的一些网站目录和使用的URL M3U8所以它会像重新运行ffmpeg的命令:

ffmpeg -i http://mytestwebserver.com/playlist.m3u8 -c copy output.ts

如果您没有访问Web服务器,你可以安装一些本地和免费喜欢MAMP。我不得不使用上述命令时输入的是HLS URL在本地复制一个HLS流没有问题。

© www.soinside.com 2019 - 2024. All rights reserved.