Skip to content

Commit 9126518

Browse files
committed
Updates to v3.5 / v1.1.22
[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)
1 parent c057284 commit 9126518

6 files changed

Lines changed: 22 additions & 34 deletions

File tree

FlyleafLib.Controls.WPF/FlyleafLib.Controls.WPF.csproj

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<TargetFrameworks>net6.0-windows;net5.0-windows;net472</TargetFrameworks>
55
<UseWindowsForms>true</UseWindowsForms>
66
<UseWPF>true</UseWPF>
7-
<Version>1.1.22-pre</Version>
7+
<Version>1.1.22</Version>
88
<Authors>SuRGeoNix</Authors>
99
<Copyright>SuRGeoNix © 2022</Copyright>
1010
<PackageLicenseExpression>LGPL-3.0-or-later</PackageLicenseExpression>
@@ -14,9 +14,10 @@
1414
<PackageTags>flyleaf flyleaflib video audio media player element control</PackageTags>
1515
<Description>WPF Media Player Control/Element (based on FlyleafLib)</Description>
1616
<PackageReleaseNotes>
17-
* Adds Playlist support (on popup menu)
18-
* Adds Search Local / Search Online on Subtitles Settings
19-
* Plugins' external streams will be all as one under External
17+
* Playlists: Adds playlists support (on pop-up menu)
18+
* Settings: Adds Search Local / Search Online
19+
* External Streams: Will be all now be under External sub-menu
20+
* UI Config: Extends UI Config with the subtitles options
2021
* Fixes an issue that it wouldn't go idle when the mouse was above the sliders
2122
* Updates FlyleafLib
2223
</PackageReleaseNotes>

FlyleafLib/FlyleafLib.csproj

Lines changed: 13 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<PackageIconUrl />
99
<RepositoryUrl></RepositoryUrl>
1010
<Description>Media Player .NET Library for WPF/WinForms (based on FFmpeg/DirectX)</Description>
11-
<Version>3.5-pre</Version>
11+
<Version>3.5</Version>
1212
<Authors>SuRGeoNix</Authors>
1313
<Copyright>SuRGeoNix © 2022</Copyright>
1414
<PackageLicenseExpression>LGPL-3.0-or-later</PackageLicenseExpression>
@@ -17,40 +17,26 @@
1717
<IncludeSymbols>true</IncludeSymbols>
1818
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
1919
<PackageReleaseNotes>
20-
[New Features]
21-
* Playlist
22-
- Adds Playlist support on the decoder context (will be extended to support playlist files such as .pls/.m3u/.m3u8 etc.)
23-
- Adds Playlist support for BitSwarm (Torrent) and YoutubeDL (Web) plugins
24-
- Allows playing received items while playlist is still in progress
25-
- Separates main user input with playlist items, embedded streams and external streams
26-
- Adds basic scraping (for title, season, episode)
27-
* Sessions: Adds support to re-open a previously opened session (with the same input/playlist item/streams/curtime/audio and subs delay)
28-
* Subtitles
29-
- Adds basic local search support and improves suggestion algorithm
30-
- Adds Config.Subtitles.SearchLocal/SearchLocalOnInputType/SearchOnline/SearchOnlineOnInputType
31-
3220
[Enchantments]
33-
* Overall Code Clean-up
34-
* Renderer
35-
- Allows late assignment of the Control/Handle (you can start playing before the control has been created)
36-
- Allows WARP device to be forced from the configuration (luid=-1000)
37-
* Threading, Locking and Cancellation
38-
- Improves Open/OpenAsync implementation
39-
- Replaces threads with tasks and gets rid of EnsureThreadDone
40-
- Improves locking and cancellation
41-
* Demuxer Packet Queue, CurTime and BufferedDuration
42-
* UI Updates mainly for Streams (as ObservableCollection)
21+
* Playlists: Adds playlists support (for M3U, PLS, YoutubeDL, Torrent)
22+
* Sessions: Allows to open a previously opened session with the same configuration
23+
* Subtitles: Improves suggestions and adds SearchLocal/SearchLocalOnInputType/SearchOnline/SearchOnlineOnInputType configuration
24+
* Renderer: Improves compatibility with proper fallback to WARP device and improves the way you specify a GPU adapter
25+
* ModelView: Includes playlist items and streams (embedded and external) in library's model view
26+
* OpenAsync: Improves threading implementation, locking and interrupts
4327

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

49-
[Important/Breaking Changes]
33+
[Important / Breaking Changes]
5034
* Player.Title can now be accessed from Player.Playlist.Selected.Title
5135
* Player.PlaybackCompleted renamed to Player.PlaybackStopped
5236
* Player.[AVS].Inputs and Player.[AVS].ExternalStreams can be accessed from Playlist.Items and Playlist.Items[N].External[AVS]Streams
5337
* LogOutput for files now will not append by default check Engine.Config.LogAppend
38+
* Config.Video.GPUAdapterLUID renamed to Config.Video.GPUAdapter (LUID can change on system reboot, now you can use a string to match)
39+
* Player can start playing now before the control's assignment or its handle creation
5440
* 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)
5541
</PackageReleaseNotes>
5642
</PropertyGroup>

FlyleafLib/MediaPlayer/Activity.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ public class Activity : NotifyPropertyChanged
2727
public Activity(Player player)
2828
{
2929
this.player = player;
30+
ForceFullActive();
3031
}
3132

3233
public ActivityMode Check()

Samples/FlyleafPlayer (WPF Control) (WPF)/MainWindow.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
xmlns:flwpf="clr-namespace:FlyleafLib.Controls.WPF;assembly=FlyleafLib.Controls.WPF"
1010

1111
mc:Ignorable="d"
12-
Title="Flyleaf v3.5a" Height="450" Width="800" Background="Black" Loaded="Window_Loaded" Icon="/Flyleaf.ico">
12+
Title="Flyleaf v3.5" Height="450" Width="800" Background="Black" Loaded="Window_Loaded" Icon="/Flyleaf.ico">
1313
<Grid>
1414
<fl:VideoView Player="{Binding Player}">
1515
<Grid>

Samples/FlyleafPlayer/Views/FlyleafBar.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@
136136
</Button>
137137

138138
<!--Movie Title-->
139-
<TextBlock Grid.Column="3" FontSize="14" VerticalAlignment="Center" FontStyle="Italic" Margin="5,0,0,0" Text="{Binding Player.Title}" d:Text="Movie Title"/>
139+
<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"/>
140140

141141
<!--Live Stream-->
142142
<!--<materialDesign:PackIcon Kind="VideoInputAntenna" Margin="5 2 0 0" Foreground="{DynamicResource SecondaryHueMidBrush}" Visibility="{Binding Player.IsLive, Converter={StaticResource BooleanToVisibility}}"/>-->

Samples/FlyleafPlayer/Views/Main.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@
118118
<Grid Style="{StaticResource FadeActivity}" Margin="0 30 0 0" VerticalAlignment="Top" HorizontalAlignment="Center">
119119
<StackPanel>
120120
<TextBlock HorizontalAlignment="Right" Background="#a0000000" Padding="5">
121-
<Run Text="{Binding Player.Title, Mode=OneWay}" d:Text="Paokara"/>
121+
<Run Text="{Binding Player.Playlist.Selected.Title, Mode=OneWay}" d:Text="Paokara"/>
122122
</TextBlock>
123123
</StackPanel>
124124
</Grid>

0 commit comments

Comments
 (0)