Implementation of Hardware Acceleration?

Is there any Hardware Acceleration available in Sailfish OS? One example: watching videos. It seems that the CPU is en/decoding the video -> high battery usage. Why is this not done by the GPU?

I like to watch YouTube etc on my phone - on Android there is no problem, I can watch videos for hours. But on Sailfish there is such a huge battery % decrease that I only can watch a few videos. Is there any solution for that?

7 Likes

Which device are you using?

I have noticed a similar issue (poor performance above 360p) and posted a workaround on TJC.

I got the impression that hardware acceleration for vp8/vp9 codecs was mentioned in the release notes at some point, but the still poor performance suggests that it doesn’t apply to the browser.
(I’m running an Xperia 10)

Using a Xperia X i can play this video in 720, 1080 and 1440p (1440p is closer to a powerpoint presentation)

I have “media.webm.enabled” enabled/checked/on in about:config.
Using the latest SFOS 3.3 and Opera Mini 47.2.2254

Using Opera Mini (android) I get similar results, 1080 is OK, 1440 and above is walking and/or swimming in syrup (but not as good)

That’s amazing!
I’m dropping the majority of frames already at 720p vp9, whereas 720p h264/avc1 is super smooth.
(There is only 360p and 720p for h264)

I would file this one as another example of “the built-in browser is pathetic”… (which is pretty much a meme at this point to Sailfish users :wink: )

On my XA2 the video plays smoothly using VP9 codec in 4k resolution, both with Firefox/Fennec (android) and LLs Video Player (native).

The native browser however drops frames at anything above 480p when using VP9, so it clearly does not accelerate VP9 decoding…

It seems @emva has it working on the Xperia X though?
So maybe someone forgot to enable it on the newer devices, or i misunderstood the release notes…

Having “media.webm.enabled” off, i dont have the choice of higher than 720p; then avc1.64001F ,mp4a.40.2 (22) is being uses as codec.(still smooth)

That being said, a long time ago i went through about:config “for fun” and enabled / disabled some stuff.
Is there any way to reset the about:config settings back to stock?

Didn’t try, but deleting ~/.mozilla/mozembed/prefs.js should do the trick…

Piggy-backing on this topic.

I like to store actual videos on the device, and not stream/youtube-watch them. I have no problem re-encoding if necessary.

Which format (specifically codecs and profiles) is best to use to ensure playback (through the gallery app) uses the least amount of power?

Does this vary from device to device?

In the browser I cannot even play 480p videos without getting choppy on XA2+

2 Likes

On my xa2+, even if playing local videos in the gallery, when the scene is moving fast, there are more stutters than playing on Android and Windows.

Watching a video on 720p or above within the built-in web browser and Fennec (Firefox from F-Droid) allows me to cook eggs with my Xperia X.

1 Like

Well, I tried it and it went badly… Do not do this. It sent my browser in to a loop.
It created the first 10 lines of prefs.js, but nothing more.

Having a backup using cp prefs.js prefs.bck saved my skin.

1 Like