Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Obtenir un identifiant de lecture

Dernière mise à jour :Sep 07, 2026

Un identifiant de lecture est un jeton spécifique à une vidéo, limité dans le temps et non réutilisable. Si l'identifiant expire ou est incorrect, il est impossible de récupérer l'URL de lecture. Cette méthode convient donc aux scénarios de lecture exigeant un niveau de sécurité élevé.

Notes d'utilisation

  • ApsaraVideo Player prend en charge la lecture via des identifiants de lecture. Les lecteurs tiers ne prennent pas en charge cette méthode.

  • Par défaut, un identifiant de lecture est valide pendant 100 secondes (3000 secondes maximum). Il permet de récupérer l'URL de lecture d'une vidéo spécifique uniquement et ne peut ni être partagé ni être réutilisé. En cas d'expiration de l'identifiant, gérez la logique d'actualisation dans votre application.

  • La période de validité d'un identifiant de lecture diffère de celle d'une URL de lecture (si la signature d'URL est activée). Vous pouvez personnaliser cette dernière sans limite supérieure.

  • Si vous utilisez le chiffrement vidéo Alibaba Cloud (chiffrement privé), les vidéos ne peuvent être lues qu'à l'aide du kit de développement logiciel (SDK) ApsaraVideo Player.

Paramètres de validité : AuthInfoTimeout par rapport à AuthTimeout

Deux paramètres de validité s'appliquent selon l'API appelée :

  • Lors de l'appel à l'API GetVideoPlayAuth pour obtenir un identifiant de lecture, le paramètre AuthInfoTimeout contrôle la période de validité.

  • Lors de l'appel à l'API GetPlayInfo pour obtenir une URL de lecture, le paramètre AuthTimeout contrôle la période de validité.

Ne confondez pas ces deux paramètres : AuthInfoTimeout régit la durée de validité du PlayAuth, tandis qu'AuthTimeout régit la durée d'accessibilité de l'URL de lecture générée.

authTimeout côté front-end par rapport à la validité côté serveur

Le paramètre authTimeout du SDK du lecteur (front-end) contrôle uniquement le comportement d'actualisation du cache local. Il ne remplace pas la période de validité renvoyée par le serveur.

Le champ ExpireTime du PlayAuth constitue l'horodatage d'expiration faisant autorité et détermine le comportement réel de la lecture :

  • Si l'identifiant côté serveur a expiré (ExpireTime est dépassé), l'authentification échoue, quel que soit le paramètre authTimeout défini côté front-end.

  • Si l'identifiant côté serveur est toujours valide, la lecture peut se poursuivre même si le délai authTimeout côté front-end est écoulé, à condition que les nouvelles demandes d'identifiant aboutissent.

Mécanisme de renouvellement pour les vidéos longues

La période de validité maximale d'un identifiant de lecture est de 3000 secondes. Pour les vidéos plus longues, actualisez le PlayAuth 10 à 30 secondes avant l'expiration à l'aide des méthodes d'actualisation des identifiants du SDK du lecteur (par exemple, Aliplayer propose replayByVidAndPlayAuth ou loadByUrl). N'attendez pas le moment exact de l'expiration, car la latence réseau risque d'interrompre la lecture.

Stratégie de mise en cache pour une forte concurrence

L'API GetVideoPlayAuth impose une limite de QPS par utilisateur de 360 requêtes par seconde. Dans les scénarios à forte concurrence, mettez en œuvre une stratégie de mise en cache côté serveur :

  • Mettez en cache le PlayAuth et réutilisez-le durant sa période de validité afin de réduire les appels API.

  • L'expiration de l'identifiant affecte uniquement la récupération de l'URL de lecture. Une fois l'URL de lecture obtenue, la lecture se poursuit même si l'identifiant expire.

Compatibilité des navigateurs

Si la lecture fonctionne sur Chrome mais échoue sur Edge, vérifiez d'abord la compatibilité du format d'encodage vidéo, puis confirmez la validité de l'identifiant de lecture.

Gestion des erreurs d'expiration d'identifiant

Lorsque le client (par exemple, le SDK Android) signale une erreur « playauth is expired », ajoutez des écouteurs d'expiration d'identifiant et une logique d'actualisation automatique dans votre application. Pour connaître les étapes d'intégration détaillées, consultez la documentation de configuration avancée du SDK de chaque plateforme.

Processus global

Les étapes suivantes illustrent comment obtenir un identifiant de lecture et lire une vidéo, en prenant pour exemple un nom de domaine accéléré par CDN.

image
  1. Le client envoie un VideoId au serveur pour demander un identifiant de lecture.

  2. Votre serveur appelle l'opération GetVideoPlayAuth à l'aide du SDK côté serveur pour obtenir l'identifiant de lecture.

  3. Le service VOD renvoie l'identifiant de lecture au serveur.

  4. Le serveur renvoie l'identifiant de lecture au client.

  5. Le lecteur du client demande une URL de lecture au service VOD en utilisant l'identifiant renvoyé.

  6. Le service VOD renvoie l'URL de lecture au client.

  7. Le client demande la ressource de lecture au nœud CDN en utilisant l'URL de lecture.

  8. Si le nœud CDN ne dispose pas de la ressource ou si la ressource mise en cache a expiré, il récupère la ressource depuis le bucket OSS d'origine.

  9. Le bucket OSS renvoie la ressource au nœud CDN, qui la met en cache.

  10. Le nœud CDN diffuse la ressource multimédia au client.

Étapes suivantes

Alibaba Cloud propose des SDK de lecteur pour Web, Android, iOS, Flutter et HarmonyOS, qui prennent tous en charge la lecture basée sur un identifiant. Sélectionnez la documentation correspondant à votre plateforme :

FAQ

Le SDK du lecteur Web prend-il en charge les jetons d'authentification JWT ?

Non. Le SDK du lecteur Web prend uniquement en charge la méthode de lecture VID + PlayAuth. Si vous rencontrez des échecs de lecture avec un JWT Auth généré localement, basculez vers la méthode PlayAuth standard.

Pourquoi GetPlayInfo renvoie-t-il une erreur indiquant que le statut de la vidéo est invalide ou en cours de révision ?

Une vidéo doit remplir les deux conditions suivantes pour obtenir des informations de lecture :

  • Le statut principal (Status) est Normal.

  • Le statut d'audit (AuditStatus) est Normal.

Si le statut est UploadSucc ou si le statut d'audit est Init, attendez que le transcodage soit terminé et que la révision soit validée. Vous pouvez utiliser l'API GetVideoInfo pour interroger le dernier statut de la vidéo et vérifier vos paramètres d'audit globaux.

Pourquoi dois-je spécifier le format mp4 pour la lecture ?

Cela est généralement dû à des problèmes de compatibilité du format HLS dans les anciennes versions du SDK du lecteur. Mettez à jour vers la dernière version du SDK du lecteur ou effectuez des tests avec le code de démonstration officiel.

Comment obtenir les identifiants de résolution vidéo (LD, HD, SD) sur Android ?

Les identifiants de résolution sont renvoyés par le serveur uniquement lors de l'utilisation de la méthode d'identifiant de lecture (VidSts ou VidAuth). Si vous utilisez directement la méthode de lecture URLSource, les identifiants de résolution ne seront pas disponibles.

La méthode VID + PlayAuth prend-elle en charge la lecture de ressources provenant d'un stockage cloud tiers ?

Non. La méthode VID + PlayAuth prend uniquement en charge les vidéos téléchargées dans la bibliothèque de ressources multimédias Alibaba Cloud VOD. Pour lire des ressources tierces, migrez-les ou téléchargez-les d'abord sur Alibaba Cloud VOD afin de générer un VID.