celluloid-player / celluloid

A simple GTK+ frontend for mpv
https://celluloid-player.github.io
GNU General Public License v3.0
1.1k stars 87 forks source link

mpv 0.36 supports the fractional-scale-v1 wayland extension, but celluloid still reports the wrong fullscreen resolution #874

Open stereomato opened 11 months ago

stereomato commented 11 months ago

Overview Description: title Steps to Reproduce:

  1. open celluloid
  2. load any video
  3. press i

Actual Results: celluloid still reports the wrong fullscreen resolution

Expected Results: celluloid reports the proper screen resolution when on fullscreen, which in my case is 1080p.

Version: Celluloid 0.25

Additional Information: I'm on nixos, but I've checked that celluloid was indeed using mpv 0.36

Kimiblock commented 8 months ago

I've tried GDK_DEBUG=gl-fractional celluloid but it doesn't help. The player interface seems right but pressing i still reports wrong resolution.

BTW this may be one of the causes of poor performance under Wayland such as https://github.com/celluloid-player/celluloid/issues/592.

Update: The new renderer ngl already supports and enabled fractional scaling by default, but Celluloid seems unaffected.

Froggy232 commented 4 months ago

Hi, I have the same problem, any news on that? Thanks you

gnome-mpv commented 4 months ago

I have the same problem, any news on that?

No. I don't have a HiDPI monitor, so it's difficult for me to work on this. Patches are welcome though.

stereomato commented 4 months ago

I have the same problem, any news on that?

No. I don't have a HiDPI monitor, so it's difficult for me to work on this. Patches are welcome though.

you can enable fractional scaling on gnome and that triggers this.

gnome-mpv commented 4 months ago

you can enable fractional scaling on gnome and that triggers this.

Thanks. I can reproduce the bug now, but I don't think this can be fixed yet.

Celluloid uses GtkGLArea to put videos in the window. From the source code, it's calculating texture size using integer scale factor, so we also have to use integer scale factor. It needs to be updated to use fractional scale fractor before we can switch.