https://github.com/der3318/m3u8-dlwrapper
.Net Framework 4.7.2 - WPF Application that Downloads HLS using FFmpeg
https://github.com/der3318/m3u8-dlwrapper
automation ffmpeg http-live-streaming windows-presentation-foundation
Last synced: 8 months ago
JSON representation
.Net Framework 4.7.2 - WPF Application that Downloads HLS using FFmpeg
- Host: GitHub
- URL: https://github.com/der3318/m3u8-dlwrapper
- Owner: der3318
- License: lgpl-2.1
- Created: 2022-02-12T10:29:07.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-03-15T10:43:46.000Z (over 2 years ago)
- Last Synced: 2025-01-31T05:25:12.906Z (over 1 year ago)
- Topics: automation, ffmpeg, http-live-streaming, windows-presentation-foundation
- Language: C#
- Homepage:
- Size: 32.3 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## 📹 HLS Download Wrapper


[](https://github.com/FFmpeg/FFmpeg/commit/f68ab9de4e)
[](https://www.iconfinder.com)


WPF interface bridging the m3u8 stream download utility of [FFmpeg](https://github.com/FFmpeg/FFmpeg).

### 💡 How This Works
Visit [m3u8-dlwrapper.zip](https://github.com/der3318/m3u8-dlwrapper/releases/download/v1.1.0.0/m3u8-dlwrapper.zip) for the built binaries, or build the WPF project using Visual Studio on your own. Unzip and run `m3u8-dlwrapper.exe` on a Windows x64 machine. Enter the clip info to start downloading a .m3u8 stream.
These are what the tool actually does in the backend:
| Option | FFmpeg Command |
| :- | :- |
| 2x checked | ffmpeg.exe -user_agent "{UserAgent}" -headers "{Cookie}" -i {M3U8Link} -filter_complex "[0:v]setpts=PTS/2[v];[0:a]atempo=2[a]" -map "[v]" -map "[a]" -bsf:a aac_adtstoasc {SaveAs.mp4}
| 2x unchecked | ffmpeg.exe -user_agent "{UserAgent}" -headers "{Cookie}" -i {M3U8Link} -c copy -bsf:a aac_adtstoasc {SaveAs.mp4} |
All the STDOUT and STDERR (100 latest lines) of `ffmpeg.exe` wil be redirect and kept in the text area.
### 🖇️ How to Use - HLS (.m3u8) Link Retrieval
Chromium's DevTools panel (F12) is very useful. HLS links can be easily captured under "Network" tab when using ".m3u8" as the filter. Noted that this no longer works for Youtube and Bilibili, but it's still worth trying on some other video sites.

### 🌐 How to Use - User Agent
Sometimes your request to a HLS link might be rejected due to incorrect user agent. Override the browser agent to your own with help of the online query: https://www.whatismybrowser.com/detect/what-is-my-user-agent

### 🍪 How to Use - Cookie
For those sites requiring sign-in and memberships to view videos, cookies play an important role. You might need to duplicate some cookies in order to make the tool works. Take a look at what are being used by clicking at the begining of the URL field:
