QL-Win / QuickLook

Bring macOS “Quick Look” feature to Windows
http://pooi.moe/QuickLook/
GNU General Public License v3.0
17.45k stars 1.09k forks source link

Tons of frames being skipped when viewing GIFs [Or Desktop Window Manager is the bottleneck] #767

Open User198263321 opened 4 years ago

User198263321 commented 4 years ago

Whenever I view a gif, ​it runs at an extremely low framerate (skips frames) even though I am using an intel core i7 8th gen with around 13% cpu usage and barely any on my nvidia gpu at all . When I set the gpu to my intel gpu it uses much more ram but when I set it to my nvidia gpu the ram usage goes way down but I don't see any of my gpus or the cpu being stressed out.

In the video below, you can see that the desktop window manager is being used? I show the gif opened with quicklook running at around 5fps and comparing it with edge chromium, windows photos, and pot player which run it at full speed. Also note that it is not fully using my CPU nor GPU in task manager but it seems to be relying on desktop window manager.

Here is the GIF used: Ultra HD GIF Test (with zoom) - Imgur

Here is the video of proof: http://www.mediafire.com/file/r4j7favnv38j79i/quicklook_lag2.mp4/file

User198263321 commented 4 years ago

Even in your browser once the gif loads it probably plays perfectly fine.

User198263321 commented 3 years ago

It's actually pretty much all gifs. It's just so slow

User198263321 commented 3 years ago

After more testing, it does not slow down gifs, it just skips frames. Here is an EXTREMELY low res gif that still skips frames! This is a 20x7 resolution gif and it still skips frames! redstone_ore_dust

SheldonCurtiss commented 3 years ago

I've been waiting for this to be fixed forever. Holy fug.

SheldonCurtiss commented 3 years ago

@rabelux Please for love of god

User198263321 commented 3 years ago

I would also like to mention that when playing a video file, having the UI being rendered makes the video stutter considerably. It's much smoother once the UI disappears

Void48 commented 3 years ago

Gifs are really slow yeah :/

Xelbayria commented 2 years ago

ClockTest

I was learning how to use GIMP and used Quick Look to take a look at what I've created. Yeah. It skipped one frame. There are 12 frames in the GIF. it skipped 2nd frame after 1st Frame. It does that over and over. You can copy the GIF from me, and take a look. it's easy to see what's wrong.

Nerdwiththehat commented 2 years ago

Want to note this is still occuring, and a useability issue. Multiple frames will be skipped entirely on .gifs of any size or frame number. Testing against a .gif showing the number of the frame itself, only every second or third frame appears for the full length of the adjacent "skipped" frame.

s0urcelab commented 1 year ago

several months pass, any progress?

s0urcelab commented 1 year ago

@xupefei there're few issue relate to this bug, is there any plan to fix it?

xupefei commented 1 year ago

The GIF decoder and render is my shabby in-house implementation on top of the Winform (not even WPF) GIF decoder, so yes it can only get a "useable" stamp. Maybe it is time to try https://github.com/XamlAnimatedGif/XamlAnimatedGif again -- last time I tested that was five years before (and I found it uses a ton of CPU).

Any volunteers? It's just a two-line change AFAIK, something like https://github.com/QL-Win/QuickLook/commit/71f02c88b344e1256240e527d457594cc7f2246f.

User198263321 commented 1 year ago

Maybe you can try making a build artifact? Also, it still seems to lag for video files when I play a video and the overlay is showing. Once I move my mouse away and the overlay disappears, it's full speed.

s0urcelab commented 1 year ago

The GIF decoder and render is my shabby in-house implementation on top of the Winform (not even WPF) GIF decoder, so yes it can only get a "useable" stamp. Maybe it is time to try https://github.com/XamlAnimatedGif/XamlAnimatedGif again -- last time I tested that was five years before (and I found it uses a ton of CPU).

Any volunteers? It's just a two-line change AFAIK, something like 71f02c8.

Maybe you can release a dev/unstable version for those people who wanna help. I wanna try but i don't have C# compile environment on my PC...

xupefei commented 1 year ago

Maybe you can try making a build artifact?

I could if I can find some time.

Also, it still seems to lag for video files when I play a video and the overlay is showing. Once I move my mouse away and the overlay disappears, it's full speed.

The overlay has a DirectX shader to blur the background. Lag can happen if your GPU is underpowered and the video dimension is large. I once had an Intel HD620 GPU and observed no lag. What's your situation?

Xelbayria commented 1 year ago

The overlay has a DirectX shader to blur the background. Lag can happen if your GPU is underpowered and the video dimension is large. I once had an Intel HD620 GPU and observed no lag. What's your situation?

interesting. The issue I am seeing when using quicklook with GPU: Nvidia Geforce 1070 GTX. My screen resolution is 1980x1080. The GIF i created via GIMP is about 512x512 if i recall correctly 🤔

mth233 commented 1 year ago

Any progress Now?