Moonlight-Switch

From GameBrew
Moonlight-Switch
Moonlightswitchxit.png
General
AuthorXITRIX
TypeOther Apps
Version1.0.0
LicenseMixed
Last Updated2024/02/07
Links
Download
Website
Source

Moonlight-Switch is a port of Moonlight Game Streaming Project for Nintendo Switch.

A lot of code is based on Moonlight-NX, with improved controls and a number of new features.

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 latest Moonlight-Switch release.

Put Moonlight-Switch.nro to sdcard:/switch/Moonlight-Switch.

Launch hbmenu over Title Redirection (for FULL RAM access). Launch moonlight.

Or download it from HB App Store.

User guide

Controller options

Mouse:

  • With touch screen you can move your coursor, tap to left click, scroll 2 fingers to scroll.
  • While touching screen ZR and ZL buttons will work like left and right mouse buttons.
  • Also While touching screen L and R sticks will work like scrolling wheel.
  • USB mouse working as well.

Keyboard:

  • You can use onscreen keyboard, tap 3 fingers on screen to show it.
  • USB keyboard working as well.

Gamepad:

  • By default Switch gamepad configured as X360 gamepad (A/B and X/Y swapped). Key mapping available in application settings.
  • Up to 5 gamepads (includes handheld mode) supported. Half of joycons are also supported.

SixAxis:

  • You should configure your Sunshine server to recognise controller as DS4 one to be able to use Gyro and Accelerometer.
  • Only works for player 1 controller.

Ingame overlay

To open overlay, press Minus and Plus key simultaneously by default or Hold ESC on keyboard.

Key combination and holding time are configurable in settings.

NSP forwarder

App supports NSP forwarders to start stream immediately with predefined configuration. Add app you want to launch in Favorites list first.

You'll need to add thees arguments to the forwarder:

  • --host - Mac address of your PC (you could find it in /switch/Moonlight-Switch/settings.json)
  • --appid - ID of the app to launch
  • --appname - The name of the app without any spacings

Example: --host=a2:34:de:ad:12:3b --appid=1233211234 --appname=Steam

Controls

Minus+Plus - Open overlay (default)

Mouse input mode control:

Left Stick - Mouse control

Right Stick - Vertical scrolling

LZ - Right mouse button

RZ - Left mouse button

LB - Hold to decrease mouse speed

RB - Hold to increase mouse speed

Screenshots

moonlightswitchxit2.pngmoonlightswitchxit3.png

moonlightswitchxit4.pngmoonlightswitchxit5.png

Changelog

v1.0.0 2024/02/07

  • What's new:
    • SixAxis input support.
    • Touch input mode.
    • NSP forwarder support.
  • Improvements:
    • Better rumbling forces.
    • App stability.
    • Blocker screen for app launched in Applet Mode.
    • Moonlight-Common-C updated to the latest version.

v0.13.4 2023/10/28

  • Improvements:
    • Moonlight-Core version updated.

v0.13.3 2023/09/11

  • Fixes:
    • Touchscreen input finally works (looks like).

