Jump to content

Switch Remote Play 0.9.0

Conéctate para seguir esto  

¿Quieres enterarte al momento de las nuevas descargas? Síguenos en Twitter!

1 Screenshot

Switch Remote Play es una aplicación que nos permite jugar en Switch a juegos de PC de forma remota, de una forma similar a lo que lo hace Steam Link o el Remote Play de Sony o el servicio similar que tiene Microsoft para Xbox).

Este proyecto está inspirado en In-Home-Switching y SkyNX. El objetivo es crear una aplicación cliente y streamer estable para poder jugar a los juegos de PC de forma remota en Nintendo Switch.

In-Home-Switching y SkyNX ya ofrecen esta funcionalidad, pero les faltan algunas características que me ha parecido conveniente añadir, a la vez que practico con C++.

Nota

El flujo de video depende de la CPU, ya que en este momento utiliza la opción ffmpeg de hwaccel auto, lo que generalmente hace que ffmpeg elija la CPU para el proceso de captura de pantalla. En mi fase inicial de creación de prototipos, encontré que elegir la opción de GPU AMD para ffmpeg conducía a resultados de transmisión inconsistentes. Veré la posibilidad de configurar la opción hwaccel en el futuro, pero por ahora solo tenga en cuenta que la CPU es importante.

Si está jugando un juego que consume mucha CPU, existe una alta probabilidad de que la transmisión tenga saltos o contratiempos. Si su CPU es débil, entonces será difícil que produzca y empuje los cuadros lo suficientemente rápido.

Para mi PC, cuando juego Nier Automata no hay contratiempos y puedo obtener cerca de 60 fps dependiendo de la configuración de transmisión (resolución de escritorio de 1280 x 720 y tasa de bits de 5mb / s). Pero cuando intenté jugar RE3 2020 a 30 o 56 fps, tenía hipo y saltos. Así que tenga esto en cuenta.

Características

  • El sistema no se bloquea cuando se va a dormir (la transmisión se desconectará y la aplicación se puede cerrar)
  • Aplicación de escritorio para alojar la transmisión de conexión remota
  • Transmita la entrada desde el interruptor a la conexión remota
  • Transmita audio desde la conexión remota al conmutador
  • Conecte automáticamente aplicaciones de transmisión de PC y conmutador
  • Silenciar automáticamente la PC cuando el audio se transmite al Switch
  • Permitir la configuración manual del conmutador a la conexión a PC
  • Configurar los ajustes de transmisión desde el conmutador
  • Desconectar / volver a conectar la transmisión a voluntad
  • Cambiar el modo de entrada a ratón
  • Alternar el modo de entrada al controlador DS4 (PS4)
  • Alternar el modo de entrada al controlador Xbox

