| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| Flyleaf_v3.10.7z | 2025-12-04 | 57.9 MB | |
| Flyleaf v3.10 (AIO x64 .NET10 _ FFmpeg v8) source code.tar.gz | 2025-12-04 | 60.8 MB | |
| Flyleaf v3.10 (AIO x64 .NET10 _ FFmpeg v8) source code.zip | 2025-12-04 | 60.9 MB | |
| README.md | 2025-12-04 | 3.7 kB | |
| Totals: 4 Items | 179.7 MB | 0 | |
Renderer Re-Implementation
Core Renderer Changes
- Separates Video Processors for improved stability and performance
- Introduces SwsScale as a standalone Video Processor ✅Adds Support for HW Frames ✅Adds Support for BT.2020 (HDR to SDR) ✅Adds Support for Filters
- Adds Support for SW Frames with D3D11 which allows D3D11 Scaling, Deinterlace and Super-Resolution Note: it requires extra rendering/convert step to NV12
- Improves Video Processor selection and allows dynamic switching without losing cached frames (mainly beneficial for HW)
- Improves Config Planes -> Fill Planes -> Rendering pipeline
- Improves Pixel Shader caching
- Improves HW Device / Context / Frames allocation for FFmpeg and reduces unnecessary reallocation
- Replaces the Video Frames cache with a two-way linked list ✅Prepares groundwork for future/past frame access (for D3D11 Deinterlace and Super-Resolution) ✅Improves transitions between reverse/normal playback Note: currently disabled due to a Vortice issue and reverse-playback complexity
- Improves Bitmap subtitles scaling using high quality with SwsScale
- Improves Flyleaf's Contrast filter
Changelog (Rest)
- Demuxer: Fix pts for Data [Fixes [#665]]
- Demuxer: Fixes an issue with Metadata dictionary when the key exists twice [Fixes [#662]]
- Player: Fixes an issue with GetBufferedDuration for interlaced streams
- VideoStream: Fixes an issue with Fps for progressive streams [Fixes [#661]]
- Controls.WinUI: Fixes an issue with FullScreenContainer [Fixes [#655]]
- Solution: Fixes a WPF temp-file issue that could cause excessive file count/size in the temp directory
Breaking Changes
- Player: TakeSnapshotToFile / TakeSnapshotToBitmap now takes uint instead of int and 0 for auto width/height calculation
- Player: renderer renamed to Renderer
- Renderer: GetViewport renamed to Viewport
- Pan X/Y Offsets converted to percentages instead of actual pixels
Breaking Changes (Config Reorganization)
- Transfers from Config.Player / Player / Player.Video / Player.Renderer to Config.Video (ZoomOffset / PanXOffset / PanYOffset / Zoom / Rotation / HFlip / VFlip / Toggle / ToggleKeepRatio / ToggleVideoAcceleration / ZoomIn / ZoomOut / RotateRight / RotateLeft / CornerRadius)
- Transfers from Config.Player / Player.Audio to Config.Audio (VolumeMax / VolumeOffset / AudioDelayOffset /AudioDelayOffset2 => renamed to DelayOffset / DelayOffset2 / Toggle / ToggleMute / VolumeUp / VolumeDown / ReloadFilters / UpdateFilter / DelayAdd / DelayAdd2 / DelayRemove / DelayRemove2)
- Transfers from Config.Player / Player.Subtitles to Config.Subtitles (SubtitlesDelayOffset / SubtitlesDelayOffset2 => renamed to DelayOffset / DelayOffset2 / Toggle / DelayAdd / DelayAdd2 / DelayRemove / DelayRemove2)
- Config.Video: Deprecates MaxFrameLatency and SwapBuffers Note: These typically shouldn’t be modified, so deprecation should not impact usage
- Config.Video: Replaces Swap10Bit/SwapForceR8G8B8A8 with SwapChainFormat
- Config.Video: Renames Filters to FLFilters
- Config.Video: Renames BackgroundColor to BackColor
- Config.Video: Renames CustomAspectRatio to AspectRatioCustom