Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Video Playback with Default System Player #34

Closed
VasilisPat opened this issue May 22, 2020 · 2 comments
Closed

Video Playback with Default System Player #34

VasilisPat opened this issue May 22, 2020 · 2 comments
Labels
enhancement New feature or request wontfix This will not be worked on

Comments

@VasilisPat
Copy link
Contributor

VasilisPat commented May 22, 2020

Related to a Problem
When running the screensaver I observe cpu usage over 50%(on machines that I have with older hardware even larger). Current configuration is a Intel i7-10510U and an Nvidia GTX 1080, so I don't think that the system can't provide enough resources. Also 90% of the time no other apps are running but I still here the fans spinning fast and loud.

Recomendation
Since this is an Electron based application, it makes total sense to load the screensaver on a new Electron window. But this requires a lot of resources.

Taking an idea from the original Aerial project by cDima, why not running the system default video playback app to playback the video?

I am not an Electron type app specialist but I think since it launches an Html file to playback the video, opening an Windows app through Html and WinShell ActiveXObject is possible or JavaScript using a static server to access local storage. I am still researching if this can be 100% possible but it might be a very good idea if it can be done.

Edit
Researched a little bit the issue, is it possible to assign video playback to system media player and have an overlay with the text provided by the Electron? To launch the Win10 built-in video app a URI and "mswindowsvideo" argument could work.
Also since I saw that electron can support C#, why not using some of the source code to playback the video through cDima's Aerial project? If this project's developper agrees on doing so, original Aerial is provided through an MIT License, so there sgould be no problem.

Disclaimer
I am not an expert in programming through Html,Js or C# so apologies if I made some terrible mistake or suggested something stupid. On the other hand I am familiar with Java and C++ and I would be more than happy to contribute to this project through that.

@VasilisPat VasilisPat added the enhancement New feature or request label May 22, 2020
@OrangeJedi
Copy link
Owner

First off, as I mentioned here high CPU usage could be tied to drive and Windows misconfiguration. That being said, Aerial does use more power than it probably should.

I've though a bit about the whole 'have Aerial open a system player' idea but didn't really peruse it because an HTML page seemed to be an easy way to get this project up and running. One of the problems with this approach is that you lose some of the features Aerial currently has. Implementing text and transitions becomes a bit harder; you will notice that cDima's Aerial doesn't have either.

Another issue is that the system player doesn't support h.265 videos. Currently Aerial doesn't support H.265 either, but we are making progress in #17. With h.265 support 4K videos be easy to support and cache sized would be reduced. And while some players have h.265 support, I would like to avoid a requirement that a user have to download a separate program to use Aerial.

Perhaps somehow embedding a system player into the HTML page or something similar would work really well. This idea is certainly worth researching more and an issue worth addressing, but I would need to have a clearer vision to understand the trade offs before I implement it. That being said I'll take a look into solutions along these lines and post here if anything promising pops up.

@OrangeJedi
Copy link
Owner

Closing because v1.0.0 fixed the video playback issues, eliminating the need for using the system player.

@OrangeJedi OrangeJedi added the wontfix This will not be worked on label Nov 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants