moehammered / switch-remote-play Goto Github PK
View Code? Open in Web Editor NEWLet the switch remotely play PC games (similar to steam link or remote play)
License: GNU General Public License v3.0
Let the switch remotely play PC games (similar to steam link or remote play)
License: GNU General Public License v3.0
Not sure what to classify this, as it may be game specific.
Game: Horizon Zero Dawn
Video: Attached.
Config:
use_manual_mode=yes;
broadcast_address=10.10.0.255;
manual_ip=10.10.0.253;
desired_framerate=60;
desktop_resolution=2560x1440;
switch_resolution=1280x720;
bitrate_kb=8192;
vsync_mode=variable frame rate;
encoder_preset=medium;
quality_control_factor=5;
video_codec=h264_nvenc;
hwaccel_mode=auto;
controller_mode=x360;
controller_map=invert xyab;
mouse_on_connect=no;
mouse_sensitivity=8;
decoder_flags1=low delay;
decoder_flags2=fast;
decoder_hwaccelflags=experimental,ignore level;
decoder_skip_loop_filter=discard all;
decoder_thread_type=thread slice;
decoder_thread_count=4;
mouse_left_click=R;
mouse_right_click=ZR;
Game runs fine, in game has no flicke
ring, but when you go to map screen, there is intensive flicker.. Resolution does not affect the issue at all.
Wiki needs to be updated to include the configuration changes and additional features introduced for v1.0.
I am learning how to compile on Switch. I can't find detailed instructions on how to compile the .nro
Just install devkitpro here I opened MSys2 installed by DevKitPRO, I went to the folder "switch-remote-play\switch-project" and run Make -i.
These are the results:
marlo@DESKTOP-S9BOJ7I MSYS ~/switch-remote-play/switch-project
$ make -dependencia
make: invalid option -- c
make: invalid option -- a
Usage: make [options] [target] ...
Options:
-b, -m Ignored for compatibility.
-B, --always-make Unconditionally make all targets.
-C DIRECTORY, --directory=DIRECTORY
Change to DIRECTORY before doing anything.
-d Print lots of debugging information.
--debug[=FLAGS] Print various types of debugging information.
-e, --environment-overrides
Environment variables override makefiles.
-E STRING, --eval=STRING Evaluate STRING as a makefile statement.
-f FILE, --file=FILE, --makefile=FILE
Read FILE as a makefile.
-h, --help Print this message and exit.
-i, --ignore-errors Ignore errors from recipes.
-I DIRECTORY, --include-dir=DIRECTORY
Search DIRECTORY for included makefiles.
-j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg.
-k, --keep-going Keep going when some targets can't be made.
-l [N], --load-average[=N], --max-load[=N]
Don't start multiple jobs unless load is below N.
-L, --check-symlink-times Use the latest mtime between symlinks and target.
-n, --just-print, --dry-run, --recon
Don't actually run any recipe; just print them.
-o FILE, --old-file=FILE, --assume-old=FILE
Consider FILE to be very old and don't remake it.
-O[TYPE], --output-sync[=TYPE]
Synchronize output of parallel jobs by TYPE.
-p, --print-data-base Print make's internal database.
-q, --question Run no recipe; exit status says if up to date.
-r, --no-builtin-rules Disable the built-in implicit rules.
-R, --no-builtin-variables Disable the built-in variable settings.
-s, --silent, --quiet Don't echo recipes.
--no-silent Echo recipes (disable --silent mode).
-S, --no-keep-going, --stop
Turns off -k.
-t, --touch Touch targets instead of remaking them.
--trace Print tracing information.
-v, --version Print the version number of make and exit.
-w, --print-directory Print the current directory.
--no-print-directory Turn off -w, even if it was turned on implicitly.
-W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
Consider FILE to be infinitely new.
--warn-undefined-variables Warn when an undefined variable is referenced.
This program built for x86_64-pc-msys
Report bugs to <[email protected]>
# GNU Make 4.3
# Built for x86_64-pc-msys
# Copyright (C) 1988-2020 Free Software Foundation, Inc.
# License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
# This is free software: you are free to change and redistribute it.
# There is NO WARRANTY, to the extent permitted by law.
# Make data base, printed on Wed Oct 6 11:41:13 2021
# Variables
# environment
SYSTEMDRIVE = C:
# environment
USERPROFILE = C:\Users\marlo
# environment
ProgramW6432 = C:\Program Files
# environment
LOCALAPPDATA = C:\Users\marlo\AppData\Local
# environment
SYSTEMROOT = C:\WINDOWS
# environment
PROCESSOR_LEVEL = 16
# environment
GOPATH = C:\Users\marlo\go
# environment
ORIGINAL_TEMP = /home/marlo/AppData/Local/Temp
# default
.VARIABLES :=
# environment
PWD = /home/marlo/switch-remote-play/switch-project
# environment
HOSTNAME = DESKTOP-S9BOJ7I
# environment
PS1 = \[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[35m\]$MSYSTEM\[\e[0m\] \[\e[33m\]\w\[\e[0m\]\n\$
# environment
OLDPWD = /home/marlo/switch-remote-play
# default
.LOADED :=
# environment
TMP = /tmp
# environment
ChocolateyInstall = C:\ProgramData\chocolatey
# environment
MSYSCON = mintty.exe
# environment
PKG_CONFIG_PATH = /usr/lib/pkgconfig:/usr/share/pkgconfig:/lib/pkgconfig
# environment
DEVKITARM = /opt/devkitpro/devkitARM
# environment
MSYSTEM_CARCH = x86_64
# environment
PROGRAMFILES = C:\Program Files
# default
.SHELLFLAGS := -c
# environment
!C: = c:\devkitPro\msys2
# environment
PSModulePath = C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
# environment
tmp = C:\Users\marlo\AppData\Local\Temp
# environment
IDF_TOOLS_PATH = C:\Users\marlo\.espressif
# environment
ProgramFiles(x86) = C:\Program Files (x86)
# environment
DEVKITPPC = /opt/devkitpro/devkitPPC
# environment
OneDriveConsumer = C:\Users\marlo\OneDrive
# environment
MANPATH = /usr/local/man:/usr/share/man:/usr/man:/share/man
# environment
OneDrive = C:\Users\marlo\OneDrive
# environment
INFOPATH = /usr/local/info:/usr/share/info:/usr/info:/share/info
# environment
SHELL = /usr/bin/bash
# environment
ORIGINAL_PATH = /c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/
# environment
HOMEPATH = \Users\marlo
# environment
SHLVL = 1
# environment
COMSPEC = C:\WINDOWS\system32\cmd.exe
# environment
WINDIR = C:\WINDOWS
# environment
PATH = /usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
# environment
COMPUTERNAME = DESKTOP-S9BOJ7I
# environment
CommonProgramFiles(x86) = C:\Program Files (x86)\Common Files
# environment
PROMPT = $P$G
# environment
TZ = America/Bogota
# environment
LOGONSERVER = \\DESKTOP-S9BOJ7I
# environment
CONTITLE = MSYS2 MSYS
# environment
USERNAME = marlo
# environment
TERM_PROGRAM = mintty
# environment
COMMONPROGRAMFILES = C:\Program Files\Common Files
# environment
PRINTER = Microsoft Print to PDF
# environment
DEVKITPRO = /opt/devkitpro
# environment
ChocolateyLastPathUpdate = 132774102706317532
# environment
MSYSTEM_CHOST = x86_64-pc-msys
# environment
PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW
# environment
ChocolateyToolsLocation = C:\tools
# environment
CONFIG_SITE = /etc/config.site
# environment
USERDOMAIN = DESKTOP-S9BOJ7I
# environment
GNUMAKEFLAGS :=
# environment
OS = Windows_NT
# environment
MSYSTEM_PREFIX = /usr
# environment
USER = marlo
# environment
USERDOMAIN_ROAMINGPROFILE = DESKTOP-S9BOJ7I
# environment
NUMBER_OF_PROCESSORS = 3
# environment
PUBLIC = C:\Users\Public
# environment
ProgramData = C:\ProgramData
# environment
_ = /usr/bin/make
# environment
APPDATA = C:\Users\marlo\AppData\Roaming
# environment
HOMEDRIVE = C:
# environment
LC_CTYPE = es_MX.UTF-8
# environment
PROCESSOR_ARCHITECTURE = AMD64
# environment
!:: = ::\
# environment
DriverData = C:\Windows\System32\Drivers\DriverData
# environment
MSYSTEM = MSYS
# environment
HOME = /home/marlo
# environment
temp = C:\Users\marlo\AppData\Local\Temp
# environment
CommonProgramW6432 = C:\Program Files\Common Files
# environment
TERM = xterm
# environment
TEMP = /tmp
# default
.RECIPEPREFIX :=
# environment
ORIGINAL_TMP = /home/marlo/AppData/Local/Temp
# environment
WD = C:\devkitPro\msys2\usr\bin\
# environment
ALLUSERSPROFILE = C:\ProgramData
# environment
SESSIONNAME = Console
# default
.FEATURES := target-specific order-only second-expansion else-if shortest-stem undefine oneshell nocomment grouped-target extra-prereqs archives jobserver output-sync check-symlink load
# environment
PROCESSOR_REVISION = 0502
# environment
TERM_PROGRAM_VERSION = 3.5.1
# environment
PROCESSOR_IDENTIFIER = AMD64 Family 16 Model 5 Stepping 2, AuthenticAMD
# variable set hash-table stats:
# Load=86/1024=8%, Rehash=0, Collisions=5/88=6%
# Pattern-specific Variable Values
# No pattern-specific variable values.
# Directories
# No files, no impossibilities in 0 directories.
# Implicit Rules
# No implicit rules.
# Files
# files hash-table stats:
# Load=0/1024=0%, Rehash=0, Collisions=0/0=0%
# VPATH Search Paths
# No 'vpath' search paths.
# No general ('VPATH' variable) search path.
# No strcache buffers
# Finished Make data base on Wed Oct 6 11:41:13 2021
marlo@DESKTOP-S9BOJ7I MSYS ~/switch-remote-play/switch-project
$ make -i
MainScreen.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/MainScreen.h:6,
from C:/Users/marlo/switch-remote-play/switch-project/source/MainScreen.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: MainScreen.o] Error 1 (ignored)
ScreenRenderer.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ScreenRenderer.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ScreenRenderer.h:4:10: fatal error: SDL2/SDL.h: No such file or directory
4 | #include <SDL2/SDL.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: ScreenRenderer.o] Error 1 (ignored)
main.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/main.cpp:11:
C:/Users/marlo/switch-remote-play/switch-project/source/ScreenRenderer.h:4:10: fatal error: SDL2/SDL.h: No such file or directory
4 | #include <SDL2/SDL.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: main.o] Error 1 (ignored)
Broadcast.cpp
CommandSender.cpp
Connection.cpp
NetworkConfiguration.cpp
NetworkDiscovery.cpp
ControllerMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/ControllerMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/ControllerMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: ControllerMenu.o] Error 1 (ignored)
DecoderAccelMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderAccelMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderAccelMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderAccelMenu.o] Error 1 (ignored)
DecoderDiscardMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderDiscardMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderDiscardMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderDiscardMenu.o] Error 1 (ignored)
DecoderFlag1Menu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderFlag1Menu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderFlag1Menu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderFlag1Menu.o] Error 1 (ignored)
DecoderFlag2Menu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderFlag2Menu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderFlag2Menu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderFlag2Menu.o] Error 1 (ignored)
DecoderMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderMenu.o] Error 1 (ignored)
DecoderThreadMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderThreadMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/DecoderThreadMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderThreadMenu.o] Error 1 (ignored)
EncoderMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/EncoderMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/EncoderMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: EncoderMenu.o] Error 1 (ignored)
GenericCodecMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/GenericCodecMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/GenericCodecMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: GenericCodecMenu.o] Error 1 (ignored)
H264AmfMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/H264AmfMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/H264AmfMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: H264AmfMenu.o] Error 1 (ignored)
H264Menu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/H264Menu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/H264Menu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: H264Menu.o] Error 1 (ignored)
HelpMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/HelpMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/HelpMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: HelpMenu.o] Error 1 (ignored)
Menu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: Menu.o] Error 1 (ignored)
MouseMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/MouseMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/MouseMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: MouseMenu.o] Error 1 (ignored)
NetworkMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/NetworkMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/NetworkMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: NetworkMenu.o] Error 1 (ignored)
SimulatedTouchMouseMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/SimulatedTouchMouseMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/SimulatedTouchMouseMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: SimulatedTouchMouseMenu.o] Error 1 (ignored)
Text.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/Text.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Text.h:4:10: fatal error: SDL2/SDL.h: No such file or directory
4 | #include <SDL2/SDL.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: Text.o] Error 1 (ignored)
TouchMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/TouchMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/TouchMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: TouchMenu.o] Error 1 (ignored)
VirtualTouchMenu.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/ui/VirtualTouchMenu.h:4,
from C:/Users/marlo/switch-remote-play/switch-project/source/ui/VirtualTouchMenu.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/ui/Menu.h:6:10: fatal error: SDL2/SDL_render.h: No such file or directory
6 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: VirtualTouchMenu.o] Error 1 (ignored)
FileOperations.cpp
SoftwareKeyboard.cpp
SystemSetup.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/system/SystemSetup.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/system/SystemSetup.h:4:10: fatal error: SDL2/SDL_render.h: No such file or directory
4 | #include <SDL2/SDL_render.h>
| ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: SystemSetup.o] Error 1 (ignored)
AudioPlayback.cpp
C:/Users/marlo/switch-remote-play/switch-project/source/stream/AudioPlayback.cpp: In member function 'int32_t AudioPlayback::ReadPackets(const int32_t&)':
C:/Users/marlo/switch-remote-play/switch-project/source/stream/AudioPlayback.cpp:80:24: warning: comparison of integer expressions of different signedness: 'int' and 'uint32_t' {aka 'unsigned int'} [-Wsign-compare]
80 | } while (totalRead < packetsPerFrame && udpSocket > 0);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~
PcmStream.cpp
StreamDecoder.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/stream/StreamDecoder.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/stream/StreamDecoder.h:6:14: fatal error: libavformat/avformat.h: No such file or directory
6 | #include <libavformat/avformat.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: StreamDecoder.o] Error 1 (ignored)
VideoStream.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/stream/VideoStream.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/stream/VideoStream.h:6:14: fatal error: libavcodec/avcodec.h: No such file or directory
6 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: VideoStream.o] Error 1 (ignored)
HWAccel.cpp
Resolution.cpp
VideoCodec.cpp
VsyncMode.cpp
WordDelimiter.cpp
H264Codec.cpp
H264Configuration.cpp
H264Options.cpp
H264AmfCodec.cpp
H264AmfConfiguration.cpp
h264amfEnums.cpp
h264amfOptions.cpp
GenericCodec.cpp
GenericCodecConfiguration.cpp
GenericOptions.cpp
Configuration.cpp
FlagMapUtils.cpp
JoyConUtility.cpp
PadUtility.cpp
DecoderAccel.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderAccel.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderAccel.h:10:14: fatal error: libavcodec/avcodec.h: No such file or directory
10 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderAccel.o] Error 1 (ignored)
DecoderConfiguration.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderConfiguration.h:6,
from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderConfiguration.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderOptions.h:10:14: fatal error: libavcodec/avcodec.h: No such file or directory
10 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderConfiguration.o] Error 1 (ignored)
DecoderFlag.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderFlag.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderFlag.h:9:14: fatal error: libavcodec/avcodec.h: No such file or directory
9 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderFlag.o] Error 1 (ignored)
DecoderOptions.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderOptions.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DecoderOptions.h:10:14: fatal error: libavcodec/avcodec.h: No such file or directory
10 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DecoderOptions.o] Error 1 (ignored)
DiscardType.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DiscardType.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/DiscardType.h:9:14: fatal error: libavcodec/avcodec.h: No such file or directory
9 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: DiscardType.o] Error 1 (ignored)
ThreadType.cpp
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/decoder/ThreadType.cpp:1:
C:/Users/marlo/switch-remote-play/switch-project/source/decoder/ThreadType.h:9:14: fatal error: libavcodec/avcodec.h: No such file or directory
9 | #include <libavcodec/avcodec.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:14: ThreadType.o] Error 1 (ignored)
ControllerAnalogMap.cpp
ControllerButtonMap.cpp
ControllerConfiguration.cpp
ControllerMode.cpp
ControllerOptions.cpp
C:/Users/marlo/switch-remote-play/switch-project/source/controller/ControllerOptions.cpp: In function 'const std::unordered_map<controller::Parameters, std::__cxx11::basic_string<char> > controller::ControllerParamsToStr(controller::ControllerConfig)':
C:/Users/marlo/switch-remote-play/switch-project/source/controller/ControllerOptions.cpp:9:14: warning: variable 'boolToStr' set but not used [-Wunused-but-set-variable]
9 | auto boolToStr = [](bool val)
| ^~~~~~~~~
SwitchButtons.cpp
MouseConfiguration.cpp
MouseOptions.cpp
SimulatedMouseConfiguration.cpp
SimulatedMouseOptions.cpp
TouchConfiguration.cpp
TouchOptions.cpp
VirtualTouchConfiguration.cpp
VirtualTouchOptions.cpp
SDL_FontCache.c
In file included from C:/Users/marlo/switch-remote-play/switch-project/source/SDL_FontCache.c:8:
C:/Users/marlo/switch-remote-play/switch-project/source/SDL_FontCache.h:36:10: fatal error: SDL2/SDL.h: No such file or directory
36 | #include <SDL2/SDL.h>
| ^~~~~~~~~~~~
compilation terminated.
make[1]: [/opt/devkitpro/devkitA64/base_rules:19: SDL_FontCache.o] Error 1 (ignored)
linking switch-remote-play.elf
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find MainScreen.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find ScreenRenderer.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find main.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find ControllerMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderAccelMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderDiscardMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderFlag1Menu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderFlag2Menu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderThreadMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find EncoderMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find GenericCodecMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find H264AmfMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find H264Menu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find HelpMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find Menu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find MouseMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find NetworkMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find SimulatedTouchMouseMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find Text.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find TouchMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find VirtualTouchMenu.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find SystemSetup.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find StreamDecoder.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find VideoStream.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderAccel.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderConfiguration.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderFlag.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DecoderOptions.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find DiscardType.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find ThreadType.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find SDL_FontCache.o: No such file or directory
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lSDL2_ttf
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lSDL2
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lSDL2_mixer
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lSDL2_image
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lEGL
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lglapi
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -ldrm_nouveau
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lavformat
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lavcodec
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lavutil
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lswresample
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lswscale
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lvpx
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lbz2
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lopus
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lfreetype
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lpng
c:/devkitpro/devkita64/bin/../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/ld.exe: cannot find -lz
collect2.exe: error: ld returned 1 exit status
make[1]: [/opt/devkitpro/libnx/switch_rules:80: /home/marlo/switch-remote-play/switch-project/switch-remote-play.elf] Error 1 (ignored)
c:\devkitpro\devkita64\bin\../lib/gcc/aarch64-none-elf/11.1.0/../../../../aarch64-none-elf/bin/nm.exe: 'C:/Users/marlo/switch-remote-play/switch-project/switch-remote-play.elf': No such file
make[1]: [/opt/devkitpro/libnx/switch_rules:81: /home/marlo/switch-remote-play/switch-project/switch-remote-play.elf] Error 1 (ignored)
built ... switch-remote-play.nacp
Failed to open input!
make[1]: [/opt/devkitpro/libnx/switch_rules:69: /home/marlo/switch-remote-play/switch-project/switch-remote-play.nro] Error 1 (ignored)
built ... switch-remote-play.nro
marlo@DESKTOP-S9BOJ7I MSYS ~/switch-remote-play/switch-project
$
Hey,
Just compiled the latest commits you did to test out the Virtual Touch..
If you don't want me reporting any testing/bugs let me know but.
Virtual Touch -- and Touch Mouse Input
Desktop Resolution: 1440p
Switch Resolution: 720p
Touch will only do part of the screen (i.e 720p - from origin 0:0) there's no calculation for touch input from switch to desktop resolution.
After connection and pressing R i see PC display on my Switch for only 1 sec. Then it back to main menu...
I have an error in console : Failed to connect bus for virtual controller with error code: 0xe0000001
SkyNX have this feature but the actual stream quality is very bad (not able to sustain 60 fps)
This feature is needed to make this aplication actualy able to emulate the WiiU gamepad with Cemu emulator (need a second monitor anyway for it to work)
Because this error occurred after my moniter breifly turned black, then reappeared and the command prompt gave me this error message.
C:\Users\Joseph Goldsmith\Downloads\switch-remote-play-host\ffmpeg.exe -probesize 32 -hwaccel auto -y -f gdigrab -framerate 60 -vsync vfr -video_size 1280x720 -i desktop -f h264 -vcodec h264 -vf "scale=1280x720" -preset ultrafast -crf 16 -tune zerolatency -pix_fmt yuv420p -x264-params "nal-hrd=vbr:opencl=true" -b:v 8192k -minrate 8192k -maxrate 8192k -bufsize 8192k tcp://10.0.0.110:20003
Failed to start process. CreateProcess error code: 193
Argument line passed to cmd:
C:\Users\Joseph Goldsmith\Downloads\switch-remote-play-host\ffmpeg.exe -probesize 32 -hwaccel auto -y -f gdigrab -framerate 60 -vsync vfr -video_size 1280x720 -i desktop -f h264 -vcodec h264 -vf "scale=1280x720" -preset ultrafast -crf 16 -tune zerolatency -pix_fmt yuv420p -x264-params "nal-hrd=vbr:opencl=true" -b:v 8192k -minrate 8192k -maxrate 8192k -bufsize 8192k tcp://10.0.0.110:20003
Failed to start process. CreateProcess error code: 193
Argument line passed to cmd:
C:\Users\Joseph Goldsmith\Downloads\switch-remote-play-host\ffmpeg.exe -y -f dshow -i audio="virtual-audio-capturer" -f s16le -ar 48000 -ac 2 -c:a pcm_s16le udp://10.0.0.110:20004
waiting for gamepad thread to shutdown...
making sure to kill stream...
terminating the FFMPEG process
Resetting resolution
Restoring audio mute state
Ready to receive a connection from the switch...
waiting for connection to server...
Any help would be appreciated.
And yes, i did meet all the prerequisites.
Everything else works just fine, but when I connect to switch audio on plays on desktop (after unmuting). I've installed and reinstalled the required drivers multiple times and restarted as well. I am also using bootcamp, Windows 10 Home.
edit: i figured it out not three minutes later, It seems my switch app wasnt the same version as my windows app, probably because i dowloaded through the homebrew browser
Could this be updated to support 4K monitors sometime? 1440p leaves out a significant portion of my screen.
.
Not really an issue, just so you do not forget like you suggested on GBATemp :)
Ability to stream only specific monitor or even better specific app.
"Make sure the ffmpeg.exe program is located in the same folder as the switch-remote-play-host.exe"
So, where is witch-remote-play-host.exe file?
There seems to be a bug where the program is reading the framerate, video capture size, and stream scale size from the wrong values. This is what the console shows when the config is set to 30 FPS, desktop resolution: 1280x720, and switch resolution: 1280x720.
Expected size of command payload: 72 bytes
Reading command...
Start stream with last received config from switch...
FFMPEG Configuration:
Vsync Mode: 2 (variable frame rate)
Target Framerate: 720 fps
Video Capture Size(x,y): 60, 1280
Stream Scale Size(x,y): 720, 1280
Preset: ultrafast
CRF: 0
Which gives an error: Capture area (0,0),(60,1280) extends outside window area (0,0),(3840,1080)desktop: I/O error
I am unable to connect my pc to the switch through remote play. My firewall is disabled and my ports are fine but I get this error everytime:
Output #0, h264, to 'tcp://192.168.0.56:20003':
Metadata:
encoder : Lavf58.45.100
Stream #0:0: Video: h264 (libx264), yuv420p, 1280x720, q=-1--1, 5632 kb/s, 30 fps, 30 tbn, 30 tbc
Metadata:
encoder : Lavc58.91.100 libx264
Side data:
cpb: bitrate max/min/avg: 5632000/0/5632000 buffer size: 5632000 vbv_delay: N/A
Failed to connect bus for virtual controller with error code: 0xe0000001
I have tried lowering the setting but it had not worked. What should I do?
Perform simple code cleanup over entire code base in preparation for v1.0.
Currently, there are a lot of settings the users can configure on the Switch. Some of these settings are numbers that have a large range (the AMD codec has quantisation settings that range from -1 to 61 for example).
To mitigate this issue (and future issues for configuration settings), input by the user will be taken via the software keyboard to improve convenience.
User stories
Settings to be moved over to software keyboard input
Everything else will maintain usage of the circulators in use already when A or B are pressed.
If this doesn't work, or stays stuck on 'Searching'. I got a windows firewall prompt and made sure to ALLOW the program access and made sure Flight Mode is OFF and your Switch and PC are connected on the same network. What's going on?
Hi, I downloaded this app today and Im unable to stream on my Windows 11.
I'm having the following error:
[gdigrab @ 000001fc6e5aeac0] Capture area (0,0),(576,1280) extends outside window area (0,0),(1920,1080)desktop: I/O error
I have dual monitor, tried only 1 monitor, still does not work.
Can you help me please?
Thanks in advance!
Frequently, while playing, the controls become completely unresponsive. This happens both with joycons connected or wireless, but controllers wired into the PC work during this time.
The joycons become responsive again usually within twenty seconds or so.
Can confirm it's not an issue with the joycons themselves. Don't believe it's a problem with my system itself but have not ruled that out, but I don't ever have problems with remote play with Oculus Quest 2, which leads me to believe it's the software.
Feature request by a user on gbatemp to allow inverting the analog stick axis.
change resolution back when stream stops without closing the window app.
so you can always have app running in the background.
ps: many thanks to you, Moehammered, such a nice app
I tried 0.9 and 1.0. I copied the files to the root of the sd card that includes the switch folder so that it goes to the proper place. I followed all these instructions
Download and install 'Screen Capture Recorder to Video Windows free' v0.12.11
Download and install 'ViGEM Bus' v1.16.116
Copy the 'switch-remote-play-host' folder from the PC folder to anywhere you like (Downloads, Desktop, Documents, etc...)
Make sure to whitelist it in Windows Security as it will be flagged as a virus and be quarantined
It used to work but now just black screen on the Switch.
Does 1.0 require me to update my switch? I did also do clean install on both PC and Switch but just black screen.
I tried to install screen capture and vigem bus. The audio is still not streamed. I just saw that 2 ffmpeg.exe are opened by switch remote play, I think it might be the problem.
Any way to get 4:4:4?
On the PC side, how many threads is the host application telling ffmpeg to use? I have a 16c/32t Ryzen 3950x, and while the stream is running I've noticed it's barely being pegged, and the stream framerate is low (26 @ 1440p desktop/48 @ 720p desktop). It doesn't matter what quality settings I use, framerate and CPU usage stays the same.
Oh yeah, my router is a Wireless-AC router, my PC is connected through ethernet and my Switch is connected to the 5GHz
Heya! This app works fantastic and I use it quite frequently now. Thank you for all your hard work.
I was wondering if it would be possible to have a "minimize to tray"-type of option. I intend to run the server 24/7 and an option to hide the window (with a way to bring it back, ideally!) would be much appreciated. I'd add it myself, but my C++ is rusty at best, sorry!
Thanks again for your work, and have a great day! ๐
The current docs don't work because switch-remote-play-host
is automatically deleted when extracted, both from 7zip and zip. There is no option in windows defender to allow this program before or after it's run.
To resolve this you must
switch-remote-play-host
switch-remote-play-host
folderTrojan:Win32/Wacatac.D6!ml
,switch-remote-play
doesn't include malware. I have no idea whether it does! Please check for yourself, it is a good security practice. Note, a quick review appears that this often is the result of unsigned binaries. Perhaps a separate issue should be created to sign your releases?Hi Moehammered! Thank you for your great work!
Unfortunately, all is good for me except the gamepad controls and it's buttons, it just all messed up โ i. e. pressing any buttons are causing phantom, for example A = pressing Y, B is = C, moving left stick = pressing all buttons in random order, etc.
I tried both the Xbox 360 preset and DualShock 4 profile, none of them are works for me.
And I cannot configure it via the Hardware Gamepad manager in Windows, too.
My PC configuration is:
Windows 7 with installed KB3033929-x64.msu, Setup.Screen.Capturer.Recorder.v0.12.11.exe, ViGEmBus_Setup_1.16.116.exe and Xbox360_64Eng.exe.
Network: Wifi 5Ghz
CPU: Intel 3770
RAM: 24GB 1600 Mhz
GPU: AMD R9 Fury
SSD: 128 GB
My Switch configuration is:
CPU, RAM: no overclock
CFW: Atmosphere M.17.1
System FW: 11.0.1
CFW on NAND (not emummc)
Help, please. (:
Currently the program supports only one controller to be connected at a time. When a 2nd controller is added, it is disconnected immediately. This means that to play multiplayer you need to connect the second controller (and 3rd, etc.) directly to the pc which somewhat defeats the purpose of this program.
I configure everything according to your wiki, but as soon as I press โRโ on my switch to start streaming, it causes my main monitor on my computer to go black, and then my entire computer locks up, causing me to have to hard reboot it.
I leave it to you to discern what button seems most appropriate for middle click (not a necessity), but for me the most natural implementation for scroll is right stick. It was where my mind went to when looking to perform the action, only to find the action was not implemented with any button combo. Other than that, absolutely stellar work so far!
So far the controls have only dropped once, but then most of my time with the app has been spent adjusting network settings, then opening the app and running around in Persona 4 Golden to see if the audio's still popping. Here's the network diagnostic from the windows app;
---- Network ----
Looking for active network interfaces...
Found an active network connection.
Ethernet {6FACE69C-06D3-4376-8F2A-61AB250B715B}
Intel(R) I211 Gigabit Network Connection
Connection type: Ethernet interface adapter
Status: Active
Max Transmission Speed: 1000 megabits/sec | 119.209 megabytes/sec
Max Receive Speed: 1000 megabits/sec | 119.209 megabytes/sec
IP Address: 192.168.50.86
Gateway: 192.168.50.1
Subnet Mask: 255.255.255.0
Broadcast: 192.168.50.255
Please make sure your Switch is on the same network as this network connection
Broadcast address for network discovery is: 192.168.50.255
My Switch is connected to this same router through 5GHz Wifi. I also tested the 2,4GHz signal with the same results.
Edit: Oh, also, the time the controls cut out, the sound also cut out for the same amount of time. I forget how long the cutout lasted.
Hi mate! I was wondering if it would be possible to implement the use of the arrows of the controller for matching the arrows of the keyboard when in mouse mode as well as the "A" button for matching the "Enter" key?
Cheers
my network uses a 192.168.2.XXX local ips
the switch is constantly "searching..."
PC has the entire firewall turned off.
Switch is on 5ghz about 15 feet away
manual IP would be nice as automatic searching doesn't work
After testing the new update, I found that the audio quality is both muffled, crackly, and is basically inaudible.
It's like this in both handheld and docked mode.
I'm using both the latest PC and Switch versions, and have double checked I've installed everything correctly.
Please, can you provide this application for linux too
Hello, when I open switch-remote-play-host.exe, I find that it is stuck at "Looking for active network interfaces..." How to solve it?
Network configuration at the moment doesn't follow the configuration pattern that is implemented for the other menu screens.
The refactor will also clean it up so that the following options are easily configurable by the user:
This is tied to the software keyboard refactor going on at the moment. (Issue #40)
Add a bind to swap touch modes while streaming.
connection success just one frame(i can see my computer's desktop in switch) then connection breaks.(hold R and it will connect success in another frame and then break)
this is the log information.(run as the administrator)
Switch Remote Play Host (^.^)/ (PC Application version - 0.8.1)
Ready to receive a connection from the switch...
waiting for connection to server...
Expected size of command payload: 64 bytes
Reading command...
Start stream with last received config from switch...
FFMPEG Configuration:
Vsync Mode: 2 (variable frame rate)
Target Framerate: 60 fps
Video Capture Size(x,y): 1280, 720
Stream Scale Size(x,y): 1280, 720
Target Stream Bitrate: 8192 kb/s
C:\Users\11747\Desktop\switch-remote-play-host\ffmpeg.exe -probesize 32 -hwaccel auto -y -f gdigrab -framerate 60 -vsync vfr -video_size 1280x720 -i desktop -f h264 -vcodec h264 -vf "scale=1280x720" -preset ultrafast -crf 16 -tune zerolatency -pix_fmt yuv420p -x264-params "nal-hrd=vbr:opencl=true" -b:v 8192k -minrate 8192k -maxrate 8192k -bufsize 8192k tcp://192.168.31.181:20003
waiting for connection to server...
ffmpeg version 4.3.1-2020-11-19-essentials_build-www.gyan.dev Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 10.2.0 (Rev5, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100
[gdigrab @ 0000027e4700f340] Capturing whole desktop as 1280x720x32 at (0,0)
waiting for gamepad thread to shutdown...
[gdigrab @ 0000027e4700f340] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, gdigrab, from 'desktop':
Duration: N/A, start: 1611824595.388240, bitrate: 1769497 kb/s
Stream #0:0: Video: bmp, bgra, 1280x720, 1769497 kb/s, 60 fps, 1000k tbr, 1000k tbn, 1000k tbc
Stream mapping:
Stream #0:0 -> #0:0 (bmp (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0000027e47013a00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0000027e47013a00] profile Constrained Baseline, level 3.2, 4:2:0, 8-bit
Output #0, h264, to 'tcp://192.168.31.181:20003':
Metadata:
encoder : Lavf58.45.100
Stream #0:0: Video: h264 (libx264), yuv420p, 1280x720, q=-1--1, 8192 kb/s, 60 fps, 60 tbn, 60 tbc
Metadata:
encoder : Lavc58.91.100 libx264
Side data:
cpb: bitrate max/min/avg: 8192000/0/8192000 buffer size: 8192000 vbv_delay: N/A
Failed to connect bus for virtual controller with error code: 0xe0000001
making sure to kill stream...
terminating the FFMPEG process
Resetting resolution
Restoring audio mute state
Ready to receive a connection from the switch...
waiting for connection to server...
Hey just requesting a few things..
I know in your documentation that you said that this was very low priority. I was looking at the encoder API library and I wanted to see what I might be able to do to help. Unless I have misread the code, I couldn't see where you made any API/encoder calls or where you were storing those functions.
I have a GTX 1070 in my current gaming PC so I would be happy to use it as a test rig and can get a few others to test on. Let me know how I can contribute and I'll happily do what I can.
I've tried allowing both ffmpeg and the pc host in the firewall, both app and pc are on the same version, tried the latest audio fix patch. still doesn't work. no matter what I do audio will not stream to the switch
There is switch-remote-play-host.exe like it says in the instructions so I not sure how Im expected to use this program. Where can I download switch-remote-play-host.exe?
I was following the guide in the instructions folder but i wasn't not able to find any 'switch-remote-play-host.exe' program in the repository
Hey, i cant start a stream, the homebrew stucks right after i press R when it says Stream pending Connection... What should i do?
any ways to improve audio quality? Or just play from the desktop and not switch?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.