Flyleaf FFmpeg Generator & Bindings for C#/.NET

August 27, 2025 · View on GitHub


[Overview]

Flyleaf.FFmpeg.Generator Generates FFmpeg C#/.NET bindings by using CppSharp
It is based on FFmpeg.AutoGen and Sdcb.FFmpeg (mainly for macro support).

The main purpose is to support Flyleaf Suite projects and possible access to even FFmpeg's private (instead of public only) API.

[Features]

Resolves type size issues for different operating systems
Reduces package size
Creates enums (w/o flags) from macros
Maps variables/parameters to enums
Customizes names for variables/parameters/functions/delegates/structs/enums
Impoves performance with DllImport and avoids marshaling in some cases
Plans to access private structs to extend the functionality (eg. HLS live seeking, Develop custom demuxer/muxers/codecs/filters etc.)

[Requirements]

Windows 10 SDK is required (for CppSharp) to successfully compile the bindings and can be install from Visual Studio Installer.

Otherwise, it will fail with the following error:

fatal: 'errno.h' file not found

[Releases]

Flyleaf.FFmpeg.Bindings NuGet package (major/minor versioning is based on FFmpeg releases versioning)

For more advanced/extended functionality check Flyleaf.FFmpeg