ripose-jp / Memento

An mpv-based video player for studying Japanese
https://ripose-jp.github.io/Memento/
GNU General Public License v2.0
492 stars 21 forks source link

Strange banding when playing video #236

Open kik4444 opened 3 months ago

kik4444 commented 3 months ago

Hello, I apologize if banding is not the correct term since I'm not sure what is. Here's a small example. Try playing this video in Memento https://www.youtube.com/watch?v=5_oqWE9otaE

When I play it in Memento with a default configuration I have this weird banding that can be seen in the first few seconds of the video: 2024-08-24_12:16:24

If I press b to enable deband then it looks like this: 2024-08-24_12:17:13

Certainly better, but still not very good. But if I play the same video in MPV directly (again with a default config) then it looks normal even without deband enabled: 2024-08-24_12:18:45

Any idea what causes this? I'm running NixOS and Hyprland 0.42. The problem occurs only in Wayland. In Xwayland it's fine. Back when I used KDE 5 and KDE 6 this problem did not occur. It happened after I moved to Hyprland which leads me to believe it might be related to the wlroots compositor or the aquamarine compositor that Hyprland now uses which is backwards compatible with wlroots as far as I know.

ripose-jp commented 3 months ago

Not sure what's causing this. Though I don't think you can compare the output of Memento to mpv directly since Memento relies on --vo=libmpv while mpv generally uses --vo=gpu or --vo=gpu-next, which are different rendering back ends. Essentially I wouldn't expect them to share the same bugs or behavior. This is almost certainly something happening at a lower level than Memento. You should start by reporting this to the mpv issue tracker. I have no knowledge of whether something like this could be caused by aquamarine, wlroots, or Wayland, so I recommend mentioning that in your mpv issue.

The only thing I can think of is make sure that you're using software decoding instead of hardware decoding. I don't think you are using hwdec since you have to manually enable it, but it's worth checking. You can toggle hwdec with ctrl+h.