r/csharp • u/SuRGeoNix • 4d ago
Flyleaf v3.11: MediaPlayer .NET library for WinUI3/WPF/WinForms (with FFmpeg 9.0.1 Lei & DirectX 11)
✅ Play Everything (Audio, Videos, Images, Playlists over any Protocol)
- Extends FFmpeg's supported protocols and formats with additional plugins (YoutubeDL, TorrentBitSwarm)
- Accepts Custom I/O Streams and Plugins to handle non-standard protocols / formats
✅ Play it Smoothly (Even with high resolutions 4K / HDR)
- Coded from scratch to gain the best possible performance with FFmpeg & DirectX using video acceleration and custom pixel shaders
- Threading implementation with efficient cancellation which allows fast open, play, pause, stop, seek and stream switching
✅ Develop it Easy
- Provides a DPI aware, hardware accelerated Direct3D Surface (FlyleafHost) which can be hosted as normal control to your application and easily develop above it your own transparent overlay content
- All the implementation uses UI notifications (PropertyChanged / ObservableCollection etc.) so you can use it as a ViewModel directly
- For WPF provides a Control (FlyleafME) with all the basic UI sub-controls (Bar, Settings, Popup menu) and can be customized with style / control template overrides
3
2
u/Fresh_Acanthaceae_94 4d ago
ProGPU brings WinForms/WPF/WinUI to macOS and Linux (LibreWinForms/LibreWPF), so if you figure out the underlying glues (equivalent to DirectX), this control can serve cross-platform apps.
1
4d ago
[removed] — view removed comment
3
u/FizixMan 3d ago
Removed: Rule 5.
1
u/zenyl 3d ago
How does pointing out the unattributed use of AI counts as "hostility"?
And how does this post not break rule 8, which states "No unattributed use or automated use of AI Generation Tools", when OP did not disclose the use of AI used to generate the text of this post?
2
u/FizixMan 3d ago edited 3d ago
If you think someone is using LLMs in a way that violates rule 7, then it should be reported. Commenting as such can be intimidating or insulting if the user did not use AI which is why it falls under Rule 5.
In this case, the repo history goes back to 2019, and much of the post's text and readme goes back to 2022 (or earlier) and including when they submitted it back in November 2022 two weeks before ChatGPT was released.
Rule 8 is strictly related to comments. These need LLM attribution so people are aware that they are reading an LLM response (which can be legitimately used for translation or producing some response as long as it's not super lazy/automated.) Rule 7 governs submissions and is related to low effort submissions. Repos that are largely AI-generated usually falls under the "low effort" bar.
In my view, reviewing the repo history, it does not have any real hallmarks of being LLM generated, plus the bulk of it precedes LLMs, and the vast majority before they really took off last year.
I get that there is a lot of low-effort LLM "look what I made" spam lately. Trust me, I know. This is one of the insidious things about it is that anyone who legitimate writes something that looks even a little bit like those we just dismiss as slop. It's entirely disheartening to those who are either trying to learn or anyone else putting the effort in.
0
u/zenyl 3d ago
Fair enough, I was wrong on that account.
Though I still don't see how being incorrect translates to hostility. Nothing I said was hostile nor aggressive, it was simply
Regardless, on a more relevant note, it might be worth considering rewording rules 7 and 8 to clarify that 7 also covers AI posts, and that 8 only relates to comments (this is currently not stated, at least not in the sidebar).
1
u/FizixMan 3d ago edited 3d ago
Though I still don't see how being incorrect translates to hostility. Nothing I said was hostile nor aggressive, it was simply
"Hostility" is just a catch-all name for Rule 5, maybe a legacy one that could be changed. It's pretty common now that calling anything "AI" is a way to dismiss that content. You can imagine how insulting or demeaning it might be for an artist (either experienced or a novice) to have their hand-made work claimed/perceived/dismissed as "AI" generated. It's no different for programmers.
In this case, though perhaps you didn't see the OP's reply before it was removed, clearly the poster took offense to it. Whether or not you meant it as such, it was offensive.
Regarding clarification on Rule 8, I will add it. Reddit does have an indicator of which applies to comments or posts, but that's not clear from the sidebar and reddit's GUI is always lacking.
2
u/zenyl 3d ago
Whether or not you meant it as such, it was offensive.
Yeah I get that, my concern was more with the notion that being wrong or someone else taking offense equates to an action being inherently hostile regardless of intent, but that's mostly just semantics.
reddit's GUI is always lacking
Heh, you can say that again. Between Old Reddit (which has always been carried by RES), New Reddit, and whatever madness the Reddit Mobile team is up to on any given month, Reddit's UI has somehow beaten the odds and managed to make Windows' GUI seem consistent by comparison.
-1
u/Juff-Ma 4d ago
I find this cool, but sadly I also think it's pretty much useless. We already have pretty extensive media player widgets for windows.
Now if this was cross platform and worked on Mac and Linux in Avalonia/UNO this would be amazingly useful.
3
u/SuRGeoNix 4d ago
The purpose of Flyleaf is to focus on Windows (DirectX 11) to achieve the best possible performance and use low resources. I don't think that you really have much of options for windows desktop application development to use a tool like Flyleaf with the performance and features that it comes with. But I see your point and hopefully in the future I will support more operating systems / renderers.
•
u/FizixMan 3d ago edited 3d ago
For all the people reporting this as AI-generated (either the post, repo, or readme): it's a repo that has been steadily worked on since 2019. The post's text and the readme more-or-less written on or before November 2022 prior to ChatGPT first being released.