v0.13.2 2023/09/10

  • What's new:
    • Setting to enable\disable HW decoding.
    • Setting to choose between SDL2 and Audren audio drivers (both could work better then each other in different situations).
    • Setting to map Stick to DPad in split Joycon mode (needed in games like Tekken 7, stick just don't work to navigate in menu).
  • Improvements:
    • Moonlight-Core version updated.

v0.13.1 2023/09/10

  • NVDEC - Hardware acceleration is finally here!
  • HEVC is playable and not experimental anymore.
  • Native Audren audio driver was implemented instead of SDL's one (later will add an option to choose ... maybe).
  • Keep in mind, that you still could need to overclock CPU to be able to use higher streaming settings.
  • Thanks a lot to @averne to make it possible.

v0.13 2023/07/19

  • What's new:
    • AV1 Experimental support (looks like it works ... maybe).
    • Touchscreen-like mouse control support.
  • Improvements:
    • Moonlight-Core version updated.
    • In-app explanation for higher graphical settings.

v0.12.1 2022/12/13

  • Added Korean localization.
  • Fixed Chinese localization.

v0.8 2022/12/13

  • Added support for physical mouse and keyboard.
  • Added Japanese language.
  • Disabled screen dimming on stream active.
  • Screen aspect ration support added.
  • Minor fixes.

v0.12 2022/11/15

  • Moonlight-Core version updated.
  • App recompiled with latest versions of NXKit toolkits.

v0.11 2021/12/26

What's new:

  • Multiply controller support.
  • Key combo for Mouse input mode.
  • Chinese simplified localization.
  • About app page.
  • New touch to mouse gestures (tap as left click, 2 finger scroll).

Improvements:

  • Reduced memory leaks.
  • Minor bugs fixed.

v0.10 2021/10/16

  • Keys mapping layouts.

v0.9 2021/10/02

What's new:

  • Favorites tab.
  • Spanish localization.
  • German localization.

Improvements:

  • Reduced audio latency.
  • Mouse speed slider added.
  • Apps list improvements.
  • Hold ESC to open overlay (physical keyboard).

Bugfix:

  • Overlay combo now could be selected without access to touchscreen.
  • Guide button finally works.

v0.7.1 2021/08/31

Bugfixes:

  • Screen resolution now changes on connecting switch to external monitor.
  • Keyboard symbols on "Add host IP" now working properly.
  • Onscreen keyboard becomes unresponsive fixed.

v0.7 2021/08/30

Huge keyboard improvements:

  • Multitouch enabled, you can press several buttons simultaneously.
  • Added vibration feedback on button clicked.
  • Dock mode mouse control support added, open it in "ingame overlay".
  • Mouse control mode supports keyboard input using gamepad controller.

Mouse input mode control:

  • LStick - Mouse control
  • RStick - Vertical scrolling
  • LZ - Right mouse button
  • RZ - Left mouse button
  • LB - Hold to decrease mouse speed
  • RB - Hold to increase mouse speed

What's new:

  • Mouse input mode.
  • Refresh action in searching host.

Improvements:

  • Closing overlay by "B" button no longer triggers pressing it on Host device.
  • Default overlay combo changed to "-" + "+" buttons holding for 0 seconds.

v0.6 2021/08/07

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.

v0.5 2021/07/22

What's new:

  • Added settings to change Overlay opening keys combo and holding time.
  • Added "Guide" button combo selection.
  • Added setting to swap mouse buttons (ZL and ZR).
  • Completed on-screen keyboard. Shift, Ctrl, Alt buttons are working now. Ctrl+C, Alt+Tab, Ctrl+Alt+Del combos working as well..

Improvements:

  • Added charging battery indication.

v0.4 2021/07/18

What's new:

  • Added options to swap A/B and X/Y keys for UI or GameStream.
  • Added host waking functionality.
  • Added wireless indicator.
  • Added battery indicator.

Improvements:

  • Host searching improvements.
  • Added input blocking dialogs when user need to wait for app processing.

Fixed:

  • Crashes on app reopening.

v0.3 2021/07/17

What's new:

  • Localization support, feel free to create PR with your own localizations.
  • Added Russian localization.
  • Added quick action to continue running game by pressing "R" in app list screen.
  • Moonlight-Common updated to the latest version.

Known issues:

  • Rare crashes on opening app list screen.

v0.2 2021/07/10

What's new:

  • Added numbers and bunch of symbols to onscreen keyboard.
  • Added controller's rumbling.
  • Added host searching in local network.
  • Added icon (stolen from google).

Known issues:

  • Rare crashes on opening app list screen.

v0.0.1-1 2021/06/22

Fixed:

  • Freezes and crashes on unstable wifi connection.
  • Crashes on pausing stream by pressing "home" button, or sleep mode.

v0.1.1 2021/06/16

What's done:

  • Pairing with host.
  • Settings screen.
  • App list screen.
  • Streaming screen.
  • Gamepad input.
  • Touchscreen mouse input (LT and RL works like mouse's buttons while holding screen).
  • Onscreen keyboard - tap 3 fingers on screen to show it (not fully finished yet, but works).
  • Ingame overlay (hold '+' button for a 3 seconds to open it).

Known issues:

  • Crashes on unstable wifi connection.
  • Crashes on pausing stream by pressing "home" button, or sleep mode.

Credits

Thanks a lot to Rock88 and his Moonlight-NX, lots of streaming code has been lend from it.

Also thanks to Averne for NVDEC implementation into FFmpeg and useful guidance of how to enable it.

External links

Advertising: