Я использую ffmpeg -i fighter.mp4 -hls_time 10 stream.m3u8
для упаковки файла m3u8. Но в файле m3u8 нет #EXT-X-KEY
. Что нужно сделать, чтобы добавить ключ в плейлист HLS?Как использовать ffmpeg для шифрования AES-128 HLS m3u8 плейлист?
2
A
ответ
3
Чтобы использовать функцию шифрования сегментов HLS FFmpeg, проверьте 22.7.1 с the documentation.
Вы можете передать опцию hls_key_info_file
, указав файл, содержащий ключевую информацию. Файл может выглядеть следующим образом:
http://server/file.key
/path/to/file.key
первой строке этого файла указывается в URI для ключа, который записывается в список воспроизведения ЗОЖ. Вторая строка файла указывает на файл ключа (может быть локальным или http), на который будет зашифрован носитель.
Так, добавляя что-то вроде этого в вашей команде FFmpeg должно работать:
ffmpeg -i fighter.mp4 -hls_time 10 -hls_key_info_file file.keyinfo stream.m3u8
Я использую FFmpeg на Mac OS X, установите его варку. После запуска команды появляется следующее сообщение: Unrecognized option «hls_key_info_file». Как решить? – jason
Пожалуйста, предоставьте полную команду FFmpeg, и, кроме того, запустите 'ffmpeg -version' и скажите, какую версию программного обеспечения вы используете на своем Mac. FFmpeg добавила поддержку опции '-hls_key_info_file' в декабре 2014 года, поэтому для выполнения этой работы вам понадобится последняя версия FFmpeg. – AndrewUnmuted