yt-dlp / FFmpeg-Builds

FFmpeg Builds for yt-dlp
MIT License
707 stars 58 forks source link
ffmpeg-builds yt-dlp

FFmpeg Static Auto-Builds

This repository provides static Windows (x86 and x86_64) and Linux (x86_64, arm64) Builds of FFmpeg master and latest release branch with some patches necessary for smooth integration with yt-dlp

Note: The builds provided are only meant to be used with yt-dlp and any unrelated issues/patches will be rejected

Downloads

Linux x64 GPL master Linux ARM64 GPL master Windows x64 GPL master Windows x86 GPL master Windows ARM64 GPL master Other variants Other versions


Patches Welcome

Known issues for which patches are welcome:

1. More Builds

There are currently no MacOS builds. If you know how to add them to the workflow, make a PR

2. Removing a segment before the first subtitle

yt-dlp#2753, FFmpeg#9646

Patches Applied

These patches have been applied to the builds:

1. Decoding non-standard HEVC in FLV containers

HEVC inside FLV has been standardized by @Veovera, implemented by @T-bagwell and merged to FFmpeg master in aa83654 and ac5cc66.

Chinese sites seem to continue using an old non-standard way to deliver HEVC in FLV containers. These builds of FFmpeg support the decoding of such files.

Releases older than 6.1 also supported the encoding of such non-standard files. The implementation was assembled from patches by @xiaoxial, @runner365, and Matthieu Patou. See this comment for details.

Fixes yt-dlp#5874, FFmpeg#6389.

Historical Patches

Patches that were used in the past but are no longer needed as of 7.0:

1. Fix AAC HLS streams being truncated mid stream

by @shirt and @jeeb, merged in c205778. Fixes yt-dlp#618, yt-dlp#998, yt-dlp#1039, FFmpeg#9433

2. Fix for YouTube's VP9 encodes with non-monotonous DTS

by @danny-wu, merged in 68595b4 Fixes yt-dlp#871, youtube-dl#28042, FFmpeg#9086

3. Long path support for Windows

by @nihil-admirari. Fixes yt-dlp#1995, yt-dlp#1273, FFmpeg#8885.

This patch has been substantially reworked by FFmpeg devs @softworkz and @mstorsjo, and merged in a series of commits: 3fb9244 4cdc14a 6076dbc f579a1d 6b32ad5 c5aba39 bc8f1bb 5d5a014 3b3c567 fee765c cc5844d dfa062e 13350e8 c381f54 69364a0

4. Chapter embedding regression

by @bashonly. Fixes FFmpeg#10482

Fixed upstream by @mkver; merged in 02064ba.

5. WebVTT decoding fix

by @tpikonen. Fixes yt-dlp#4127, FFmpeg#8684

Fixed upstream by @ztion; merged in 51d303e.

2. Use the correct Vulkan NULL type

by @nihil-admirari. Makes it possible to build the current master for Win32 targets.

Fixed upstream by @ceyusa; merged in 2bcc124.

Credits


PS: The commits are unsigned because of the periodic automatic rebase