Home Homebrew NX-ScreenUploader si aggiorna alla versione 0.3.0: Nuova architettura modulare, upload_videos e...

[Scena Switch] NX-ScreenUploader si aggiorna alla versione 0.3.0: Nuova architettura modulare, upload_videos e fix per Nintendo Switch

62
0

NX-ScreenUploader continua a evolversi con un nuovo aggiornamento che punta soprattutto a migliorare la struttura interna del progetto, la manutenzione futura del codice e l’affidabilità generale del sysmodule.

Il software, ormai diventato uno degli strumenti più apprezzati nella scena homebrew Nintendo Switch per la condivisione automatica di screenshot e video catturati dalla console, riceve in questa release cambiamenti importanti che interesseranno sia gli utenti sia gli sviluppatori che contribuiscono al progetto.

La modifica più rilevante introdotta dall’aggiornamento riguarda un breaking change nella configurazione. La voce upload_movies presente nel file config.ini è stata ufficialmente rinominata in upload_videos per tutti i servizi supportati, inclusi Telegram, Discord, ntfy e Immich.

Questo significa che chi aggiorna il sysmodule dovrà modificare manualmente il proprio file di configurazione per mantenere il corretto funzionamento dell’upload automatico dei video.

Si tratta di un cambiamento apparentemente semplice, ma importante per uniformare la nomenclatura interna del progetto e rendere più coerente la gestione delle opzioni.

Gran parte del lavoro di questa release si concentra però sull’architettura interna del software. Gli sviluppatori hanno introdotto una nuova struttura modulare per i canali di upload, trasformando ogni integrazione in un modulo completamente indipendente situato all’interno della directory src/channels/.

In pratica, ogni servizio supportato — come Telegram, Discord, ntfy e Immich — possiede ora i propri file dedicati .hpp e .cpp, con una gestione autonoma della configurazione, delle funzioni di invio e dello stato di attivazione.

Questo nuovo approccio rende il progetto molto più ordinato, scalabile e semplice da mantenere nel lungo periodo. Ogni modulo include infatti la propria struttura di configurazione con valori predefiniti, funzioni di caricamento e validazione, oltre alla logica necessaria per effettuare l’upload dei file.

Anche la gestione dei canali attivi è stata semplificata, eliminando i vecchi flag separati presenti nella configurazione globale.

Un’altra novità tecnica significativa è l’introduzione del sistema X-macro channel registry tramite il file channels.inc. Grazie a questa soluzione, l’aggiunta di nuovi servizi di upload diventa molto più immediata: per integrare un nuovo canale è sufficiente registrarlo nel file channels.inc e creare i relativi file dedicati.

Il sistema si occupa automaticamente dell’espansione della configurazione e dell’integrazione nel codice principale del sysmodule. Si tratta di una modifica molto interessante soprattutto per il futuro del progetto, perché faciliterà notevolmente lo sviluppo di nuove integrazioni da parte della community.

Oltre ai cambiamenti strutturali, l’aggiornamento corregge anche alcuni problemi presenti nelle versioni precedenti. È stato risolto un problema legato a un dangling pointer nel loop principale del programma, un bug potenzialmente pericoloso che poteva causare instabilità o comportamenti imprevedibili durante l’esecuzione del sysmodule.

Corretta inoltre una piccola imprecisione nei commenti relativi alla configurazione Immich all’interno del file config.ini.template.

Caratteristiche

  • Carica automaticamente gli screenshot e le registrazioni dello schermo catturati su Nintendo Switch.
  • Supporta più destinazioni di upload: Telegram, Discord e ntfy.sh.
  • Supporta URL personalizzati per la Telegram Bot API (utile per reverse proxy).
  • Supporta un intervallo personalizzato per il controllo delle nuove catture.
  • Utilizza meno memoria rispetto al progetto originale (da ~1,852 MB a ~1,339 MB).
  • Nessun crash fatale aprendo nxmenu in modalità applet insieme ad altri sysmodule.

Preparazione delle destinazioni

Telegram

Per utilizzare Telegram è necessario creare un bot dedicato, che invierà automaticamente le catture dello schermo all’account selezionato.

  1. Creare un nuovo bot su Telegram scegliendo nome e username a piacere, quindi annotare l’API Token fornito.
  2. Inviare un qualsiasi messaggio al bot dal proprio account Telegram, così da generare un aggiornamento.
  3. Aprire nel browser l’indirizzo: https://api.telegram.org/bot<bot-token>/getUpdates. Verrà mostrato il messaggio inviato in precedenza. Annotare il chat ID, visibile nel campo .result[0].message.chat.id.

