Why does ffmpeg ignore protocol_whitelist flag when converting https m3u8 stream? : <p>I am attempting to download and convert an m3u8 stream to mp4 using ffmpeg. The command I first tried was</p>

<pre><code>ffmpeg -i MIE.m3u8 -c copy -bsf:a aac_adtstoasc -safe 0 -protocol_whitelist file,http,https,tcp,tls,crypto MIE.mp4
</code></pre>

<p><em>(see below for contents of <code>MIE.m3u8</code>)</em></p>

<p>This failed immediately with error</p>

<pre><code>[https @ 0x7fb419607d40] Protocol 'https' not on whitelist 'file,crypto'!
MIE.m3u8: Invalid argument
</code></pre>

<p>(Note that the memory address changes each time.)</p>

<p>I discovered the <code>-protocol_whitelist</code> flag and appended <code>-protocol_whitelist file,http,https,tcp,tls,crypto</code> to my command</p>

<pre><code>ffmpeg -i MIE.m3u8 -c copy -bsf:a aac_adtstoasc -safe 0 -protocol_whitelist file,http,https,tcp,tls,crypto MIE.mp4
</code></pre>

<p>but this still resulted in the same error.</p>

<p>Why does <code>ffmpeg</code> appear to ignore the <code>protocol_whitelist</code> flag and parameters?</p>

<hr>

<p><code>MIE.m3u8</code> (which I managed to fetch from the <a href="http://www.nhk.or.jp/eigo/mission/?das_id=D0005140255_00000" rel="noreferrer">website</a> I am trying to scrape video from) looks like this:</p>

<pre><code>#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=508000,RESOLUTION=640x360,CODECS="avc1.77.30, mp4a.40.2"
https://nhk-vh.akamaihd.net/i/das/D0005140/D0005140255_00000_V_000.f4v/index_0_av.m3u8?null=0&amp;id=AgBdrl8GX2UAVyUXA1tF7MYlFTbSF88WtA7oAMDksTsiVdAKPuuREVfi8iXMsOWFp6eQU2sk6dnE9g%3d%3d
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=47000,CODECS="mp4a.40.2"
https://nhk-vh.akamaihd.net/i/das/D0005140/D0005140255_00000_V_000.f4v/index_0_a.m3u8?null=0&amp;id=AgBdrl8GX2UAVyUXA1tF7MYlFTbSF88WtA7oAMDksTsiVdAKPuuREVfi8iXMsOWFp6eQU2sk6dnE9g%3d%3d
</code></pre>
