Flyleaf

SuRGeoNixLGPL-3.0活跃维护

基于 FFmpeg 和 DirectX 的 .NET 媒体播放库,帮 WinUI 3、WPF、WinForms 开发者快速集成视频播放、HLS/RTSP 流和种子播放能力。

Media Player .NET Library for WinUI 3/ WPF/WinForms (based on FFmpeg/DirectX)

v3.11.17发布于 2026-11-09 09:55 UTC924star +1 / 7 天133fork同步于 2026-11-10 11:52 UTC

怎么上手

README 里没有找到可直接复制的安装命令

README 里没有找到可直接复制的安装命令,请到 README 或官方文档查看安装方式。

硬件要求

README 没有说明硬件要求。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

这个项目的说明还在生成中,先参考下面「最近发版」和 README。

最近发版

5 个版本v3.11.17
  1. v3.11.17Flyleaf v3.11.17最新正式版2026-11-09 · 2026-11-09 09:55 UTC

    Changelog

    • Core: Fix playback deadlocks, race conditions and decoder lifecycle synchronization
    • FlyleafHost.Wpf: Fixes a DPI issue

    Deadlock & Race Condition Fixes

    • Fixed several deadlocks and race conditions affecting playback, seeking, stream switching, and decoder lifecycle.
    • Fixed audio decoder lock leaks caused by early exits during decoding and filter processing.
    • Improved decoder/demuxer thread synchronization during Start, Stop, Pause, and restart operations.
    • Fixed concurrent Play/Pause/Seek races, including duplicate playback workers and interrupted initialization.
    • Resolved lock-order inversions between decoder opening, seeking, and codec reopening.
    • Improved seek handling by ensuring decoders are properly paused before seeking and restarted when required.
    • Improved FFmpeg context lifetime safety by synchronizing decoder and demuxer disposal.
    • Fixed a native crash caused by video stream switching overlapping paused-seek frame extraction (GetVideoFrame()).
    • Improved stability when handling network streams, torrents, rapid seeking, and stream switching.

    FlyleafPlayer Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback

    Plugins

    • OpenSubtitlesOrg
    • SubtitlesConverter
    • TorrentBitSwarm
    • YTDLP

    FFmpeg v9.0 (0056dd3)

    • Patched for .NET issue
    • Minimal Flyleaf requirements (Windows only, No Encoders etc.)
  2. v3.11.16Flyleaf v3.11.162026-11-07 · 2026-11-07 09:50 UTC
    查看更新说明

    Changelog

    • Renderer.HDR.Dovi: Misc validations for L1/L3
    • Demuxer: Seperates underlying options with query params
    • DecoderContext: Improves HTTP Options handling
    • FlyleafME: Fixes an issue with popup menu not adjusting the size properly based on items
    • Solution: Moves YoutubeDL to the dedicated Flyleaf.Plugins.YTDLP repository
    • Samples.FlyleafPlayer: Replaces Download-YTDLP.bat with automatic YTDLP plugin installation and updates
    • Plugins.YTDLP: New implementation (more here)

    Breaking Changes

    • Config.DefaultHTTPQueryToUnderlying defaults to false and now its not affected by FormatOptToUnderlying

    FlyleafPlayer Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback

    Plugins

    • OpenSubtitlesOrg
    • SubtitlesConverter
    • TorrentBitSwarm
    • YTDLP

    FFmpeg v9.0 (0056dd3)

    • Patched for .NET issue
    • Minimal Flyleaf requirements (Windows only, No Encoders etc.)
  3. v3.11.15Flyleaf v3.11.152026-11-02 · 2026-11-02 16:03 UTC
    查看更新说明

    Changelog

    • Renderer.HDR.Dovi: Adds Dolby Vision Profile 7 FEL reconstruction
    • Renderer.HDR.Dovi: Adds Dolby Vision CM 4.x support with L1/L3 luminance metadata and L8 primary/secondary trims (lift, gamma, gain, saturation, chroma, mid-contrast, highlight clipping, hue and tone detail)
    • Renderer.HDR.Dovi: Adds L5 active-area support to preserve black bars from trims and exclude inactive regions from HDRDetect
    • Renderer.HDR.Dovi: Improves metadata caching, per-frame trim handling and render-time target selection for dynamic display changes
    • Renderer.HDR.Dovi: Improves L2/L8 tone-detail normalization and handling
    • Renderer.HDR.Dovi: Fixes RPU reconstruction with duplicate reshaping pivots
    • Renderer.HDR: Fixes tone mapping input clamping to source metadata luminance

    FlyleafPlayer Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback

    Plugins

    • OpenSubtitlesOrg
    • SubtitlesConverter
    • TorrentBitSwarm
    • YoutubeDL

    FFmpeg v9.0 (0056dd3)

    • Patched for .NET issue
    • Minimal Flyleaf requirements (Windows only, No Encoders etc.)
  4. v3.11.14Flyleaf v3.11.142026-10-30 · 2026-10-30 10:44 UTC
    查看更新说明

    Changelog

    • Renderer.HDR: Improve tone mapping with LMS cone-channel processing
    • Renderer.HDR: Replaces polynomial PQSpline with hyperbolic segments to prevent overshoot and highlight clipping
    • Renderer.HDR: Extends HDRDetect with maxRGB scene average for more accurate tone-mapping adaptation
    • Renderer.HDR.Dovi: Adds L2 (CM 2.9) trims support (slope, offset, power, saturation, chroma weight, MS weight)
    • Controls.WPF.PlayerDebug: Fixes an issue with Video Processor was not visible
    • FlyleafPlayer.Sample: Introduces Download-YTDLP.bat for explicitly download/update yt-dlp.exe and deno.exe
    • FlyleafPlayer.Sample: Removes custom FFmpeg HTTP options (multiple_requests/request_size), as YouTube throttling appears to be resolved by enabling Deno/EJS support

    Breaking Changes

    • Config.Demuxer: Increases default timeouts for read, seek, and close operations

    FlyleafPlayer Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback

    Plugins

    • OpenSubtitlesOrg
    • SubtitlesConverter
    • TorrentBitSwarm
    • YoutubeDL

    FFmpeg v9.0 (0056dd3)

    • Patched for .NET issue
    • Minimal Flyleaf requirements (Windows only, No Encoders etc.)
  5. v3.11.13Flyleaf v3.11.132026-10-21 · 2026-10-21 09:54 UTC
    查看更新说明

    Changelog

    • Renderer.HDR.Dovi: Adds and prefers L1/L3 luminance per-frame metadata when available for PQSpline instead of HDRDetect
    • Controls.Wpf.PlayerDebug: Introduces I/O Dynamic Range for new HDR implementation
    • Samples.FlyleafPlayer: Fixes issues with HTTP disconnects and throttling
    • FlyleafME: Updates MaterialDesignThemes

    Breaking Changes

    • Config.Demuxer: Reduces BufferDuration from 30 sec to 3 sec (avoids large memory by default)
    • Player.Video: Deprecates HDRFormat
    • ColorSpace Enum: Few renames (uppercases)

    FlyleafPlayer Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback

    Plugins

    • OpenSubtitlesOrg
    • SubtitlesConverter
    • TorrentBitSwarm
    • YoutubeDL

    FFmpeg v9.0 (0056dd3)

    • Patched for .NET issue
    • Minimal Flyleaf requirements (Windows only, No Encoders etc.)

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    lyleaf v3.11: Media Player .NET Library

    alt text


    Notes

    1. FlyleafLib's releases will be on NuGet
    2. Compiled samples will be on GitHub releases
    3. Documentation will be on Wiki and Samples within the solution

    [Overview]

    ✅ Play Everything (Audio, Videos, Images, Playlists over any Protocol)

    • Extends FFmpeg's supported protocols and formats with additional plugins (YoutubeDL, TorrentBitSwarm)
    • Accepts Custom I/O Streams and Plugins to handle non-standard protocols / formats

    ✅ Play it Smoothly (Even with high resolutions 8K / HDR)

    • Coded from scratch to gain the best possible performance with FFmpeg & DirectX using video acceleration and custom pixel shaders
    • Threading implementation with efficient cancellation which allows fast open, play, pause, stop, seek and stream switching

    ✅ Develop it Easy

    • Provides a DPI aware, hardware accelerated Direct3D Surface (FlyleafHost) which can be hosted as normal control to your application and easily develop above it your own transparent overlay content
    • All the implementation uses UI notifications (PropertyChanged / ObservableCollection etc.) so you can use it as a ViewModel directly
    • For WPF provides a Control (FlyleafME) with all the basic UI sub-controls (Bar, Settings, Popup menu) and can be customized with style / control template overrides

    [Features]

    FFmpeg

    • HLS Live Seeking Might the 1st FFmpeg player which does that
    • Pached for .NET issues Use recommended FFmpeg libraries which can be found on GitHub releases
    • Capture Devices Pass the format, input and options with a single Url eg. fmt://gdigrab?desktop&framerate=30
    • Supports FFmpeg v9.0 (use updated Flyleaf.FFmpeg.ABI at your project if required)

    Playback

    • Open / Play / Pause / Stop
    • Speed / Reverse / Zero-Low Latency
    • Seek Backward / Forward (Short / Medium / Large Step)
    • Seek to Time / Seek to Frame / Seek to Chapter / Frame Stepping

    Video

    • Enable / Disable
    • Device Preference
    • Aspect Ratio (Keep / Fill / Custom)
    • Deinterlace (D3D11VP only - Supports double rate)
    • Advanced HDR10 / HDR10+ / HLG / Dolby Vision (FlyleafVP only - All Dovi Profiles including L1/L3, L2/L8 trims, 7 FEL)
    • Embedded ICC Profiles (FlyleafVP only)
    • Pan Move / Zoom / Rotate / HFlip-VFlip / Cropping
    • Record / Snapshot
    • Super Resolution (D3D11VP only - Nvidia / Intel)
    • 360° Panoramic (FlyleafVP only)
    • Video Acceleration
    • Video Filters (Brightness / Contrast / Hue / Saturation)
    • Video Processors (FlyleafVP / D3D11VP / SwsScale)
    • VSync
    • Zero-Copy (Crops with vertex shader)
    • Split-Frame / Alpha Packing (FlyleafVP only - Special technique to support alpha with hardware acceleration)

    Audio

    • Enable / Disable
    • Device Preference
    • Add / Remove Delay (Short / Large Step)
    • Volume (Up / Down / Mute)
    • Native Audio Formats (Sample Formats / Sample Rates / Channel Layouts)
    • Languages support System's default languages as priorities for audio streams

    Subtitles

    • Enable / Disable
    • Add / Remove Delay (Short / Large Step)
    • Bitmap Subtitles support
    • Advanced Character Detection and Convert to UTF-8 SubtitlesConverter plugin
    • Languages support System's default languages as priorities for subtitles streams

    UI Control (FlyleafHost) WPF / WinUI & WinForms (Partially)

    • Attach / Detach
    • Activity / Idle Mode
    • Drag Move (Self / Owner)
    • Drag & Drop Swap
    • Drag & Drop Open
    • Full / Normal Screen
    • Resize / Resize & Keep Ratio
    • Z-Order

    UI Control (FlyleafME) WPF Only

    • Flyleaf Bar Control / Slider
    • Flyleaf Popup Menu
    • Flyleaf Settings Dialog
    • Color Themes Based on Material Design in XAML
    • Style / Control Template Customization

    Plugins

    • OpenSubtitlesOrg Search & Download for online Subtitles
    • SubtitlesConverter Detect & Convert the input's charset to UTF-8
    • TorrentBitSwarm Play a media from torrent without the need to download it completely
    • YTDLP Play web media that are not accessible directly with HTTP(s)

    Misc.

    • Mouse & Key Bindings All the implementation supports customizable mouse & key bindings which can be assigned to an embedded or a custom actions (find defaults here)
    • Audio Player Can be used as an audio player only without the need of UI Control
    • Downloader / Remuxer The library can be used also for downloading & remuxing
    • Extractor The library can be used also for extracting video frames (supports also by X frames Step)

    [Thanks to]

    Flyleaf wouldn't exist without them!