General tips

  • Preset value controls how the encoder should work: ultrafast means the encoder performs to get the image out as fast as possible ignoring quality, and veryslow means the encoder can take its time to preserve image quality.
  • Codec value can help performance however I have tested both the AMF and standard h264 and don't notice much of a difference.
  • Quality control factor is what controls how good the image should be. The lower the value the harder your PC must work to maintain quality. (this value and 'Preset' are what will dictate your CPU's workload)
  • For more info see the ffmpeg documentation.

Config examples

  • Great image quality config:
    • Preset - veryslow
    • Quality control factor - less than 10 (0 = perfect image)
    • Bitrate - around 5000 - 8000
    • Vsync Mode - variable frame rate
  • Latency oriented config:
    • Preset - ultrafast
    • Quality control factor - 20+
    • Bitrate - around 5000
    • Vsync Mode - variable frame rate

I haven't tested all configuration combinations (and these are dependent on my PC specs), so if you find one that works great please feel free to send it to me with your PC specs and network environment configuration 🙂

Rare crash when opening some homebrew apps

The crash issue in v0.7.2 has been found and patched. (it was due to the network discovery feature not being shutdown correctly) The app still crashes however it is harder to reproduce now and I haven't found a proper 100% way to reproduce the crash yet. The current crashing issue is rare and only crashes hbloader/hbmenu when opening an app after streaming for a certain while. I can't reproduce it but it's gone for now. If anyone figures out how to reproduce the crash, please let me know.

Agradecimientos

  • jakibaki for the original In-Home-Switching switch application
  • DevL0rd for the updated streaming application SkyNX
  • FFmpeg for an exhaustingly extensive library
  • nefarius for the ViGEm Client SDK. It's such a nice SDK/library to use
  • rdp for screen-capture-recorder. Made streaming audio via FFmpeg on PC very easy
  • SwitchBrew for libNX
  • devkitPro bloody legends for letting us have a toolchain to compile stuff for the Switch
  • SciresM, TuxSH, hexkyz, and fincs for Atmosphere. Absolute madlads these lot are. Also a shoutout to the champs that help contribute to the repo.
  • Jonathan Dearborn for SDL_FontCache
  • cucholix for the app icon 🙂

Aplicación creada por Moehammered.


Que novedades incluye la versión 0.9.0

Released

Compatibilidad

  • Atmosphere CFW es el único firmware oficialmente compatible. SX OS no es compatible oficialmente.

Mucho ha cambiado bajo el capó. Este es un cambio importante, por lo que después del control de versiones semántico debería llevar esta versión a la v1.0, sin embargo, estoy guardando la v1.0 una vez que consiga obtener algunos otros cambios en.

De todos modos, esto significa que la v0.9.0 no es compatible en absoluto con versiones anteriores del programa. Por lo tanto, se recomienda eliminar por completo las versiones antiguas de Switch Remote Play. (No dude en hacer una copia de seguridad, por supuesto, en caso de que esta versión no le funcione).

Cambios en la aplicación de host de PC

  • Se eliminaron las definiciones de claves HID de Switch antiguas
    • LibNX finalmente ha eliminado la implementación de entrada HID obsoleta. Así que también los sacaron de aquí.
  • Carga útil de datos de configuración actualizada
    • Esto significa que el programa para PC espera switch-remote-play v0.9.0 y no funcionará con versiones anteriores.
  • Salida de diagnóstico de red actualizada
    • El consejo de la línea de configuración de la dirección de transmisión que genera ahora refleja el nuevo formato de archivo de configuración para la aplicación
  • Se agregó el analizador de argumentos del codificador Ffmpeg
    • Creó un analizador de argumentos ffmpeg que creará una línea de argumentos ffmpeg para códecs de codificador de CPU o GPU AMD
  • Texto de la consola en color
    • La salida de texto ahora está coloreada para ayudar a distinguir entre diferentes secciones de diagnóstico
    • Cualquier problema de inicio se coloreará en rojo para ayudar a identificar problemas.
  • Invertir eje analógico del controlador agregado # 20
  • Se agregó la capacidad de invertir los ejes analógicos X e Y para los sticks analógicos izquierdo y derecho

Cambios en la aplicación de Switch

  • Invertir eje analógico del controlador agregado # 20
    • Se agregó la capacidad de configurar e invertir los ejes analógicos X e Y para los sticks analógicos izquierdo y derecho
  • Se eliminó el uso de la API de entrada de Switch HID anterior
    • LibNX finalmente ha eliminado la implementación de entrada HID obsoleta. Así que también los sacaron de aquí.
  • Refactor de interfaz de usuario
    • Casi todas las pantallas de la interfaz de usuario tienen su código reescrito y refactorizado para que sea más fácil para mí agregar parámetros y más pantallas.
    • Esto no tiene ningún efecto en los usuarios, el comportamiento de la interfaz de usuario sigue siendo el mismo, solo el código detrás de ella ha cambiado mucho y todavía no estoy satisfecho con eso: P
  • Refactor de archivo de configuración
    • La configuración ahora se divide en archivos separados para cada opción / pantalla de configuración respectiva
    • Verá un archivo de configuración ahora para red, decodificador, común, etc.
    • Los archivos de configuración antiguos ya no son compatibles. Puede eliminarlos o hacer una copia de seguridad de ellos y ver si hay alguna configuración que le gustaría replicar en las nuevas pantallas de configuración
  • Revisión de la configuración del codificador: incluye el códec h264_amf (codificador AMD GPU)
    • El menú de configuración del codificador se ha revisado ahora para permitir elegir qué codificador h264 usar
      • Para elegir un códec diferente, recorra la opción 'códec' en la página Configuración del codificador
      • Use el d-pad left / right para cambiar a la página de parámetros del códec para configurar las opciones respectivas
    • El codificador de CPU h264 se simplificó y se agregaron otras opciones
      • El modo de tasa de bits se puede elegir ahora (constante o variable, antes siempre era variable)
      • Se agregó la opción de perfil (esto puede ayudar al hardware de gama baja o la latencia al elegir 'línea de base')
    • Se agregó el codificador h264 AMF (codificador de hardware AMD GPU)
      • Esta fue la única razón por la que necesitaba revisar y refactorizar completamente el código de la interfaz de usuario.
      • Las opciones agregadas que encontré tuvieron los efectos más dramáticos en las pruebas
  • Construido con la última versión de LibNX (v4.1.3 en este momento del lanzamiento)
    • Lo que significa que debería funcionar bien para el último firmware (12.0.3 en este momento)

Esta versión es una gran cantidad de cambios desde la última versión en febrero. Si he olvidado algo, lo siento.


¿Tienes alguna duda, petición o aporte? Utiliza el foro!



×
×
  • Crear nuevo...