jeffshee / gnome-ext-hanabi

Live Wallpaper for GNOME
GNU General Public License v3.0
863 stars 24 forks source link

Multiple monitor setup with different aspect ratios #30

Open oae opened 1 year ago

oae commented 1 year ago

Hi, I have a dual monitor setup with 2560x1440 and 3840x1600 resolutions. If I set up a background, One will be stretched. Is it possible to set the aspect ratio for each monitor? Or maybe we can assign different videos for different monitors?

Caliel666 commented 1 year ago

same, i think just some modes being added would be cool to fix this, like video cropping or stretch, possibly using ffmpeg for that as i know that doing that on the fly can be challenging

PavlySz commented 1 year ago

Yeah, I think a feature where the users can pick a wallpaper per monitor would be perfect.

oae commented 1 year ago

@jeffshee The background in my second screen is centered and it won't resize to fit the screen. image

jeffshee commented 1 year ago

@oae Thanks for reporting.

Did you tried other fit modes such as “cover”? What is the your monitor resolution? What happen if you set the larger one as the primary monitor?

If nothing works, it could be a bug in the extension that assigned the wallpaper to the wrong monitor.

oae commented 1 year ago

Main Monitor: 2560x1440 Second Monitor: 3840x1600

I tried other fit modes. They are the same. But as you mentioned, if I make my large monitor the main display, it works correctly

jeffshee commented 1 year ago

@oae Thanks for the reply~

Please help me to confirm a few more things. You will need the bash script run.sh, which is included in this repo.

  1. Reproduce the issue by setting back your primary monitor to the smaller one.
  2. Set the fit mode to "Cover".
  3. Disable Hanabi in the extension manager. You can also do it with run.sh, execute ./run.sh disable
  4. With the run.sh, execute ./run.sh renderer
  5. Now, there should be 2 windows displaying your video on each monitor. Are both of the windows full-screened, and showing on the expected monitor?

Also, please tell me your GNOME Shell version, on Wayland or X11. So far I couldn't reproduce the issue on my side, so more hints are much appreciated!

Below is the expected result of ./run.sh renderer. Both windows are full-screened on the correct monitor. Please use this as a reference. Monitor: (left) 2560x1440, (right) 1920x1080 Video: 2560x1440 Screenshot from 2023-03-13 22-02-33 Screenshot from 2023-03-13 22-03-33

cryofault commented 1 year ago

Setting to cover and running through the ./run.sh renderer does open the video with the desired effect instead of squishing the wallpaper on my secondary monitor whereas cover only applies to my primary monitor when the gnome extension is enabled properly.

Wamy-Dev commented 11 months ago

can you make it so one video covers all monitors?

I see it as you take the widths of all the monitors and the height of the largest one, make a box and put the video in the middle so you have one video covering all the monitors

bekopharm commented 10 months ago

I've also a more complex setup (avid flight/space sim player). "Cover" is currently the best option but some more fine tuning on this would be great. This is a feature that ultra wide display combinations would also require: A wide aspect ratio for the ultra wide and a more traditional one for any auxiliary monitor.

My current setup emulates an ultra wide with a triple head setup with an optional additional 4th auxiliary display below:

🖵🖵🖵
 [🖵] 

In theory this would be the job of Wayland to define a virtual monitor over all primary monitors (I did that with X11 before) but I wouldn't know how to do this with Wayland / Gnome and the requirement for this sort of vanished with gamescope anyway. So I can totally understand that this is probably out of scope for the extension.

sam30606 commented 7 months ago

I change the resolution per monitor then restore to previous resolution, the wallpaper become correctly.