2016-12-06 32 views
0

Я пытаюсь получить выход m3u8 md5 с FFmpegFFmpeg получить md5 от местного m3u8

ffmpeg -y -map 0 -an -sn -f md5 - -i index.m3u8

но получаю сообщение об ошибке

[https @ 0x556ad6947520] Protocol not on whitelist 'file,crypto'! index.m3u8: Invalid argument

Я попытался добавить аргумент (документально here)

-protocol_whitelist file,http,https,tcp,tls

Но я все равно получаю тот же результат, если я использую сеть m3u8 (http), все работает так, как ожидалось.

$ /usr/bin/ffmpeg -protocol_whitelist file,http,https,tcp,tls -y -map 0:0 -an -sn -f md5 - -i index.m3u8 
ffmpeg version 3.2.1 Copyright (c) 2000-2016 the FFmpeg developers 
built with gcc 5.3.0 (Alpine 5.3.0) 
configuration: --prefix=/usr/local --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --bindir=/usr/local/bin --disable-doc -- disable-static --enable-shared --disable-ffplay --extra-libs=-ldl --enable-version3 --enable-libfdk_aac --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-gpl --enable-avresample --enable-postproc --enable-nonfree --disable-debug --enable-small --enable-openssl 
libavutil  55. 34.100/55. 34.100 
libavcodec  57. 64.101/57. 64.101 
libavformat 57. 56.100/57. 56.100 
libavdevice 57. 1.100/57. 1.100 
libavfilter  6. 65.100/6. 65.100 
libavresample 3. 1. 0/3. 1. 0 
libswscale  4. 2.100/4. 2.100 
libswresample 2. 3.100/2. 3.100 
libpostproc 54. 1.100/54. 1.100 
[https @ 0x5589b5d435a0] Protocol not on whitelist 'file,crypto'! 
index.m3u8: Invalid argument 
+0

Является ли ваш ffmpeg скомпилированным с помощью openssl или gnutls? – Mulvya

+0

@Mulvya --enable-openssl, почему? это как-то влияет на md5? –

+0

Он необходим для ввода https. Покажите весь вывод команды и консоли. – Mulvya

ответ

0

Аргументы в порядке, они просто должны быть в правильном порядке:

ffmpeg -y -protocol_whitelist file,http,https,tcp,tls -i index.m3u8 -map 0 -an -sn -f md5 - 

как описано в руководстве и помощи:

ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... 

варианты, прежде чем обратиться к -i это ввод. Опции после ввода, но до того, как на выход будет выведено имя или труба вывода