Compiled Libraries, Plugins & Samples
Flyleaf Player | Note: Pop-up on first run is to add itself to windows firewall for proper yt-dlp and bitswarm playback
Flyleaf Downloader
Flyleaf Extractor
Flyleaf Plugins | Note: yt-dlp is detected as a virus
FFmpeg Libraries | Note: 4.4.1.2 patched for HLS issue
Enriches FlyleafLib with Logging
- Adds Log Support for both FlyleafLib and FFmpeg (with separate log levels for each)
- Organizes the previously Master and renaming it to Engine
- Allows runtime/dynamic changes to log configuration
- Collects all the Global configuration to one place and allows Load/Save
- Controls.WPF: Renames Buffering Tab to Player and adds the new Logging settings
- Controls.WPF: Adds Read Timeout to Player Settings
- AudioOnly: Prevents the initialization of VideoDecoder and Renderer
- Adds a read timeout even on the demuxer (Player.VideoDemuxer.TimedOut)
Breaking/Important Changes
- New way to initialize FlyleafLib with Engine.Start
- Master has been renamed to Engine
- Master.RegisterFFmpeg and Master.RegisterPlugins have been removed
- Master.GPUAdapters transferred to Engine.Video.GPUAdapters
- Master.AudioMaster.Devices transferred to Engine.Audio.Devices
- Master configuration properties transferred to Engine.Config
Start Engine Example
Engine.Start(new EngineConfig()
{
UIRefresh = true, // Required for Activity,BufferedDuration,Stats in combination with Config.Player.Stats = true
UIRefreshInterval = 250; // How often to update the UI
UICurTimePerSecond = false, // Whether to update CurTime only when it's second changed or by UIRefreshInterval
HighPerformaceTimers= false, // Forces TimeBeginPeriod(1) always active
//LogOutput = ":debug",
//LogOutput = ":console",
LogOutput = "C:\\logs\\file.log",
LogLevel = LogLevel.Debug,
FFmpegLogLevel = FFmpegLogLevel.Warning,
PluginsPath = "C:\\SomePath\\Plugins",
FFmpegPath = "C:\\SomePath\\FFmpeg",
});- FFmpegPath and PluginsPath support both relative and absolute paths and can specify the ":" prefix for any folder below the current
Solution Notes
- FFmpeg libraries for x86 platforms have been removed from the solution
- FFmpeg libraries have been transferred to FFmpeg/ folder
- All the global classes have been transferred to Engine/