M3U8 file to MP4 conversion?

Can an M3U8 video file be converted to MP4? I have had no luck finding a file converter that can do this since the M3U8 file is really an Audio playlist with many smaller files in a folder.


You can use ffmpeg to do this.

Here is an example:

ffmpeg -i "http://host/folder/file.m3u8" -bsf:a aac_adtstoasc -c copy file.mp4

M3U is a playlist file as previously mentioned. Use VLC player to open them and then use the wizard (File → Streaming/Transcoding Wizard) to convert/transcode.

If you open the M3U in Notepad you will see the URL of where the file is actually stored.


You can also use youtube-dl to download your video from a m3u8 url, example :

$ youtube-dl --hls-prefer-native "http://host/folder/file.m3u8"
[generic] playlist: Requesting header
[generic] playlist: Downloading m3u8 information
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 275
[download] Destination: file-file.mp4
[download] 100% of 123.19MiB in 01:02
[ffmpeg] Fixing malformed AAC bitstream in "file-file.mp4"

To install/update youtube-dl, you need to type :

$ sudo -H $(which pip3) install -U youtube-dl
[sudo] password for xyztabcd:              
Requirement already up-to-date: youtube-dl in /usr/local/miniconda3/lib/python3.6/site-packages (2019.4.7)

As @Daniel B pointed out, M3U is a playlist format. It is a very small file that contains links to the actual media. M3U8 is the Unicode version of it, which means that it supports links with letters and symbols from any language.

Since it is a plain text file, you can open it with Notepad or other simple text editor and try to copy the links from it, and then download each video manually with your browser.

If it isn't a direct HTTP(S) link to the video, but a streaming technology like RTMP, you may need to download a special program to record it. For example, this is used to save RTMP streams.