MOONLIGHT(1)

๐Ÿ“ฆ
version 2.7.1 ยท 2 versions
, in nixpkgs unstable

๐Ÿ’œ MOONLIGHT(1) โ€” like, the Moonlight Embedded manual, bestie ๐Ÿ’œ

Okay so real talk, this is the manual page for Moonlight Embedded, from the Moonlight Embedded Manual โ€” it's an open source implementation of NVIDIA's GameStream, and honestly? Iconic. Let's get into it ๐ŸŽ€


โœจ SYNOPSIS โœจ

Here's the vibe check on how you actually call this thing:

Usage: moonlight <action> [options] [host] [-port <number>]
       moonlight <configfile>

That's it, that's the whole shape of it. Slay.


๐ŸŒˆ ACTIONS ๐ŸŒˆ

Every good girlboss needs an action, and these are the ones Moonlight's serving:

  • pair โ€” pairs this computer with the host, so they're officially official ๐Ÿ’–
  • unpair โ€” breaks up with the host, no contact, blocking the number ๐Ÿ˜ญ
  • stream โ€” beams the game from the host over to this computer, the whole point, the main character behavior
  • list โ€” shows you every game and application chilling on the host, so you know what's available
  • quit โ€” kills the game or application that's currently running on the host, bye bestie ๐Ÿ‘‹
  • map โ€” makes a mapping for the specified INPUT device (iykyk)
  • help โ€” shows help for all available commands, your little safety net ๐Ÿซถ

โœจ OPTIONS โœจ

Grab a snack, there's a lot of them, but every single one matters, no skips:

  • -config [CONFIG] โ€” loads the configuration file CONFIG. Heads up bestie: all options you specify before -config get overwritten by whatever's in CONFIG. Also you can use this option multiple times, it stacks ๐Ÿ’…
  • -save [CONFIG] โ€” saves the config from the command line options plus every loaded configuration file into CONFIG. Not me archiving everything, but make it cute ๐ŸŽ€
  • -720 โ€” streams at 1280x720. This is the default, so if you do nothing, this is your life โœจ
  • -1080 โ€” streams at 1920x1080, a lil more highkey
  • -4k โ€” streams at 3840x2160, absolute luxury, main character energy ๐Ÿ‘‘
  • -width [WIDTH] โ€” sets the horizontal resolution to WIDTH
  • -height [HEIGHT] โ€” sets the vertical resolution to HEIGHT
  • -fps [FPS] โ€” sets frames per second to FPS. Defaults to 60 FPS โญ
  • -bitrate [BITRATE] โ€” sets the bitrate to BITRATE Kbps. Default depends on your resolution + FPS combo, so listen: for 1080p at 60 FPS and higher, it's 20 Mbps. For 1080p or 60 FPS and higher, it's 10 Mbps. For literally everything else, 5 Mbps is the default ๐Ÿฆ‹
  • -packetsize [PACKETSIZE] โ€” sets the network packetsize to PACKETSIZE bytes. > Bestie, the packetsize should be smaller than the MTU of the network, and it must be a multiple of 16. No cap. Default is 1392 on LAN and 1024 on WAN ๐ŸŒธ
  • -codec [CODEC] โ€” picks your codec. Options are 'auto', 'h264', 'h265', 'hevc', or 'av1'. Real talk though: not all video decoders support H.265/HEVC or AV1, and it'll still use H.264 if the server doesn't support HEVC or AV1. It tries its best ๐Ÿ’€
  • -remote [yes/no/auto] โ€” turns on optimizations for LAN or WAN streaming
  • -app [APP] โ€” changes the requested app to execute to APP. By default, Steam is what gets started ๐ŸŽฎ
  • -nosops โ€” stops GFE from messing with the graphical settings of the game or application you requested. Let it be, GFE ๐Ÿ™ˆ
  • -localaudio โ€” plays the audio on the host computer instead of on this device
  • -surround [5.1/7.1] โ€” enables surround sound instead of stereo, immersive girlie ๐ŸŒŠ
  • -keydir [DIRECTORY] โ€” changes where encryption keys get saved to DIRECTORY. By default they live in $XDG_CACHE_DIR/moonlight or ~/.cache/moonlight ๐Ÿ”
  • -mapping [MAPPING] โ€” uses MAPPING as the mapping file for all inputs. It should have the same format as gamecontrollerdb.txt for SDL2. By default, the gamecontrollerdb.txt that Moonlight Embedded provides is used ๐Ÿ•น๏ธ
  • -platform [PLATFORM] โ€” selects the platform for audio and video output and input. PLATFORM can be pi, imx, aml, x11, x11_vdpau, sdl or fake
  • -nounsupported โ€” don't stream if the resolution isn't officially supported by the server. Petty and valid ๐Ÿ’…
  • -quitappafter โ€” sends a quit app request to the remote after quitting the session
  • -viewonly โ€” disables all input processing (view-only mode), you're just here to watch ๐Ÿ‘€
  • -nomouseemulation โ€” disables gamepad mouse emulation (the thing that activates when you long press the Start button)
  • -verbose โ€” enables verbose output, she's chatty now
  • -debug โ€” enables verbose and debug output, maximum yapping ๐Ÿ”ฅ
  • -input [INPUT] โ€” enables the INPUT device. By default all available input devices are enabled. Only evdev devices /dev/input/event* are supported, so don't come at her with anything else
  • -audio [DEVICE] โ€” uses DEVICE as the audio output device. Default is 'sysdefault' for ALSA and 'hdmi' for OMX on the Raspberry Pi ๐Ÿ“
  • -windowed โ€” displays the stream in a window instead of fullscreen. Only available when X11 or SDL platform is used, so check your platform first bestie

๐ŸŽ€ CONFIG FILE ๐ŸŽ€

Moonlight Embedded will load a configuration file from here:

$XDG_CONFIG_HOME/moonligt/moonlight.conf (fallback to ~/.config/moonligt/moonlight.conf)
Yes, that's spelled moonligt in the paths โ€” I'm just the messenger, copy it exactly fr fr ๐Ÿ’€

If there's no user-specified configuration file available, the configuration gets loaded from:

/etc/moonlight/moonlight.conf

And a documented example configuration file can be found at /etc/moonlight/moonlight.conf too. Convenient, honestly ๐Ÿซถ


๐Ÿ’… COMMENTS ๐Ÿ’…

Wanna dip out of the streaming session? Use Ctrl+Alt+Shift+Q or Play+Back+LeftShoulder+RightShoulder. Two ways to say goodbye, periodt โœŒ๏ธ


๐Ÿ‘‘ AUTHOR ๐Ÿ‘‘

Iwan Timmer <irtimmer@gmail.com> โ€” the icon behind all this ๐Ÿ’œ


and that's the whole manual, bestie โœจ moonlight 2.5.0, dated 1980-01-01, MOONLIGHT(1) โ€” go forth and stream ๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from