Homebrew RELEASE Moonlight-Switch - Nvidia Game Stream client

s1cc

Active Member
Newcomer
Joined
Feb 5, 2017
Messages
27
Trophies
0
Age
23
XP
149
Country
Germany
What is the button combination for quitting the stream?
Performance wise it's similiar to the other port but this one got a very nice UI and is generally less of a hassle to start up good job!
 

Moehammered

Well-Known Member
Newcomer
Joined
May 21, 2019
Messages
76
Trophies
0
Age
29
Location
Shiga, Japan
XP
262
Country
Japan
Great job mate making this! Means there's less of a requirement for me to include nvidia encoder codecs in my application now that you've made an updated moonlight client. :)
(I'll still add it eventually but not any time soon...)

Thanks for making something awesome for the community.
 
Last edited by Moehammered,

Chrisssj2

Well-Known Member
Member
Joined
Feb 12, 2008
Messages
2,361
Trophies
0
XP
3,258
Country
Netherlands
I have created one another Moonlight port for Nintendo Switch and want to share it with you, so let's get started.

Features:
  • Support for 720p and 1080p resolution
  • Support for 30 and 60 fps modes
  • Configurable streaming bitrate
  • Host searching in local network
  • Ingame overlay with different options, hold "+" button for 3 seconds to open it
  • Onscreen keyboard support, tap 3 fingers on screen to open it, swipe anywhere outside of it to hide
  • Touchscreen mouse support, works like a PC touchpad, while holding a finger on screen, "ZL" and "ZR" will work like right and left mouse buttons
  • Rumble support

Installation:
  • Download the latest build from Moonloght-Switch [release page]
  • Put moonlight.nro to sdcard:/switch/moonlight
  • Launch HBMenu over Title Redirection (for FULL RAM access)
  • Launch Moonlight

My experience:
With stable wifi connection game streaming is very smooth, no freezes or crashes at all. I've already completed Sekiro: Shadows Die Twice on NG+3, and on a halfway of beating CodeVein, I think beating this soulslike games is a good marker of how playable it is. Also I'm playing Genshin Impact a a lot, I love how high end PC image quality looks on my Switch :D

If you'll have any issues or ideas for improvement, feel free to wright them on [issues page] on GitHub.
What I noticed was when I created a nsp forwarder. under folder switch/moonlightv2/moonlight.nro
And I started the homebrew. I saw my machine/host name. I was like wut. I am on airplane mode and I even didn't do anything in your app... so how did it know my machine name. Then I looked into settings and saw 8,5 MBPS was set. Which is exactly what I set moonlight NX as, since I have 10 MBPS upload and 8,5 mbps is more stable outside my network...

This all leds me to believe it somehow is using the same folder structure as moonlight NX to read or write it's settings?
And that can't be good I imagine... for conflicts and such. Can you confirm?

Also setting the slider back to something exact is next to impossible wether you are using arrows or touchscreen. I was playing around with it, but never got it back to 8,5. I did get it to 8,4. But it would be nice to more easily set your bitrate, accurately.
EDIT: After testing I found if I change it to 8.5 in moonlight nx. it will be 8.5 in your app. so defintely settings overlap. Any way to prevent this for each app to use it's own setting?

If you put an IP in the add host tab, and you switch tabs, the ip will be cleared. Even if you add your host IP. the IP will always reset to 10.0.0.19. Doesnt seem right.

From first glances. Mouse clicking is easier with moonlight nx.
Having left mouse click on right ZR is counter intuitive. Make left left, and right right if it were me..
Also having to reach so far back the controller the L+R buttons are more suited for it I think ergonomically.

Suggestion, if possible to make alt-tabbing, ctrl+alt+del, alt+F4 possible via the OSD keyboard.

I turn on log and debug, and I see stuff, but I don't see any decoder or connection ms etc. info. Not yet implemented?

Will tell more later after testing.

--------------------- MERGED ---------------------------

Great job mate making this! Means there's less of a requirement for me to include nvidia encoder codecs in my application now that you've made an updated moonlight client. :)
(I'll still add it eventually but not any time soon...)

Thanks for making something awesome for the community.
We've had moonlight nx for a long time.. so im not sure what you are saying? How does this differ
 
Last edited by Chrisssj2,

Moehammered

Well-Known Member
Newcomer
Joined
May 21, 2019
Messages
76
Trophies
0
Age
29
Location
Shiga, Japan
XP
262
Country
Japan
We've had moonlight nx for a long time.. so im not sure what you are saying? How does this differ

I'm aware of the original moonlight-nx. It just hasn't been touched for a while. Though it's coded very well and mainly only needs active maintenance for when libnx or Atmosphere do major changes or updates. (Like the HID libraries or firmware v11 requiring compilation with recent libnx if I remember right?)

This homebrew most likely leverages or uses the code from moonlight-nx. Author mentions them as well. Just nice to see a fork being actively worked on at the very least. Good for users :)

Edit: rereading your testing. If the settings are shared then it's most likely the author forked moonlight-nx and didn't get around to changing the code for where config files are saved or loaded.
 
Last edited by Moehammered,

