Open star-buck opened 6 years ago
smplayer wasnt working, only mpv
That's fixable, it was simply a matter of me having upgraded mpv with patches, and smplayer was then out of date; and I had to update that...and everything got out of sync.
window mode did stutter
I don't how to fix this. It's why I went back to my overlays to get the framerate up.
You saying netrunner worked better at least gives me something to try, I'll get some stats to prove whether it is or not, and if so look at copying the relevant parts of the X stack into the Ubuntu base.
I don't how to fix this. It's why I went back to my overlays to get the framerate up.
Every flip to the next frame, the code path through X instead of just updating the window, goes through this code path where it copies the entire buffer into another buffer from kwin which is ~4px wider containing the window borders. Pretty wasteful.
Turn off both borders and shadows and you can make it fly as it doesn't need to copy anything, but that doesn't work when windowed and embbed in smplayer.
Apparently other X drivers just have ways of doing faster copies using lowlevel hardware image-copying functions. Ours has one, but it throws an error if the two buffers are not the same size, making it useless for this case.
What Xdriver is it used here? Any way to not make it throw an error?
xf86-video-armsoc (the DRM one)
I had tried the removing the check, but then it gets into kernel code which will return an error or just crash the system.
For this gpu approach, do we use the exact same stuff + method as in netrunner?
As it's not on the same base it will be different stuff everywhere; different X, different mpv, different libs. Same X driver, same mali blobs.
Method is subtly different:
Netrunner is doing gpu decoding and gpu rendering.
Neon (this fosdem version) does hw decoding and gpu rendering, which from my results always gave /considerably/ lower mpv CPU, just not where the bottleneck is.
With the same file with a large window on Netrunner I'm still seeing similar sized stutters and framedrops, so I'm not particularly convinced there's anything magic there.
Netrunner 20171221: There are occasional black blibs on Netrunner while playing back video, but the window can be at least 2/3 screen in window mode, so it is visibly better than FOSDEM windowed mode?
Personally I didn't think there was a big issue watching the FOSDEM image at 2/3 screen. I guess it depends on the video.
Measuring it, there is a subtle performance difference:
For the same 720p video in a window filling the screen height (but not full screen) Neon GPU rendering: 2180 framedrops Netrunner GPU rendering: 1700 framedrops
So something about the stack made a difference. I got the neon one down to 1950, just by turning off some X debug.
There may be a solution, turning on kwin's GL mode saves X doing one of the copying. We turned it off because of "glitches", but if fixing that is faster than speeding this up, it could work.
From last image:
I've updated the config so hopefully that weird menu glitch won't happen on a clean setup. (I can't test for absolute sure till I have a clean image, I'll let you know when I've done that)
We don't get the warnings about mpv crashing in smplayer
As for speed:
There may be a solution, turning on kwin's GL mode saves X doing one of the copies.
As found out on #netrunnerlinux you and I were running different netrunners, so actually it seems we were talking about the same thing here.
info: Plasma: GL ES Kwin Compositing: Xrender, as Kwin GL ES is faulty redrawing stuff (bad lines, etc.) Compositor: drawing stuff on top/transparency,blur Xrender: simulated method of drawing stuff on top using X
issues:
plus side: