FlyleafLib 3.4.0-pre

This is a prerelease version of FlyleafLib.
There is a newer version of this package available.
See the version list below for details.
dotnet add package FlyleafLib --version 3.4.0-pre
NuGet\Install-Package FlyleafLib -Version 3.4.0-pre
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FlyleafLib" Version="3.4.0-pre" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FlyleafLib --version 3.4.0-pre
#r "nuget: FlyleafLib, 3.4.0-pre"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install FlyleafLib as a Cake Addin
#addin nuget:?package=FlyleafLib&version=3.4.0-pre&prerelease

// Install FlyleafLib as a Cake Tool
#tool nuget:?package=FlyleafLib&version=3.4.0-pre&prerelease

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

Product Compatible and additional computed target framework versions.
.NET net5.0-windows7.0 is compatible.  net6.0-windows was computed.  net7.0-windows was computed.  net8.0-windows was computed. 
.NET Framework net472 is compatible.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on FlyleafLib:

Package Downloads
FlyleafLib.Controls.WPF

FlyleafME: A WPF Media Element Control (based on FlyleafLib)

FlyleafLib.Controls.WinUI

FlyleafHost.WinUI: Direct3D 11 Hardware Accelerated Media Surface (based on FlyleafLib)

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on FlyleafLib:

Repository Stars
robvdpol/RaceControl
Race Control is a standalone, open source F1TV client for Windows, written in C# on the .NET platform.
Version Downloads Last updated
3.7.47 93 4/16/2024
3.7.46 305 3/11/2024
3.7.45 1,517 2/18/2024
3.7.44 651 1/31/2024
3.7.43 108 1/28/2024
3.7.42 180 1/19/2024
3.7.41 149 1/14/2024
3.7.40 195 1/3/2024
3.7.39 202 12/30/2023
3.7.38 338 12/10/2023
3.7.36 128 12/6/2023
3.7.35 146 11/29/2023
3.7.34 780 11/12/2023
3.7.33 115 11/11/2023
3.7.32 117 11/11/2023
3.7.31 433 11/5/2023
3.7.30 221 10/24/2023
3.7.29 229 10/17/2023
3.7.28 241 10/8/2023
3.7.27 166 10/2/2023
3.7.26 133 10/1/2023
3.7.25 317 9/29/2023
3.7.24 594 9/7/2023
3.7.23 276 9/1/2023
3.7.22 198 8/31/2023
3.7.21 376 8/19/2023
3.7.20 668 6/1/2023
3.7.19 268 5/31/2023
3.7.18 536 5/30/2023
3.7.17 359 5/16/2023
3.7.16 314 5/15/2023
3.7.15 358 5/5/2023
3.7.14 327 5/2/2023
3.7.13 305 5/1/2023
3.7.12 285 5/1/2023
3.7.11 306 5/1/2023
3.7.10 328 4/29/2023
3.7.9 320 4/27/2023
3.7.8 332 4/25/2023
3.7.7 349 4/23/2023
3.7.6 295 4/21/2023
3.7.5 300 4/20/2023
3.7.4 308 4/20/2023
3.7.3 346 4/15/2023
3.7.1 426 4/8/2023
3.7.0 399 4/6/2023
3.6.12 535 3/25/2023
3.6.11 400 3/18/2023
3.6.10 529 2/16/2023
3.6.9 1,123 2/12/2023
3.6.7 433 2/8/2023
3.6.6 859 1/11/2023
3.6.5 2,293 12/16/2022
3.6.4 499 12/6/2022
3.6.3 3,361 11/30/2022
3.6.2 475 11/29/2022
3.6.1 569 11/12/2022
3.6.0 532 11/9/2022
3.6.0-pre3 245 11/7/2022
3.6.0-pre2 234 11/4/2022
3.6.0-pre 251 11/3/2022
3.5.10 691 10/19/2022
3.5.9 661 9/23/2022
3.5.8 670 8/30/2022
3.5.7 802 7/2/2022
3.5.6 613 6/23/2022
3.5.5 617 6/7/2022
3.5.4 563 6/3/2022
3.5.3 593 5/31/2022
3.5.2 602 5/29/2022
3.5.0 568 5/26/2022
3.5.0-pre 277 5/22/2022
3.4.14 797 5/13/2022
3.4.13 656 4/30/2022
3.4.11 560 4/25/2022
3.4.10 952 3/21/2022
3.4.9 767 1/28/2022
3.4.8 600 1/24/2022
3.4.7 977 1/18/2022
3.4.6 578 1/17/2022
3.4.5 591 1/12/2022
3.4.4 460 1/6/2022
3.4.3 456 1/2/2022
3.4.2 431 12/30/2021
3.4.1 425 12/28/2021
3.4.0 444 12/24/2021
3.4.0-pre2 284 12/21/2021
3.4.0-pre 303 12/19/2021
3.3.13 523 11/28/2021
3.3.12 1,272 11/20/2021
3.3.11 488 11/18/2021
3.3.10 514 10/28/2021
3.3.9 520 10/5/2021
3.3.8 440 9/28/2021
3.3.7 525 9/20/2021
3.3.6 455 9/17/2021
3.3.5 459 9/14/2021
3.3.4 508 9/9/2021
3.3.3 523 9/6/2021
3.3.2 496 9/5/2021
3.3.1 501 8/30/2021
3.3.0 491 8/28/2021
3.3.0-pre 329 8/24/2021
3.2.5 539 8/17/2021
3.2.4 444 8/14/2021
3.2.3 512 8/14/2021
3.2.2 482 8/11/2021
3.2.1 473 8/9/2021
3.2.0 477 8/9/2021
3.1.14 3,953 7/28/2021
3.1.12 515 7/26/2021
3.1.11 489 7/23/2021
3.1.10 703 7/20/2021
3.1.9 685 7/17/2021
3.1.8 642 5/17/2021
3.1.7 499 5/5/2021
3.1.6 494 5/5/2021
3.1.5 492 5/5/2021
3.1.4 473 5/4/2021
3.1.3 492 5/4/2021
3.1.2 502 5/4/2021
3.1.1 482 5/3/2021
3.1.0 665 5/3/2021
3.1.0-alpha2 331 5/2/2021
3.1.0-alpha 355 5/1/2021
3.0.0 728 4/23/2021
3.0.0-alpha2 384 4/20/2021
3.0.0-alpha1 342 4/18/2021

