Releases: SuRGeoNix/Flyleaf
Releases · SuRGeoNix/Flyleaf
Flyleaf v3.10.2 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Player.ScreamerZeroLatency: Fixes a critical issue with the new Video Frame Cache
- Engine.Config: Introduces KeepDisplayActive and allows -by disabling it- the system/display to sleep if required [Thanks @lrohrmann]
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.10.1 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Renderer: Fixes issues with Split Frame Alpha and adds SW support [Thanks @LazyCuteLion]
- Renderer: Fixes an issue during initialization that it wouldn't properly renderer
- Renderer: Adds SwsScale support for alpha channel
- Renderer: Clear Screen when VPSwitch clears frames cache
- VideoDecoder: Fixes an issue with key frame for qtrle codec
- FlyleafHost.Wpf: Fixes an infinite LayoutUpdated loop which could cause the UI to freeze
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.10 (AIO x64 .NET10 / FFmpeg v8)
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
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.7 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- VideoDecoder: Fixes a critical issue -caused by last update- with GetFrameNext
- VideoDecoder: Fixes an issue with Seek at start of the input with formats that missing the first key frame flag
- Renderer.FlyleafVP: Adds support for embedded alpha channel in HW decoded split frame
- Config.Video: Introduces SplitFrameAlphaPosition
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.6 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Player: Fixes an issue with TakeSnapshot
- Renderer.VideoProcessor: Prioritize user's VP selection instead of supported features by VPs
- VideoDecoder: Reimplementation of the main decoding loop which now respects MaxVideoFrames/ExtraFrames
- VideoDecoder: Handles internally the key frame validation instead of Config.Decoder.KeyFrameValidation
- Samples.FlyleafPlayer: Fixes an issue with key bindings restore during Image/Video views
Breaking Changes
- Config.Decoder: Deprecates KeyFrameValidation (will be handled automatically from the decoder)
- Config.Decoder: MaxErrors will be reset on the first successful decoding (instead on each Start of the decoder)
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.5 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Engine.Logger: Adds File Rolling support [Thanks @coldays]
- Engine.Config: Introduces LogRollMaxFileSize and LogRollMaxFiles for the new File Rolling impelementation
- Demuxer: Fixes an issue with Data streams that would be falsely included as Misc/Invalid streams instead
- VideoDecoder: Stability and Performance improvements for Open/Setup implementation
- Renderer.VideoProcessor: Fixes an issue with cropping not refreshing the layout
- Player: Introduces OpeningVideoStream event which fires during VideoDecoder's codec open
- Player.Video: Codec now returns the actual codec's name in use by the decoder
- FlyleafHost.Wpf: Fixes an issue with MouseWheel event for attached hosts would fire twice causing Zoom and Rotation to not work properly
- Plugins.YoutubeDL: Attempt for few fixes (mainly for audio languages on youtube)
- Samples.FlyleafPlayer: Introduces GeneralConfig.AllowTransparency which enables transparency support
Breaking Changes
- Config.Decoder: Defaults AllowProfileMismatch back to false as it seems that it causes more issues than it resolves
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.4 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Engine: Prevents enumeration of A/V capture devices during start to avoid delays
- VideoDecoder/VideoStream: Fixes an issue while FFmpeg announces 60.00x fps instead of 60fps that could cause video decoder to drop frames (based on Config.Video.MaxOutputFps limit)
- Player.ScreamerVASD: Adds an ~60 FPS idle renderer embedded during playback to provide smoother resize and filter updates when the source FPS or speed is low
- Player.Audio: Few stability improvements (mainly for non-analyzed inputs)
Breaking Changes
- Engine: A/V captures devices will require manual enumeration with Engine.Audio/Video.RefreshCapDevices() if needed
- Config.Decoder: Defaults MaxAudioFrames from 10 to 5 for better syncing, smooth speed changes and resolves possible issues with MaxLatency
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.3 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Config.Decoder: Introduces AudioCodec/VideoCodec/SubtitlesCodec to allow forcing the codec
- Config.Decoder: Introduces AllowDropFrames which handles decoder's skip_frame and AV_CODEC_FLAG_LOW_DELAY/AV_CODEC_FLAG2_FAST for low latency
- Config.Decoder: Introduces KeyFrameValidation which ensures no artifacts on some broken formats
- VideoDecoder: Fixes a possible issue with frame drops (with network streams) at decoder level
- Renderer.Present: Fixes an issue with ClearScreen when forced
- Renderer.PixelShader: Switching from OMSetBlendState to custom PixelShader alpha blending to avoid double blend with transparency
- Player.CurTime: Improves seeking forward when it has a chance to find it in cache
- FlyleafHost.Wpf: Adds full transparency support for media with alpha channel (through VideoBackground and Config.Video.BackgroundColor)
- FlyleafHost.Wpf: Introduces VideoBackground for Surface's Background color (deprecates Config.Video.BackgroundColor for this purpose)
- Updates Vortice / MaterialDesignThemes / WindowsAppSDK
Package Contents
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.2 (AIO x64 .NET10 / FFmpeg v8)
Changelog
- Adds .NET 10 support
- Renderer.SwapChain: Fixes an issue during initialization (could cause black screens and wrong aspect ratios during initialize/swap)
- Renderer.Present: Respects Config.Video.ClearScreen and avoids clearing the screen when not set
- Player: Fixes a crashing issue for Audio only
Package Contains (x64)
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders
Flyleaf v3.9.1 (AIO x64 .NET8 / FFmpeg v8)
Changelog
- Player.ScreamerVASD: Fixes/Improves MaxLatency with the new implementation
- Player.ScreamerVASD: Simplifies/Improves GetBufferedDuration calculation
- Player.Screamers: Few Fixes/Improvements with the new implementation
- Renderer: Fixes a critical crash issue during initialization when handle/control has not been assigned yet
- Renderer.Present: Fixes possible issues with locks to ensure stability
- AudioFrame: Attaches speed on audio frame which handles better speed changes
Package Contains (x64)
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 v8.0 (d8605a6)
- Patched for HLS issue
- Patched for .NET issue
- No encoders