zoeyjodon / moonlight-N3DS

Gamestream client for the New 3DS
https://github.com/moonlight-stream/moonlight-embedded/wiki
GNU General Public License v3.0
88 stars 4 forks source link

Feature Request : Screen Crop / Aspect Ratio options #27

Open FoilGear opened 3 months ago

FoilGear commented 3 months ago

/'m very impressed and pleased with the progress (and presence at all) of a Moonlight client for 3DS, nigh practical & shy of some quality of life. Could we please have options to:

-Force Aspect Ratio to Host (squishing the stream, to the introduction of negative-space bars or columns in the video stream) I have a monitor with a 16:9 ratio, the default dimension settings causes unusable distortion of the video stream, and with a remedied resolution (16:9, scaled to fit the 3DS' 2D-mode res, 400x225), the image is then clear, but it is stretched vertically. (Option to disable the last part.)

-Crop to Height (or Width) of Host ('zooming in' the stream, or cutting off some columns/rows (on each side, to center) to 'fill' the 3DS' display without requiring the user to drastically alter the output of the host) (This option may encourage users to set a stream-res akin to 427x240(?) for effective quality)

Thank you.

semi-irrelevance: -Audio isn't working for me, don't know if supported yet. This could stem from sunshine & audio sink settings, yet I've made it work elsewhere through an installed virtual audio service. -Inclusion in Universal Updater? I would love to get updates from there, and it may give this project publicity/support? just found it :> -Option, utilizing a resolution of '800x240', putting the upper display in 3D mode, to increase the horizontal resolution of the image? Idk if the 3DS works this way, an idea heard from a video-player homebrew. -I'm relatively new to github, I aim to be bearable.

zoeyjodon commented 3 months ago

Love the idea, although it means I'll probably have to stop putting off learning how to use GPU rendering and textures 😅

Addressing some of the other questions/comments though:

DragonWario commented 1 month ago

Would this have to be addressed on Sunshine's side, or would it be possible to fix on this side? For those without access to GameStream (I have an Intel Iris Xe iGPU at the moment)

zoeyjodon commented 1 month ago

I think Sunshine should actually already use the host display's aspect ratio when streaming, but GameStream will stretch the image to fit whatever the moonlight client requests so this would mostly be a feature for streaming from a GameStream host. This actually might be easier to implement with the newer rendering code though!