Repository: yt-dlp
Issue: downloaded audio only m3u8 format not able to play in some media players
Labels: site-bug,site:youtube,core:post-processor

### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

- [X] I understand that I will be **blocked** if I *intentionally* remove or skip any mandatory\* field

### Checklist

- [X] I'm reporting a bug unrelated to a specific site
- [X] I've verified that I have **updated yt-dlp to nightly or master** ([update instructions](https://github.com/yt-dlp/yt-dlp#update-channels))
- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)
- [X] I've searched [known issues](https://github.com/yt-dlp/yt-dlp/issues/3766) and the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates
- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)

### Provide a description that is worded well enough to be understood

When downloading `m3u8` audio only format, it will not perform any remuxing. Some media players (e.g. VLC) may be not able to play the downloaded audio. 

Use `ffmpeg -i "input.mp4" -c copy "output.mp4"` can help to fix this issue.

### Provide verbose output that clearly demonstrates the problem

- [X] Run **your** yt-dlp command with **-vU** flag added (`yt-dlp -vU <your command line>`)
- [ ] If using API, add `'verbose': True` to `YoutubeDL` params instead
- [X] Copy the WHOLE output (starting with `[debug] Command-line config`) and insert it below

### Complete Verbose Output

```shell
[debug] Command-line config: ['-vU', '--no-progress', '--no-mtime', '--no-playlist', '-f', 'bestaudio[language^=pt]/bestaudio/best', '-o', 'audio-from-ytdlp.%(ext)s', '-4', '--check-formats', '--fragment-retries', 'infinite', '--keep-fragments', '--abort-on-unavailable-fragments', 'https://www.youtube.com/watch?v=YU1NdcQxOOk']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2024.12.23 from yt-dlp/yt-dlp [65cf46cdd] (pip)
[debug] Python 3.10.10 (CPython arm64 64bit) - macOS-14.6.1-arm64-arm-64bit (OpenSSL 3.4.0 22 Oct 2024)
[debug] exe versions: ffmpeg 7.0.2 (setts), ffprobe 7.0.2
[debug] Optional libraries: Cryptodome-3.21.0, brotli-1.1.0, certifi-2024.12.14, mutagen-1.47.0, requests-2.32.3, sqlite3-3.43.2, urllib3-2.2.3, websockets-14.1
[debug] Proxy map: {'http': 'http://127.0.0.1:6152', 'https': 'http://127.0.0.1:6152'}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1837 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: stable@2024.12.23 from yt-dlp/yt-dlp
yt-dlp is up to date (stable@2024.12.23 from yt-dlp/yt-dlp)
[youtube] Extracting URL: https://www.youtube.com/watch?v=YU1NdcQxOOk
[youtube] YU1NdcQxOOk: Downloading webpage
WARNING: [youtube] Unable to download webpage: HTTPSConnectionPool(host='www.youtube.com', port=443): Read timed out. (read timeout=20.0)
[youtube] YU1NdcQxOOk: Downloading ios player API JSON
[youtube] YU1NdcQxOOk: Downloading iframe API JS
WARNING: [youtube] Unable to fetch PO Token for mweb client: Missing required Visitor Data. You may need to pass Visitor Data with --extractor-args "youtube:visitor_data=XXX"
[youtube] YU1NdcQxOOk: Downloading player 03dbdfab
[youtube] YU1NdcQxOOk: Downloading mweb player API JSON
[debug] [youtube] YU1NdcQxOOk: ios client https formats require a PO Token which was not provided. They will be skipped as they may yield HTTP Error 403. You can manually pass a PO Token for this client with --extractor-args "youtube:po_token=ios+XXX. For more information, refer to  https://github.com/yt-dlp/yt-dlp/wiki/Extractors#po-token-guide . To enable these broken formats anyway, pass --extractor-args "youtube:formats=missing_pot"
[debug] Loading youtube-nsig.03dbdfab from cache
[debug] [youtube] Decrypted nsig Eg5OMXEQv8gRk6cIs => kCwT_kSbICno4w
[debug] Loading youtube-nsig.03dbdfab from cache
[debug] [youtube] Decrypted nsig COqpO6-qGaX2_J5Br => X4i-pwnYQTfyyA
[youtube] YU1NdcQxOOk: Downloading m3u8 information
[youtube] YU1NdcQxOOk: Downloading initial data API JSON
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec, channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[info] Testing format 234-1
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 98
[download] Destination: /var/folders/sg/gybg5q9536xfsjp6zj_lth700000gn/T/tmp2yzzgbu8.tmp
[download] 100% of  100.40KiB in 00:00:00 at 102.84KiB/s
[info] YU1NdcQxOOk: Downloading 1 format(s): 234-1
[debug] Invoking hlsnative downloader on "https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1735330973/ei/PbhuZ9SdLtXYsfIP7JHLmAM/ip/23.236.100.77/id/614d4d75c43138e9/itag/234/source/youtube/requiressl/yes/ratebypass/yes/pfa/1/goi/133/sgoap/clen%3D9907761%3Bdur%3D612.147%3Bgir%3Dyes%3Bitag%3D140%3Blmt%3D1734887377767327%3Bxtags%3Dacont%3Doriginal:lang%3Dpt-BR/rqh/1/hls_chunk_host/rr3---sn-n4v7snll.googlevideo.com/xpc/EgVo2aDSNQ%3D%3D/met/1735309373,/mh/qG/mm/31,26/mn/sn-n4v7snll,sn-a5m7lnld/ms/au,onr/mv/m/mvi/3/pl/24/rms/au,au/initcwndbps/3341250/spc/x-caUPo0yLLU1SahbeCc66KUH1KcjkMcm0FXhqIvqVT00_GkfSvUZR0JhV1uIJU/vprv/1/playlist_type/DVR/dover/13/txp/5318224/mt/1735309040/fvip/5/short_key/1/keepalive/yes/fexp/51326932,51335594,51371294/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,pfa,goi,sgoap,rqh,xpc,spc,vprv,playlist_type/sig/AJfQdSswRQIgGZPSpgwYUHiWEx_fg8Ypy1z9IkkaLxuRIY5a_qd2vEsCIQDO_BL2GaPUzxKAGMwktuInFF8WKwk5ED0dgN9nrSL2Jg%3D%3D/lsparams/hls_chunk_host,met,mh,mm,mn,ms,mv,mvi,pl,rms,initcwndbps/lsig/AGluJ3MwRQIgb6r0FOq1IIYQoRsszrxAtqrDTRD1ZIXvjGYJL0hV0S4CIQCNOkeWdrslWRonu34fh8d7feE6LXnqUh8PnDv2U_LQjg%3D%3D/playlist/index.m3u8"
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 98
[download] Destination: audio-from-ytdlp.mp4
[download] Download completed
[debug] ffprobe command line: ffprobe -hide_banner -show_format -show_streams -print_format json file:audio-from-ytdlp.mp4
```