Présentation
Ce guide s'adresse aux développeurs d'applications clientes d'API qui utilisent les ressources liveStream et liveBroadcast par défaut des chaînes YouTube pour diffuser du contenu en direct. Il vous aide à vous assurer que votre application gère correctement l'abandon des diffusions et des flux par défaut. Il vous concerne si l'une des affirmations suivantes s'applique à votre application :
- Elle vérifie la valeur de la
liveBroadcastresource'sisDefaultBroadcastpropriété. - Elle vérifie la valeur de la
liveStreamressource'sisDefaultStreampropriété. Elle appelle la
liveBroadcasts.listméthode et définit la valeur dubroadcastTypeparamètre surpersistent. À partir de la date d'abandon :- Si la valeur du paramètre
broadcastTypeestpersistent, la méthodeliveBroadcasts.listne renverra aucun résultat. - Si la valeur du paramètre
broadcastTypeestall, la méthodeliveBroadcasts.listne renverra pas les diffusions persistantes qui existaient avant cette date.
- Si la valeur du paramètre
Si votre application est concernée, veuillez consulter la section Mettre à jour votre application, qui explique les modifications de procédure que votre application devra peut-être apporter en raison de cet abandon. Cette section identifie des étapes spécifiques du guide Cycle de vie d'une diffusion que votre client API ne suit peut-être pas habituellement s'il utilise actuellement la diffusion et le flux par défaut.
Quelle est la situation ?
Depuis 2015, YouTube crée automatiquement un flux et une diffusion par défaut pour une chaîne lorsque le streaming en direct est activé. Le flux par défaut existait indéfiniment et ne pouvait pas être supprimé. De même, la diffusion par défaut était considérée comme persistante. Elle existait toujours, n'était associée à aucune heure de début ni de fin, et n'était pas liée à un événement particulier.
À partir de la date d'abandon mentionnée ci-dessus, YouTube ne créera plus de flux ni de diffusions par défaut. Cette modification affecte les applications clientes qui s'appuient sur ces ressources pour diffuser du contenu en direct. Elle affectera également les applications dans lesquelles l'interface utilisateur est personnalisée pour faire la distinction entre ces ressources par défaut et les autres diffusions et flux créés par les propriétaires de la chaîne.
Au lieu de s'appuyer sur les ressources par défaut, les clients API doivent créer et gérer les ressources liveBroadcast et liveStream, et les lier entre elles.
Mettre à jour votre application
Pour passer rapidement en revue la terminologie, une diffusion représente un événement qui peut être regardé sur YouTube en direct, et un flux est le mécanisme permettant d'envoyer le contenu vidéo réel à YouTube. Une diffusion peut et doit être liée à un seul flux.
Migrer depuis les diffusions par défaut
Avant cet abandon, les clients API pouvaient choisir d'utiliser la diffusion par défaut d'une chaîne ou de créer une diffusion spécifique à un événement. La diffusion par défaut était une ressource persistante qui pouvait être réutilisée pour plusieurs événements, tandis qu'une ressource de diffusion spécifique à un événement est une ressource à usage unique qui correspond exactement à une vidéo YouTube.
Votre application cliente utilise la diffusion par défaut si elle appelle la méthode liveBroadcasts.list et effectue l'une des opérations suivantes :
- Elle définit la valeur du
broadcastTypeparamètre surpersistent. Cette requête ne récupère que la diffusion par défaut. - Elle définit la valeur du paramètre
broadcastTypesurall, puis identifie la ressourceliveBroadcastdans la réponse de l'API pour laquelle laisDefaultBroadcastvaleur de la propriété esttrue.
Après l'abandon, YouTube n'acceptera que les diffusions spécifiques à un événement.
Cela signifie qu'au lieu de s'appuyer sur la diffusion par défaut, les applications clientes
doivent créer
liveBroadcast
des ressources
pour chaque événement de diffusion individuel.
Pour créer une ressource liveBroadcast, appelez la
liveBroadcasts.insert méthode.
Ce processus est expliqué à l'étape 1.1 du guide "Cycle de vie d'une diffusion".
Si ce n'est pas déjà le cas, votre interface utilisateur doit également fournir aux utilisateurs des mécanismes permettant de distinguer et de sélectionner les diffusions spécifiques à un événement à venir.
Migrer depuis les flux par défaut
Un flux vous permet de transmettre du contenu audio-vidéo à YouTube et définit les paramètres de diffusion de votre contenu sur YouTube. Il est courant que les diffuseurs réutilisent le même flux pour de nombreuses diffusions différentes si ces diffusions ont lieu à des moments différents.
Même si votre application ne peut pas utiliser le flux par défaut, elle peut créer un flux réutilisable pour chaque diffusion. Pour créer une ressource liveStream
, appelez la méthode liveStreams.insert
en suivant les instructions de l'étape 1.2 du guide "Cycle de vie d'une diffusion". Par défaut, les flux nouvellement créés sont réutilisables. Toutefois, si vous préférez, vous pouvez définir la
contentDetails.isReusable
propriété sur false pour créer des flux à usage unique et établir une relation un-à-un
entre les diffusions et les flux.
La liste suivante contient les quatre propriétés, outre le titre du flux et la description du flux, que vous pouvez définir lors de la création d'un flux. La liste affiche les valeurs que les flux par défaut utilisent pour chaque propriété. Il s'agit probablement des paramètres que vous souhaiterez utiliser dans une application cliente si vous migrez depuis l'utilisation de flux par défaut.
cdn.frameRate-variablecdn.ingestionType-rtmpcdn.resolution-variablecontentDetails.isReusabletrue
Lier des diffusions à des flux
Chaque ressource liveBroadcast doit être liée à un seul flux avant que la diffusion en direct sur YouTube puisse réellement démarrer. (La diffusion n'est liée à aucun flux au moment de sa création.)
Le processus de liaison était géré automatiquement pour la diffusion par défaut, qui était inextricablement liée au flux par défaut. Toutefois, après la date d'abandon, les applications clientes devront gérer ce processus pour toutes les diffusions.
Pour lier une diffusion à un flux, appelez la
liveBroadcasts.bind méthode, comme
expliqué à l'étape 1.3 du guide "Cycle de vie d'une diffusion".
- Si vous utilisez un flux réutilisable, vous pouvez créer un flux une seule fois, puis lier chaque diffusion à ce flux.
- Si vous n'utilisez pas de flux réutilisable, vous devez créer une diffusion et un flux, puis les lier.
Tester votre diffusion
Lorsque vous n'utilisez pas la diffusion par défaut, vous avez la possibilité de tester votre diffusion. Pour effectuer un test, vous intégrez un lecteur qui vous permet de prévisualiser la vidéo de diffusion telle qu'elle apparaîtrait aux spectateurs YouTube, mais la diffusion n'est pas visible pour les autres spectateurs.
Si votre client API utilisait auparavant la diffusion et le flux par défaut, et que vous souhaitez ajouter une phase de test à votre traitement par flux, consultez l'étape 3 du "Cycle de vie d'une diffusion" guide.
Si vous souhaitez tester votre flux, lorsque vous insérez une diffusion, vous devez
définir la propriété contentDetails.monitorStream.enableMonitorStream
sur true et la propriété contentDetails.enableAutoStart
sur
false. Il s'agit des valeurs par défaut pour les deux propriétés.
Utiliser les fonctionnalités de démarrage et d'arrêt automatiques
La diffusion par défaut démarrait automatiquement chaque fois que vous commenciez à diffuser une vidéo sur le flux par défaut. De même, la diffusion par défaut se terminait après l'arrêt de la diffusion de la vidéo. Chaque session de streaming utilisant ces ressources par défaut devenait ensuite une vidéo sur votre chaîne.
Bien que les fonctionnalités de démarrage et d'arrêt automatiques soient le comportement par défaut des diffusions par défaut, elles sont facultatives et doivent être activées pour les autres diffusions. Si vous souhaitez utiliser ces fonctionnalités, lorsque vous insérez une diffusion,
vous devez définir les valeurs des propriétés contentDetails.enableAutoStart
et
contentDetails.enableAutoStop
sur true. Ces fonctionnalités sont indépendantes. Vous pouvez donc choisir d'en utiliser une et pas l'autre.
Si vous n'activez pas les fonctionnalités de démarrage et d'arrêt automatiques pour les nouvelles diffusions, votre client API doit appeler la méthode liveBroadcasts.transition pour mettre à jour l'état d'une diffusion lorsque vous commencez et terminez la diffusion de la vidéo. Dans le guide "Cycle de vie d'une diffusion" , consultez l'étape 4.3 et l'étape 5.2 pour obtenir des instructions sur la gestion de ces transitions au début et à la fin d'une diffusion.