XITRIX

Well-Known Member
OP
Newcomer
Joined
Jul 16, 2021
Messages
52
Trophies
0
Age
25
XP
226
Country
Russia
defintely settings overlap
Yes, I've made it on purpose, to allow to use settings from moonlight-nx in my app on fly with already paired PC, I'm not sure why you need different settings in both apps, but I can make it optional.

the IP will always reset to 10.0.0.19
Yes, it's just a placeholder, there are more critical things to do, so I'll replace it later.

Having left mouse click on right ZR is counter intuitive. Make left left, and right right if it were me..
I am not agree with you, you are clicking LMB with your forefinger on right hand, so you still click ZR button with same finger, if it's not comfortable for you, I could add mapping in settings. Also I find out moonlight-nx mouse controlling is unusable in steam bigscreen, cause L/R clicks always swap screens.

But it would be nice to more easily set your bitrate, accurately
I'll try to make selection more accurate.

Suggestion, if possible to make alt-tabbing, ctrl+alt+del, alt+F4 possible via the OSD keyboard.
Of course I'll do, as I said in the description on github, keyboard is not finished yet, i.e. shift key is not working.

I don't see any decoder or connection ms etc. info.
What kind of info do you need? I used this debugging info for myself to fix memory leaks and crashes, so I didn't thought about "user-friendly stuff" there, but still, it prints every log produced by moonlight-common.

If it's not a problem, could you create an issues on github about problems you've met?
 

Chrisssj2

Well-Known Member
Member
Joined
Feb 12, 2008
Messages
2,361
Trophies
0
XP
3,258
Country
Netherlands
Yes, I've made it on purpose, to allow to use settings from moonlight-nx in my app on fly with already paired PC, I'm not sure why you need different settings in both apps, but I can make it optional.


Yes, it's just a placeholder, there are more critical things to do, so I'll replace it later.


I am not agree with you, you are clicking LMB with your forefinger on right hand, so you still click ZR button with same finger, if it's not comfortable for you, I could add mapping in settings. Also I find out moonlight-nx mouse controlling is unusable in steam bigscreen, cause L/R clicks always swap screens.


I'll try to make selection more accurate.


Of course I'll do, as I said in the description on github, keyboard is not finished yet, i.e. shift key is not working.


What kind of info do you need? I used this debugging info for myself to fix memory leaks and crashes, so I didn't thought about "user-friendly stuff" there, but still, it prints every log produced by moonlight-common.

If it's not a problem, could you create an issues on github about problems you've met?

- moonlight settings, I just assumed it could interfere. If it doesn't I don't care for it.
- If you could make mouse mapping an option that would be great! :)
- about info osd, Well the same kind of info you'd get on moonlight nx or android version of moonlight. with all the connection ms, and frames dropped etc.
 

falcorr

Well-Known Member
Member
Joined
Sep 26, 2019
Messages
129
Trophies
0
XP
605
Country
Australia
The new UI version doesn't seem to respond to controls, e.g. display stats, exit session. Is this affecting anyone else?
 

XITRIX

Well-Known Member
OP
Newcomer
Joined
Jul 16, 2021
Messages
52
Trophies
0
Age
25
XP
226
Country
Russia
The new UI version doesn't seem to respond to controls, e.g. display stats, exit session. Is this affecting anyone else?
Describe your problem in more detail please, I cannot understand what's the problem to help you.
App is still in development state, so bugs can appear and I will do my best to fix them as soon as possible.


Released v0.5
- If you could make mouse mapping an option that would be great! :)
Implemented some stuff as you asked ;)
 
Last edited by XITRIX,
  • Like
Reactions: Rahkeesh

Ty_

Well-Known Member
Member
Joined
May 22, 2018
Messages
397
Trophies
0
Age
41
XP
1,162
Country
United Kingdom
EDIT: Turns out this is because Steam was running beforehand and it's defaulted to a weird setup in desktop mode. A heads up to all check how your steam controls are set if it takes over like this

In that case great job, no caveats :)



Great job so far on v0.5, it connects instantly and the latency is next to nothing. Using the screen to act as a trackpad works great too. The onscreen keyboard is fantastic too and makes it useful beyond just streaming games.

However I am having 2 issues:
  1. Pressing start also presses escape, which makes Retroarch next to impossible to play.
  2. The right stick always acts as a mouse. There are times when I just want to use the right stick but it also moves the mouse around which can be very distracting. I can see this being useful for docked, but at least an option to enable/disable it would be useful

If it wasn't for those I'd say it was next to perfect. Great job.
 
Last edited by Ty_,
  • Like
Reactions: XITRIX

XITRIX

Well-Known Member
OP
Newcomer
Joined
Jul 16, 2021
Messages
52
Trophies
0
Age
25
XP
226
Country
Russia
I am having 2 issues:
  1. Pressing start also presses escape, which makes Retroarch next to impossible to play.
  2. The right stick always acts as a mouse. There are times when I just want to use the right stick but it also moves the mouse around which can be very distracting. I can see this being useful for docked, but at least an option to enable/disable it would be useful

