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.52 376 7/23/2024
3.7.51 154 7/9/2024
3.7.50 277 6/6/2024
3.7.49 255 5/25/2024
3.7.48 172 5/8/2024
3.7.47 295 4/16/2024
3.7.46 1,084 3/11/2024
3.7.45 3,171 2/18/2024
3.7.44 951 1/31/2024
3.7.43 132 1/28/2024
3.7.42 233 1/19/2024
3.7.41 192 1/14/2024
3.7.40 231 1/3/2024
3.7.39 239 12/30/2023
3.7.38 416 12/10/2023
3.7.36 156 12/6/2023
3.7.35 175 11/29/2023
3.7.34 833 11/12/2023
3.7.33 150 11/11/2023
3.7.32 153 11/11/2023
3.7.31 469 11/5/2023
3.7.30 256 10/24/2023
3.7.29 301 10/17/2023
3.7.28 276 10/8/2023
3.7.27 196 10/2/2023
3.7.26 168 10/1/2023
3.7.25 348 9/29/2023
3.7.24 672 9/7/2023
3.7.23 301 9/1/2023
3.7.22 229 8/31/2023
3.7.21 398 8/19/2023
3.7.20 775 6/1/2023
3.7.19 293 5/31/2023
3.7.18 570 5/30/2023
3.7.17 390 5/16/2023
3.7.16 344 5/15/2023
3.7.15 388 5/5/2023
3.7.14 352 5/2/2023
3.7.13 333 5/1/2023
3.7.12 309 5/1/2023
3.7.11 331 5/1/2023
3.7.10 366 4/29/2023
3.7.9 356 4/27/2023
3.7.8 363 4/25/2023
3.7.7 383 4/23/2023
3.7.6 328 4/21/2023
3.7.5 331 4/20/2023
3.7.4 335 4/20/2023
3.7.3 381 4/15/2023
3.7.1 468 4/8/2023
3.7.0 441 4/6/2023
3.6.12 572 3/25/2023
3.6.11 422 3/18/2023
3.6.10 555 2/16/2023
3.6.9 1,151 2/12/2023
3.6.7 460 2/8/2023
3.6.6 899 1/11/2023
3.6.5 2,332 12/16/2022
3.6.4 522 12/6/2022
3.6.3 3,392 11/30/2022
3.6.2 499 11/29/2022
3.6.1 600 11/12/2022
3.6.0 559 11/9/2022
3.6.0-pre3 267 11/7/2022
3.6.0-pre2 253 11/4/2022
3.6.0-pre 273 11/3/2022
3.5.10 727 10/19/2022
3.5.9 691 9/23/2022
3.5.8 697 8/30/2022
3.5.7 832 7/2/2022
3.5.6 635 6/23/2022
3.5.5 641 6/7/2022
3.5.4 585 6/3/2022
3.5.3 616 5/31/2022
3.5.2 627 5/29/2022
3.5.0 593 5/26/2022
3.5.0-pre 301 5/22/2022
3.4.14 829 5/13/2022
3.4.13 681 4/30/2022
3.4.11 590 4/25/2022
3.4.10 1,020 3/21/2022
3.4.9 807 1/28/2022
3.4.8 627 1/24/2022
3.4.7 999 1/18/2022
3.4.6 599 1/17/2022
3.4.5 617 1/12/2022
3.4.4 482 1/6/2022
3.4.3 483 1/2/2022
3.4.2 461 12/30/2021
3.4.1 445 12/28/2021
3.4.0 469 12/24/2021
3.4.0-pre2 302 12/21/2021
3.4.0-pre 324 12/19/2021
3.3.13 553 11/28/2021
3.3.12 1,296 11/20/2021
3.3.11 518 11/18/2021
3.3.10 541 10/28/2021
3.3.9 541 10/5/2021
3.3.8 469 9/28/2021
3.3.7 546 9/20/2021
3.3.6 480 9/17/2021
3.3.5 485 9/14/2021
3.3.4 539 9/9/2021
3.3.3 546 9/6/2021
3.3.2 518 9/5/2021
3.3.1 535 8/30/2021
3.3.0 518 8/28/2021
3.3.0-pre 349 8/24/2021
3.2.5 571 8/17/2021
3.2.4 474 8/14/2021
3.2.3 543 8/14/2021
3.2.2 503 8/11/2021
3.2.1 500 8/9/2021
3.2.0 505 8/9/2021
3.1.14 3,983 7/28/2021
3.1.12 531 7/26/2021
3.1.11 518 7/23/2021
3.1.10 735 7/20/2021
3.1.9 715 7/17/2021
3.1.8 670 5/17/2021
3.1.7 525 5/5/2021
3.1.6 520 5/5/2021
3.1.5 522 5/5/2021
3.1.4 505 5/4/2021
3.1.3 520 5/4/2021
3.1.2 514 5/4/2021
3.1.1 507 5/3/2021
3.1.0 700 5/3/2021
3.1.0-alpha2 352 5/2/2021
3.1.0-alpha 379 5/1/2021
3.0.0 769 4/23/2021
3.0.0-alpha2 392 4/20/2021
3.0.0-alpha1 368 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