-= Extends Media Player's Functionality (Adds WinForms Support) =-

1) Key Bindings (Config.Player.KeyBindings.Enabled - ON By Default)
Allows to Add/Remove any (Ctrl +) Key combination and assign an existing action or even a custom (can also be loaded/saved with config)
Uses by default all common bindings
(Pause/Play/Open/Seek Backward-Forward/FullScreen/Record/TakeSnapshot/Speed Up-Down/Delays/Prev-Next Frame/Pan Zoom In-Out-Reset/Toggle AVS On-Off/Volume Up-Down-Mute)

2) Mouse Bindings (Config.Player.MouseBindigns.Enabled - ON By Default)
OpenOnDragAndDrop (Drag & Drop), PanMoveOnDragAndCtrl (Pan Move), PanZoomOnWheelAndCtrl (Pan Zomm In/Out), ToggleFullScreenOnDoubleClick (Toggle FullScreen)

3) Activity Mode (Config.Player.ActivityMode - ON By Default) | Master Thread required
Monitors user's actions based on Key/Mouse events and updates the mode to Idle / Active(keyboard only) / FullActive(mouse) based on Config.Player.ActivityTimeout
Exposes Player.Activity.ForceIdle / ForceActive / ForceFullActive for custom updates

4) Extends frequently used (Helper) methods for direct calls, Key Bindings assignments or ICommands usage (Player / Player.Audio / Player.Video / Player.Subtitles / Player.Commands)

5) Master Thread (Master.UIRefresh, UIRefreshInterval, UICurTimePerSecond - ON By Default)
Will monitor and refresh all players on single UI Invoke (CurTime/BufferedDuration/BitRate Stats etc.)
Allows updates even when the players/demuxers are not running
Allows more frequent update for CurTime (Master.UICurTimePerSecond = false) rather than on exact second change on timestamps

6) Additional Config.Player offsets added (for key/mouse bindings)
AudioDelayOffset, AudioDelayOffset2, SubtitlesDelayOffset, SubtitlesDelayOffset2
SeekOffset, VolumeOffset, ZoomOffset

7) Auto Play (Config.Player.AutoPlay - ON By Default)
Not required to subscribe on open completed events to start playing

8) Adds HLS Live cache support amp; uses accurate timestamps

9) Adds BufferingStarted / BufferingCompleted (with error support) events and success/fail to PlaybackCompleted

10) Updates (FFmpeg.AutoGen / Vortice)

[Issues]

1) Fixes a read timeout issue with live streams (while demuxing at the end of stream and waiting for new packets)
2) Fixes a dead lock with Audio Decoder during multiple ReSyncs
3) Fixes critical issues during swaping players new feature
4) Controls.WPF: Fixes an issues with comma/dot string to double convert issue based on system culture

[Breaking / Important Changes]

1) Config.Demuxer.FormatOpt["probesize"] amp; Config.Demuxer.FormatOpt["analyzeduration"] have been added by default which can cause an already exists exception
2) Config.Demuxer.BufferDuration changed from 5 minutes to 2 (to reduce RAM)
3) Config.Player.MinBufferDuration change from 1000ms to 500ms
4) Config.Decoder.MaxVideoFrames changed from Math.Max(10, Environment.ProcessorCount) to 4 (to reduce VRAM)
5) Config.Player.Speed amp; Config.Player.SpeedReverse moved to single Player.Speed (valid values 0.0 - 1.0 and 1,2,3,4)
6) VideoView.IsFullScreen / FullScreen / NormalScreen moved to Player and support also WinForms now
7) Check more changes and renames on Controls.WPF -> Flyleaf.xaml