-
Notifications
You must be signed in to change notification settings - Fork 80
For Developers
It is written in C# and WPF, so customization is relatively easy compared to C projects.
This page provides a collection of useful tips for development.
DeepWiki can also be helpful.
https://deepwiki.com/umlx5h/LLPlayer
Visual Studio Community 2022 is usually recommended.
If you install VS with desktop development in C# enabled, you can open the sln file and build right away.
The core of the video player is implemented using the Flyleaf library.
The following wiki summarizes how to use this library.
https://github.com/SuRGeoNix/Flyleaf/wiki
The sample projects in Flyleaf's Samples/ are helpful for implementation.
https://github.com/SuRGeoNix/Flyleaf/tree/master/Samples/FlyleafPlayer%20(WPF%20Control)%20(WPF)
WPF is used for the UI framework and MVVM for the code architecture.
To learn WPF, I recommend Pluralsight courses.
In my case, with no experience, I was able to handle it to some extent after taking the course.
recommended authors
- https://app.pluralsight.com/profile/author/thomas-huber
- https://app.pluralsight.com/profile/author/brian-lagunas
The following book is also recommended because it has a very good collection of code samples.
Pro WPF 4.5 in C#: Windows Presentation Foundation in .NET 4.5
The following tutorials are helpful in creating a video player with the ffmpeg API.
- ffmpeg libav tutorial
- How to Write a Video Player in Less Than 1000 Lines (Original)
- How to Write a Video Player in Less Than 1000 Lines (Revised)
For a more practical sample video player, the ffplay code is very helpful.
You will understand it after doing the tutorial above.
https://github.com/FFmpeg/FFmpeg/blob/master/fftools/ffplay.c
More details on the ffmpeg API can be found in the following reference.