Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Avvia sessioni di streaming con Amazon GameLift Streams
Questa sezione riguarda le sessioni di streaming, l'istanza effettiva di uno streaming in cui un utente finale o un giocatore può interagire con la tua applicazione o giocare. Scoprirai come testare la tua sessione di streaming e comprenderne il ciclo di vita.
Per avviare sessioni di streaming per gli utenti finali, puoi integrare Amazon GameLift Streams nella tua applicazione client e di servizio; per ulteriori informazioni, consulta. Servizio backend e client web Amazon GameLift Streams Puoi anche creare un URL di streaming, che avvia una sessione di streaming in un browser Web supportato senza richiedere all'utente finale di disporre di AWS credenziali o di un'integrazione con il client; per ulteriori informazioni, consulta. Condividi le sessioni di streaming con gli URL di streaming
Informazioni sulle sessioni di streaming
I prerequisiti per avviare una sessione di streaming sono un'applicazione in stato Pronto, un gruppo di stream con capacità disponibile nella posizione in cui si desidera eseguire lo streaming e l'applicazione replicata nella posizione in cui si desidera eseguire lo streaming. Una sessione di streaming viene eseguita su una delle risorse di calcolo allocate da un gruppo di stream. Quando avvii uno streaming, devi specificare un gruppo di stream e un'applicazione per lo streaming utilizzando i relativi valori ARN o ID.
Quando avvii con successo una sessione di streaming, ricevi un identificatore univoco per quella sessione di streaming. Quindi, utilizzi quell'ID per connettere la sessione di streaming a un utente finale. Per ulteriori informazioni, StartStreamSession consulta Amazon GameLift Streams API Reference.
Facoltativamente, puoi fornire un ARN del ruolo IAM all'avvio di una sessione di streaming. Se fornito, Amazon GameLift Streams assume il ruolo e l'applicazione riceve automaticamente le credenziali AWS. Non è necessario modificare il codice dell’applicazione. Per ulteriori informazioni, consulta Fornisci le credenziali AWS alla tua applicazione di streaming.
Test di uno stream nella console
Il modo più diretto per testare lo streaming della tua applicazione è tramite la console Amazon GameLift Streams. Quando avvii uno stream, Amazon GameLift Streams utilizza una delle risorse di calcolo allocate dal gruppo di stream. Quindi, devi avere capacità disponibile nel tuo gruppo di stream.
Per testare il tuo streaming nella console Amazon GameLift Streams
-
Accedi Console di gestione AWS e apri la console Amazon GameLift Streams.
-
Puoi testare uno stream in diversi modi. Inizia dalla pagina Stream groups o Test stream e segui questi passaggi:
-
Seleziona un gruppo di streaming che desideri utilizzare per lo streaming.
-
Se parti dalla pagina dei gruppi di streaming, scegli Test stream. Se parti dalla pagina Test stream, seleziona Scegli. Si apre la pagina di configurazione del flusso di test per il gruppo di stream selezionato.
-
In Applicazioni collegate, seleziona un'applicazione.
-
In Posizione, scegli una sede con capacità disponibile.
-
(Facoltativo) Nelle configurazioni del programma, immettete gli argomenti della riga di comando o le variabili di ambiente da passare all'applicazione all'avvio.
-
Conferma la selezione e scegli Test stream.
-
-
Dopo il caricamento dello stream, puoi eseguire le seguenti azioni nello stream:
-
Per collegare gli input, ad esempio mouse, tastiera e gamepad (eccetto i microfoni, che non sono supportati in Test stream), scegli Allega input. Il mouse viene collegato automaticamente quando si sposta il cursore nella finestra dello streaming.
-
Per fare in modo che i file creati durante la sessione di streaming vengano esportati in un bucket Amazon S3 alla fine della sessione, scegli Esporta file e specifica i dettagli del bucket. I file esportati sono disponibili nella pagina Sessioni.
-
Per visualizzare lo streaming a schermo intero, scegli Schermo intero. Premi Esc per annullare questa azione.
-
-
Per terminare lo streaming, scegli Termina sessione. Quando lo stream si disconnette, la capacità dello stream diventa disponibile per avviare un altro stream.
Nota
La funzionalità Test stream nella console Amazon GameLift Streams non supporta i microfoni.
Ciclo di vita della sessione di streaming
Quando lavori con sessioni di streaming in Amazon GameLift Streams, questo diagramma può aiutarti a comprendere i diversi stati a cui passa una sessione di streaming durante il suo ciclo di vita.
-
StartStreamSessioncrea una nuova sessione di streaming, che inizia nello stato.
ACTIVATINGQuando Amazon GameLift Streams trova le risorse disponibili per ospitare lo streaming, la sessione di streaming passa a.ACTIVEQuando un client si connette allo stream attivo, la sessione di streaming passa a.CONNECTED -
Quando un client si disconnette da uno stream, la sessione di streaming passa allo stato.
PENDING_CLIENT_RECONNECTIONCreateStreamSessionConnectionpassa la sessione di streaming aRECONNECTINGe avvia il client a riconnettersi allo stream o crea una nuova sessione di streaming. Quando una sessione di streaming è pronta per la riconnessione del client, passa a.ACTIVEQuando il client si riconnette, torna a.CONNECTEDSe un client rimane disconnesso per più diConnectionTimeoutSeconds, la sessione di streaming termina. -
Quando un client non si connette a una sessione di streaming
ACTIVEo aPENDING_CLIENT_RECONNECTIONuno stato entro il periodo di tempo specificato daConnectionTimeoutSeconds, passa a.TERMINATED -
TerminateStreamSessionavvia la cessazione dello stream e la sessione di streaming passa allo stato.
TERMINATINGQuando la sessione di streaming termina correttamente, passa a.TERMINATED -
Una sessione di streaming in qualsiasi stato, tranne
TERMINATED, può passare a.ERRORQuando una chiamata API ritornaERRORcome valore Status, controlla il valore di StatusReason per una breve descrizione della causa dell'errore. Puoi anche chiamare GetStreamSession per verificare questi valori.
Valori di timeout che influiscono sulle sessioni di streaming
Le sessioni di streaming sono regolate da diversi valori di timeout che controllano diversi aspetti del ciclo di vita della sessione. In ordine approssimativamente cronologico di quando potresti incontrarle in genere durante il ciclo di vita della sessione di streaming, includono quanto segue:
- Timeout di posizionamento
-
Limite di tempo per Amazon GameLift Streams per trovare risorse di calcolo per ospitare una sessione di streaming utilizzando la capacità disponibile. Il timeout di posizionamento varia in base al tipo di capacità utilizzata per soddisfare la richiesta di streaming:
-
Always-on capacità: 75 secondi
-
On-demand capacità:
-
Linux/Proton tempi di esecuzione: 90 secondi
-
Runtime di Windows: 10 minuti
-
-
Comportamento: se Amazon GameLift Streams non è in grado di identificare le risorse disponibili entro questo lasso di tempo, la sessione di streaming
Statuspassa a unERRORvaloreStatusReasondiplacementTimeoutoff.
-
- Timeout di connessione
-
Periodo di tempo in cui Amazon GameLift Streams attende che un client si connetta o si riconnetta a una sessione di streaming.
-
Parametro: in
ConnectionTimeoutSecondsStartStreamSession -
Intervallo: 1 - 3600 secondi (1 ora)
-
Impostazione predefinita: 120 secondi (2 minuti)
-
Comportamento: il timer si avvia quando la sessione di streaming raggiunge
ACTIVEilPENDING_CLIENT_RECONNECTIONnostro stato. Se nessun client si connette prima del timeout, la sessioneStatuspassa a.TERMINATED
-
- Timeout della durata della sessione
-
Durata massima Amazon GameLift Streams mantiene aperta una sessione di streaming.
-
Parametro:
SessionLengthSecondsin StartStreamSession -
Intervallo: 1 - 86400 secondi (24 ore)
-
Impostazione predefinita: 43200 secondi (12 ore)
-
Comportamento: termina la sessione di streaming indipendentemente da qualsiasi connessione client esistente quando viene raggiunto il limite di tempo.
-
Termine di una sessione di streaming
Se devi forzare l'interruzione di una sessione di streaming, hai le seguenti opzioni:
-
Usa l' TerminateStreamSession API: per utilizzarla TerminateStreamSession, avrai bisogno dell'ID del gruppo di streaming e dell'ID della sessione di streaming. Puoi usare ListStreamSessions o ListStreamSessionsByAccount con il
--status CONNECTEDparametro per ottenere un elenco di sessioni di streaming a cui è connesso un client. -
Rimuovi la posizione della sessione dal relativo gruppo di stream: la rimozione della posizione dal gruppo di stream in cui la sessione è in streaming interromperà tutte le sessioni di streaming attive in quella posizione. Puoi rimuovere una posizione in un gruppo di stream dalla console o utilizzando l'RemoveStreamGroupLocationsAPI.
-
Elimina il gruppo di stream della sessione: l'eliminazione di un gruppo di stream interromperà tutte le sessioni di streaming attive in tutte le posizioni del gruppo di stream. Puoi eliminare un gruppo di stream dalla console o utilizzando l'DeleteStreamGroupAPI. Utilizzalo con cautela poiché interromperai bruscamente le connessioni dei client.
Riconnessione a una sessione di streaming
Se un client viene disconnesso da una sessione di streaming senza terminarla, può riconnettersi alla sessione entro il tempo specificato dall'ConnectionTimeoutSecondsavvio della sessione di streaming. Per riconnetterti a una sessione, è necessario l'ID della sessione di streaming. Per i dettagli, consulta la CreateStreamSessionConnection sezione Amazon GameLift Streams API Reference. Puoi vedere un esempio di riconnessione a una sessione di streaming nell'esempio di React Starter.
La riconnessione non è disponibile per le sessioni di streaming avviate attivando un URL di streaming. Poiché non è prevista alcuna riconnessione, la riapertura dell'URL dello stream avvia una sessione completamente nuova e ne consuma un altro utilizzo. UsageLimit Per ulteriori informazioni, consulta Condividi le sessioni di streaming con gli URL di streaming.