ntfy.sh

ntfy.sh è un servizio di notifiche basato su HTTP, utilizzabile tramite l’istanza pubblica oppure tramite un’installazione privata.

I topic sono pubblici per impostazione predefinita: chiunque conosca il nome può inviare o ricevere notifiche. Per motivi di sicurezza è consigliato scegliere un nome difficile da indovinare o proteggerlo tramite un access token.

  1. Scegliere un nome univoco e non immediato per il topic (ad esempio: my-switch-captures-abcdefg).
  2. (Opzionale) Creare un access token tramite la pagina ntfy.sh/account.
  3. Iscriversi al topic tramite l’app mobile di ntfy o l’interfaccia web, ad esempio: https://ntfy.sh/my-switch-captures-abcdefg.

Discord

Per utilizzare Discord è necessario creare un’applicazione e un bot dedicato. Il bot si occuperà di inviare le catture direttamente in un canale del server.

La procedura richiede qualche passaggio in più rispetto alle altre piattaforme.

  1. Seguire la guida “Creating a Bot Account” per ottenere il Bot Token e invitare il bot nel proprio server, assicurandosi di assegnargli almeno il permesso “Inviare messaggi”.
  2. Recuperare il Channel ID del canale in cui verranno inviate le catture: abilitare la Modalità Sviluppatore nelle impostazioni di Discord, fare clic con il tasto destro sul canale desiderato e selezionare “Copia ID canale”.

Installazione

Dopo aver configurato almeno una destinazione di upload, è possibile procedere con l’installazione del sysmodule sulla Nintendo Switch.

  1. Scaricare l’ultima release e estrarne il contenuto.
  2. Copiare il file config/NX-ScreenUploader/config.ini.template in config/NX-ScreenUploader/config.ini.
  3. Modificare il file config.ini in base alle destinazioni scelte:
    • Telegram: Impostare telegram = true nella sezione [general], quindi inserire bot_token e chat_id nella sezione [telegram].
    • ntfy.sh: Impostare ntfy = true nella sezione [general], quindi configurare topic e, se necessario, token nella sezione [ntfy].
    • Discord: Impostare discord = true nella sezione [general], quindi definire bot_token e channel_id nella sezione [discord].
      • È possibile abilitare più destinazioni contemporaneamente.
  4. Copiare tutti i file della release nella root della scheda SD della Nintendo Switch.

Changelog

Modifiche improvvise

upload_movies rinominato in upload_videos — La chiave di configurazione INI upload_movies è stata rinominata in upload_videos per tutti i canali (Telegram, Discord, ntfy e Immich). Aggiorna di conseguenza il file config.ini.

Nuove funzionalità e architettura:

  • Architettura modulare dei canali — I canali di upload (Telegram, Discord, ntfy e Immich) ora sono moduli completamente indipendenti all’interno di src/channels/. Ogni canale dispone della propria coppia di file .hpp e .cpp che racchiude:
    • Struttura di configurazione con valori predefiniti, funzioni load() e validate()
    • Funzione di upload send(path)
    • Stato di abilitazione (non ci sono più flag separati nella Config).
  • Registro dei canali basato su X-macro (channels/channels.inc) — Tutti i canali vengono registrati tramite X-macro, consentendo un’espansione automatica in config.hpp/cpp e main.cpp. L’aggiunta di un nuovo canale ora richiede solo: la registrazione in channels.inc e la creazione dei file channels/xxx.hpp e channels/xxx.cpp.

Correzione bug

  • Risolto un problema di dangling pointer nel loop principale.
  • Corretta una svista (typo) nei commenti della configurazione Immich nel file config.ini.template

Download: NX-ScreenUploader v0.3.0

Download: Source code NX-ScreenUploader v0.3.0

Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale.

🔥 Prodotti in promozione e articoli più venduti: Nintendo Switch

Vedi altri prodotti Nintendo Switch

Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.

Ultimo aggiornamento 2026-06-08 / Link di affiliazione / Immagini da Amazon Product Advertising API

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui
Captcha verification failed!
Punteggio utente captcha non riuscito. Ci contatti per favore!

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.