Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Démarrez des sessions de streaming avec Amazon GameLift Streams
Cette section couvre les sessions de streaming, l'instance réelle d'un flux au cours de laquelle un utilisateur final ou un joueur peut interagir avec votre application ou jouer à votre jeu. Vous découvrirez comment tester votre propre session de streaming et comprendre le cycle de vie de la session de streaming.
Pour lancer des sessions de streaming pour les utilisateurs finaux, vous pouvez intégrer Amazon GameLift Streams à votre propre service et application cliente ; pour plus d'informations, consultezService principal et client Web Amazon GameLift Streams. Vous pouvez également créer une URL de diffusion, qui démarre une session de diffusion dans un navigateur Web compatible sans que l'utilisateur final ait besoin d' AWS informations d'identification ou d'une intégration client ; pour plus d'informations, consultezPartagez des sessions de streaming avec des URL de flux.
À propos des sessions de streaming
Pour démarrer une session de streaming, vous devez disposer d'une application dont l'état est Prêt, d'un groupe de diffusion dont la capacité est disponible à l'endroit où vous souhaitez diffuser et de l'application répliquée vers l'emplacement où vous souhaitez diffuser. Une session de flux s'exécute sur l'une des ressources de calcul allouées par un groupe de flux. Lorsque vous démarrez un flux, vous devez spécifier un groupe de flux et une application à diffuser en utilisant leurs valeurs d'ARN ou d'ID.
Lorsque vous démarrez une session de streaming avec succès, vous recevez un identifiant unique pour cette session de streaming. Ensuite, vous utilisez cet ID pour connecter la session de streaming à un utilisateur final. Pour plus d'informations, consultez StartStreamSession le manuel Amazon GameLift Streams API Reference.
Vous pouvez éventuellement fournir un ARN de rôle IAM lors du démarrage d'une session de streaming. Le cas échéant, Amazon GameLift Streams assume le rôle et votre application reçoit automatiquement les informations d'identification AWS. Vous n’avez pas besoin de modifier le code de votre application. Pour de plus amples informations, veuillez consulter Apport d’informations d’identification AWS à votre application de streaming.
Tester un stream dans la console
Le moyen le plus direct pour tester la façon dont votre application diffuse est d'utiliser la console Amazon GameLift Streams. Lorsque vous démarrez un flux, Amazon GameLift Streams utilise l'une des ressources de calcul allouées par votre groupe de flux. Vous devez donc disposer de la capacité disponible dans votre groupe de diffusion.
Pour tester votre stream dans la console Amazon GameLift Streams
-
Connectez-vous à la console Amazon GameLift Streams Console de gestion AWS et ouvrez-la
. -
Vous pouvez tester un flux de plusieurs manières. Commencez à partir de la page Groupes de flux ou de la page Tester le flux et procédez comme suit :
-
Sélectionnez le groupe de diffusion que vous souhaitez utiliser pour diffuser.
-
Si vous commencez à partir de la page Groupes de flux, choisissez Tester le flux. Si vous commencez à partir de la page Test stream, sélectionnez Choisir. Cela ouvre la page de configuration du flux de test pour le groupe de flux sélectionné.
-
Dans Applications liées, sélectionnez une application.
-
Dans Emplacement, choisissez un emplacement disposant de la capacité disponible.
-
(Facultatif) Dans Configurations du programme, entrez les arguments de ligne de commande ou les variables d'environnement à transmettre à l'application lors de son lancement.
-
Confirmez votre sélection, puis choisissez Test stream.
-
-
Une fois votre stream chargé, vous pouvez effectuer les actions suivantes dans votre stream :
-
Pour connecter une entrée, telle que votre souris, votre clavier et votre manette de jeu (à l'exception des microphones, qui ne sont pas pris en charge dans Test stream), choisissez Joindre une entrée. Vous attachez automatiquement votre souris lorsque vous déplacez le curseur dans la fenêtre du stream.
-
Pour que les fichiers créés pendant la session de streaming soient exportés vers un compartiment Amazon S3 à la fin de la session, choisissez Exporter les fichiers et spécifiez les détails du compartiment. Les fichiers exportés se trouvent sur la page Sessions.
-
Pour visionner le stream en plein écran, choisissez Plein écran. Appuyez sur Escape pour annuler cette action.
-
-
Pour mettre fin à la diffusion, choisissez Terminer la session. Lorsque le flux se déconnecte, la capacité du flux devient disponible pour démarrer un autre flux.
Note
La fonctionnalité Test Stream de la console Amazon GameLift Streams ne prend pas en charge les microphones.
Cycle de vie des sessions de streaming
Lorsque vous travaillez avec des sessions de streaming dans Amazon GameLift Streams, ce diagramme peut vous aider à comprendre les différents états vers lesquels passe une session de streaming tout au long de son cycle de vie.
-
StartStreamSessioncrée une nouvelle session de diffusion, qui commence dans
ACTIVATINGl'état. Lorsqu'Amazon GameLift Streams trouve des ressources disponibles pour héberger le flux, la session de diffusion passe àACTIVE. Lorsqu'un client se connecte au flux actif, la session de flux passe àCONNECTED. -
Lorsqu'un client se déconnecte d'un flux, la session de flux passe à
PENDING_CLIENT_RECONNECTIONl'état. CreateStreamSessionConnectioneffectue la transition vers la session de diffusion et invite le client à se reconnecter au flux ou à créer une nouvelle session de diffusion.RECONNECTINGLorsqu'une session de streaming est prête à permettre au client de se reconnecter, elle passe àACTIVE. Lorsque le client se reconnecte, il repasse àCONNECTED. Si un client est déconnecté pendant plus longtemps queConnectionTimeoutSeconds, la session de streaming se termine. -
Lorsqu'un client ne se connecte pas à une session de streaming dans
ACTIVEou dans unPENDING_CLIENT_RECONNECTIONétat pendant la période spécifiée parConnectionTimeoutSeconds, il passe àTERMINATED. -
TerminateStreamSessiondéclenche la fin du flux, et la session de flux passe à l'
TERMINATINGétat. Lorsque la session de streaming se termine correctement, elle passe àTERMINATED. -
Une session de streaming dans n'importe quel état, sauf
TERMINATED, peut passer àERROR. Lorsqu'un appel d'API renvoieERRORune valeur d'état, vérifiez la valeur de StatusReason pour obtenir une brève description de la cause de l'erreur. Vous pouvez également appeler GetStreamSession pour vérifier ces valeurs.
Valeurs de délai d'attente affectant les sessions de streaming
Les sessions de streaming sont régies par plusieurs valeurs de délai d'expiration qui contrôlent différents aspects du cycle de vie des sessions. Dans l'ordre chronologique approximatif des moments où vous pouvez généralement les rencontrer au cours du cycle de vie d'une session de streaming, ils incluent les éléments suivants :
- Délai de placement
-
Délai imparti à Amazon GameLift Streams pour trouver les ressources de calcul nécessaires pour héberger une session de streaming en utilisant la capacité disponible. Le délai de placement varie en fonction du type de capacité utilisé pour répondre à votre demande de diffusion :
-
Always-on capacité : 75 secondes
-
On-demand capacité :
-
Linux/Proton temps d'exécution : 90 secondes
-
Durée d'exécution de Windows : 10 minutes
-
-
Comportement : si Amazon GameLift Streams ne parvient pas à identifier les ressources disponibles dans ce délai, la session de streaming
StatuspasseERRORà uneStatusReasonvaleur deplacementTimeout.
-
- Délai de connexion
-
Durée pendant laquelle Amazon GameLift Streams attend qu'un client se connecte ou se reconnecte à une session de streaming.
-
Paramètre :
ConnectionTimeoutSecondsin StartStreamSession -
Plage : 1 à 3 600 secondes (1 heure)
-
Par défaut : 120 secondes (2 minutes)
-
Comportement : le minuteur démarre lorsque la session de streaming atteint
ACTIVEou atteintPENDING_CLIENT_RECONNECTIONle statut. Si aucun client ne se connecte avant l'expiration du délai, la sessionStatuspasse àTERMINATED.
-
- Délai de durée de session
-
Durée maximale pendant laquelle Amazon GameLift Streams maintient une session de streaming ouverte.
-
Paramètre :
SessionLengthSecondsin StartStreamSession -
Plage : 1 à 86 400 secondes (24 heures)
-
Par défaut : 43200 secondes (12 heures)
-
Comportement : met fin à la session de streaming quelle que soit la connexion client existante lorsque la limite de temps est atteinte.
-
Mettre fin à une session de streaming
Si vous devez forcer la fin d'une session de streaming, les options suivantes s'offrent à vous :
-
Utiliser l' TerminateStreamSession API : pour l'utiliser TerminateStreamSession, vous aurez besoin de l'ID du groupe de flux et de l'ID de la session de diffusion. Vous pouvez utiliser ListStreamSessions ou ListStreamSessionsByAccount utiliser le
--status CONNECTEDparamètre pour obtenir la liste des sessions de streaming auxquelles un client est connecté. -
Supprimer l'emplacement de la session de son groupe de flux : la suppression de l'emplacement du groupe de flux dans lequel la session est diffusée mettra fin à toutes les sessions de streaming actives dans cet emplacement. Vous pouvez supprimer un emplacement dans un groupe de flux depuis la console ou à l'aide de l'RemoveStreamGroupLocationsAPI.
-
Supprimer le groupe de flux de la session : la suppression d'un groupe de flux mettra fin à toutes les sessions de diffusion actives dans tous les emplacements du groupe de flux. Vous pouvez supprimer un groupe de flux depuis la console ou à l'aide de l'DeleteStreamGroupAPI. À utiliser avec prudence, car vous mettrez fin brusquement aux connexions des clients.
Reconnexion à une session de streaming
Si un client est déconnecté d'une session de streaming sans mettre fin à la session, il peut se reconnecter à la session dans le délai spécifié ConnectionTimeoutSeconds lors du démarrage de la session de streaming. Pour vous reconnecter à une session, vous avez besoin de l'ID de la session de streaming. Pour plus de détails, consultez CreateStreamSessionConnection le manuel Amazon GameLift Streams API Reference. Vous pouvez voir un exemple de reconnexion à une session de streaming dans l'exemple https://github.com/aws-samples/sample-amazon-gamelift-streams-react-app
La reconnexion n'est pas disponible pour les sessions de diffusion démarrées par l'activation d'une URL de diffusion. Comme il n'y a pas de reconnexion, l'ouverture à nouveau de l'URL du flux démarre une toute nouvelle session et consomme une autre utilisation de celle-ciUsageLimit. Pour de plus amples informations, veuillez consulter Partagez des sessions de streaming avec des URL de flux.