Skip to content

Commit

Permalink
Updates to v3.5 / v1.1.22
Browse files Browse the repository at this point in the history
[Enchantments]
 * Playlists: Adds playlists support (for M3U, PLS, YoutubeDL, Torrent)
 * Sessions: Allows to open a previously opened session with the same configuration
 * Subtitles: Improves suggestions and adds SearchLocal/SearchLocalOnInputType/SearchOnline/SearchOnlineOnInputType configuration
 * Renderer: Improves compatibility with proper fallback to WARP device and improves the way you specify a GPU adapter
 * ModelView: Includes playlist items and streams (embedded and external) in library's model view
 * OpenAsync: Improves threading implementation, locking and interrupts

[Issues]
* Fixes a critical issue with timestamps (mainly for some avi files while using show frame prev/next)
* Fixes an NPE on Renderer's SetViewport
* Fixes an NPE on Audio.Mute

[Control.WPF Enchantments]
* Playlists: Adds playlists support (on pop-up menu)
* Settings: Adds Search Local / Search Online
* External Streams: Will be all now be under External sub-menu
* UI Config: Extends UI Config with the subtitles options

[Control.WPF Issues]
* Fixes an issue that it wouldn't go idle when the mouse was above the sliders

[Important / Breaking Changes]
* Player.Title can now be accessed from Player.Playlist.Selected.Title
* Player.PlaybackCompleted renamed to Player.PlaybackStopped
* Player.[AVS].Inputs and Player.[AVS].ExternalStreams can be accessed from Playlist.Items and Playlist.Items[N].External[AVS]Streams
* LogOutput for files now will not append by default check Engine.Config.LogAppend
* Config.Video.GPUAdapterLUID renamed to Config.Video.GPUAdapter (LUID can change on system reboot, now you can use a string to match)
* Player can start playing now before the control's assignment or its handle creation
* Changes the way that Player's Open Completed events will fire (only what user requested to open). If you still need to catch all the events subscribe on the Decoder Context's events (Player.decoder)
  • Loading branch information
SuRGeoNix committed May 26, 2022
1 parent c057284 commit 9126518
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 34 deletions.
9 changes: 5 additions & 4 deletions FlyleafLib.Controls.WPF/FlyleafLib.Controls.WPF.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<TargetFrameworks>net6.0-windows;net5.0-windows;net472</TargetFrameworks>
<UseWindowsForms>true</UseWindowsForms>
<UseWPF>true</UseWPF>
<Version>1.1.22-pre</Version>
<Version>1.1.22</Version>
<Authors>SuRGeoNix</Authors>
<Copyright>SuRGeoNix © 2022</Copyright>
<PackageLicenseExpression>LGPL-3.0-or-later</PackageLicenseExpression>
Expand All @@ -14,9 +14,10 @@
<PackageTags>flyleaf flyleaflib video audio media player element control</PackageTags>
<Description>WPF Media Player Control/Element (based on FlyleafLib)</Description>
<PackageReleaseNotes>
* Adds Playlist support (on popup menu)
* Adds Search Local / Search Online on Subtitles Settings
* Plugins' external streams will be all as one under External
* Playlists: Adds playlists support (on pop-up menu)
* Settings: Adds Search Local / Search Online
* External Streams: Will be all now be under External sub-menu
* UI Config: Extends UI Config with the subtitles options
* Fixes an issue that it wouldn't go idle when the mouse was above the sliders
* Updates FlyleafLib
</PackageReleaseNotes>
Expand Down
40 changes: 13 additions & 27 deletions FlyleafLib/FlyleafLib.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<PackageIconUrl />
<RepositoryUrl></RepositoryUrl>
<Description>Media Player .NET Library for WPF/WinForms (based on FFmpeg/DirectX)</Description>
<Version>3.5-pre</Version>
<Version>3.5</Version>
<Authors>SuRGeoNix</Authors>
<Copyright>SuRGeoNix © 2022</Copyright>
<PackageLicenseExpression>LGPL-3.0-or-later</PackageLicenseExpression>
Expand All @@ -17,40 +17,26 @@
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<PackageReleaseNotes>
[New Features]
* Playlist
- Adds Playlist support on the decoder context (will be extended to support playlist files such as .pls/.m3u/.m3u8 etc.)
- Adds Playlist support for BitSwarm (Torrent) and YoutubeDL (Web) plugins
- Allows playing received items while playlist is still in progress
- Separates main user input with playlist items, embedded streams and external streams
- Adds basic scraping (for title, season, episode)
* Sessions: Adds support to re-open a previously opened session (with the same input/playlist item/streams/curtime/audio and subs delay)
* Subtitles
- Adds basic local search support and improves suggestion algorithm
- Adds Config.Subtitles.SearchLocal/SearchLocalOnInputType/SearchOnline/SearchOnlineOnInputType