Hi, thanks for your feedback, I think I know what's the problem, right stick works as mouse only when "Guide" button pressed, it's windows feature, not moonlight's. As default it should trigger only by pressing "+" and "-" simultaneously, so your problem is a bit strange. Try to change keys binding in moonlight's settings, if it will not help, try to disable "guide" button in windows 10 DVR settings. Hope it will help!

Also, I still cannot understand how to make Steam overlay works by triggering "guide" button, DVR overlay works, Steam doesn't...
 
Last edited by XITRIX,
  • Like
Reactions: Ty_

Ty_

Well-Known Member
Member
Joined
May 22, 2018
Messages
397
Trophies
0
Age
41
XP
1,162
Country
United Kingdom
Hi, thanks for your feedback, I think I know what's the problem, right stick works as mouse only when "Guide" button pressed, it's windows feature, not moonlight's. As default it should trigger only by pressing "+" and "-" simultaneously, so your problem is a bit strange. Try to change keys binding in moonlight's settings, if it will not help, try to disable "guide" button in windows 10 DVR settings. Hope it will help!

Also, I still cannot understand how to make Steam overlay works by triggering "guide" button, DVR overlay works, Steam doesn't...

Thanks for the fast reply. I added an edit to the previous post, it was caused by weird button bindings from steam for desktop stuff. Changed it to act like a normal controller which lost the left and right mouse clicks but stopped all of the above annoying quirks.

All seems well now :)
 
  • Like
Reactions: XITRIX

XITRIX

Well-Known Member
OP
Newcomer
Joined
Jul 16, 2021
Messages
52
Trophies
0
Age
25
XP
226
Country
Russia
Release v0.6 (Download link)

What's new:
  • Mouse scrolling wheel by L and R sticks while touchscreen pressed
  • Option to invert scrolling direction
  • Added volume setting to ingame overlay
  • Added volume amplification option
Improvements:
  • Added scrolling indicator
  • Improved keyboard key click recognition
Fixed:
  • Guide button
  • Crash on stream termination when overlay is open
 

Dawnpatch

Member
Newcomer
Joined
Dec 23, 2012
Messages
6
Trophies
0
Age
25
XP
69
Country
United States
Hey, just wanted to say thank you for working on this software! It works incredibly well, I've been using it daily. The keyboard feature is literally a game changer. I was wondering though, is it possible to make the keyboard and mouse work while docked? Possibly open up the keyboard with a combination of buttons like ZL+(-) and use the Dpad to choose the keys. Also, when I do the guide button combination it does alt+tab, not sure if that is intentional or its my pc causing it to happen cause of a certain software. If that applies to all users though, then maybe another combination of ZR+(+) can turn on the right stick to control the mouse and left stick could do scrolling? If the steam guide button doesn't work then this I believe could be a good alternative to get back to big picture mode or desktop. If there is any way to help let me know cause this software is actually amazing and would love to support it. Has me playing games like FF XIV and Guilty Gear Strive in bed lol Also, would it be alright to make a video demonstrating it's capabilities to show others on youtube? I want people to see this as an awesome alternative to a device like a steam deck if one were to have the right conditions and hardware available to them!
 

Chrisssj2

Well-Known Member
Member
Joined
Feb 12, 2008
Messages
2,361
Trophies
0
XP
3,258
Country
Netherlands
Release v0.6 (Download link)

What's new:
  • Mouse scrolling wheel by L and R sticks while touchscreen pressed
  • Option to invert scrolling direction
  • Added volume setting to ingame overlay
  • Added volume amplification option
Improvements:
  • Added scrolling indicator
  • Improved keyboard key click recognition
Fixed:
  • Guide button
  • Crash on stream termination when overlay is open
Would it be possible to make moonlight work in detecting mutiple controllers you connect to the switch on the host pc? So you can plug in a ps4 dualshock with syscon and play co-op on a switch?
That feature would be super fking awesome so I can take my switch to my friends and play games on pc but in co-op with him. But idk if it is even technically feasible.
 
Last edited by Chrisssj2,

XITRIX

Well-Known Member
OP
Newcomer
Joined
Jul 16, 2021
Messages
52
Trophies
0
Age
25
XP
226
Country
Russia
I was wondering though, is it possible to make the keyboard and mouse work while docked?

I keep that idea in mind for a long time, but I have no idea how to make it convenient to use, I definitely want to make it possible.

it be alright to make a video demonstrating it's capabilities to show others on youtube?

It would be great, if someone will create a video like that!

Would it be possible to make moonlight work in detecting mutiple controllers you connect to the switch on the host pc? So you can plug in a ps4 dualshock with syscon and play co-op on a switch?
That feature would be super fking awesome so I can take my switch to my friends and play games on pc but in co-op with him. But idk if it is even technically feasible.

Sure, I'd like to add multiple gamepad support, as well as dual joycon support, but still I'm not fully understand how gamepad management works in Nintendo Switch's OS, but later I think I'll add it!
 
Last edited by XITRIX,
General chit-chat
Help Users
    KennieDaMeanie @ KennieDaMeanie: https://youtube.com/shorts/mCVK2BkF6MQ?feature=share