[Enchantments]
* Overall Code Clean-up
* Renderer
- Allows late assignment of the Control/Handle (you can start playing before the control has been created)
- Allows WARP device to be forced from the configuration (luid=-1000)
* Threading, Locking and Cancellation
- Improves Open/OpenAsync implementation
- Replaces threads with tasks and gets rid of EnsureThreadDone
- Improves locking and cancellation
* Demuxer Packet Queue, CurTime and BufferedDuration
* UI Updates mainly for Streams (as ObservableCollection)
* Playlists: Adds playlists support (for M3U, PLS, YoutubeDL, Torrent)
* Sessions: Allows to open a previously opened session with the same configuration
* Subtitles: Improves suggestions and adds SearchLocal/SearchLocalOnInputType/SearchOnline/SearchOnlineOnInputType configuration
* Renderer: Improves compatibility with proper fallback to WARP device and improves the way you specify a GPU adapter
* ModelView: Includes playlist items and streams (embedded and external) in library's model view
* OpenAsync: Improves threading implementation, locking and interrupts

[Issues]
* Fixes a null reference on renderer's SetViewport with D3D11 VP #158
* Fixes a rare dead lock on player's seek
* Fixes an issue on WPF Control that it wouldn't go idle when the mouse was above the sliders
* Fixes a critical issue with timestamps (mainly for some avi files while using show frame prev/next)
* Fixes an NPE on Renderer's SetViewport
* Fixes an NPE on Audio.Mute

[Important/Breaking Changes]
[Important / Breaking Changes]
* Player.Title can now be accessed from Player.Playlist.Selected.Title
* Player.PlaybackCompleted renamed to Player.PlaybackStopped
* Player.[AVS].Inputs and Player.[AVS].ExternalStreams can be accessed from Playlist.Items and Playlist.Items[N].External[AVS]Streams
* LogOutput for files now will not append by default check Engine.Config.LogAppend
* Config.Video.GPUAdapterLUID renamed to Config.Video.GPUAdapter (LUID can change on system reboot, now you can use a string to match)
* Player can start playing now before the control's assignment or its handle creation
* Changes the way that Player's Open Completed events will fire (only what user requested to open). If you still need to catch all the events subscribe on the Decoder Context's events (Player.decoder)
</PackageReleaseNotes>
</PropertyGroup>
Expand Down
1 change: 1 addition & 0 deletions FlyleafLib/MediaPlayer/Activity.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ public class Activity : NotifyPropertyChanged
public Activity(Player player)
{
this.player = player;
ForceFullActive();
}

public ActivityMode Check()
Expand Down
2 changes: 1 addition & 1 deletion Samples/FlyleafPlayer (WPF Control) (WPF)/MainWindow.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
xmlns:flwpf="clr-namespace:FlyleafLib.Controls.WPF;assembly=FlyleafLib.Controls.WPF"

mc:Ignorable="d"
Title="Flyleaf v3.5a" Height="450" Width="800" Background="Black" Loaded="Window_Loaded" Icon="/Flyleaf.ico">
Title="Flyleaf v3.5" Height="450" Width="800" Background="Black" Loaded="Window_Loaded" Icon="/Flyleaf.ico">
<Grid>
<fl:VideoView Player="{Binding Player}">
<Grid>
Expand Down
2 changes: 1 addition & 1 deletion Samples/FlyleafPlayer/Views/FlyleafBar.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@
</Button>

<!--Movie Title-->
<TextBlock Grid.Column="3" FontSize="14" VerticalAlignment="Center" FontStyle="Italic" Margin="5,0,0,0" Text="{Binding Player.Title}" d:Text="Movie Title"/>
<TextBlock Grid.Column="3" FontSize="14" VerticalAlignment="Center" FontStyle="Italic" Margin="5,0,0,0" Text="{Binding Player.Playlist.Selected.Title}" d:Text="Movie Title"/>

<!--Live Stream-->
<!--<materialDesign:PackIcon Kind="VideoInputAntenna" Margin="5 2 0 0" Foreground="{DynamicResource SecondaryHueMidBrush}" Visibility="{Binding Player.IsLive, Converter={StaticResource BooleanToVisibility}}"/>-->
Expand Down
2 changes: 1 addition & 1 deletion Samples/FlyleafPlayer/Views/Main.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@
<Grid Style="{StaticResource FadeActivity}" Margin="0 30 0 0" VerticalAlignment="Top" HorizontalAlignment="Center">
<StackPanel>
<TextBlock HorizontalAlignment="Right" Background="#a0000000" Padding="5">
<Run Text="{Binding Player.Title, Mode=OneWay}" d:Text="Paokara"/>
<Run Text="{Binding Player.Playlist.Selected.Title, Mode=OneWay}" d:Text="Paokara"/>
</TextBlock>
</StackPanel>
</Grid>
Expand Down

0 comments on commit 9126518

Please sign in to comment.