Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Media playback

Dernière mise à jour :Aug 10, 2026

ApsaraVideo VOD vous permet d'intégrer rapidement une lecture multimédia sécurisée et stable à vos applications. Il fournit un système de sécurité complet incluant des identifiants de lecture, la signature d'URL et le chiffrement vidéo. ApsaraVideo VOD propose également un SDK multiplateforme pour faciliter l'implémentation de la lecture vidéo et réduire les coûts de développement. Cette rubrique explique le fonctionnement de la lecture des médias, les URL de lecture, les méthodes de lecture et la sécurité de la lecture.

Fonctionnement

La possibilité de lire un fichier audio ou vidéo dépend de son Statut. Seules les vidéos dont le statut est Normal (le champ Status a la valeur Normal) peuvent être lues. Vous pouvez obtenir les URL de lecture de ces vidéos en utilisant l'API ou le SDK d'ApsaraVideo VOD.

Remarque

Les vidéos à l'état Checking ou Blocked ne peuvent être prévisualisées que dans la console ApsaraVideo VOD ou accessibles depuis une adresse IP de sécurité de révision configurée.

Les diagrammes suivants illustrent les changements de statut d'une vidéo, du téléchargement à la lecture.

  • Avec transcodage

    image
  • Sans transcodage

    image

Par conséquent, avant d'obtenir une URL de lecture, assurez-vous que le statut de la vidéo est Normal.

Méthode de détermination

Après le téléchargement d'une vidéo, celle-ci n'est pas immédiatement prête pour la lecture. ApsaraVideo VOD doit d'abord confirmer la réception de la vidéo. Utilisez les notifications d'événements pour déterminer quand la vidéo téléchargée est prête à être lue.

  • Pour les vidéos ou fichiers audio non transcodés, vous pouvez les lire après avoir reçu une notification d'événement Téléchargement de la vidéo terminé. Ensuite, appelez l'opération GetPlayInfo pour obtenir l'URL de lecture. Seuls les fichiers aux formats suivants peuvent être lus directement sans transcodage : MP4, FLV, M3U8, MP3 et WEBM.

  • Pour les vidéos transcodées, vous pouvez les lire après avoir reçu une notification d'événement Transcodage de définition unique terminé. Pour garantir la disponibilité de toutes les définitions, attendez la notification d'événement Transcodage terminé avant de traiter la vidéo.

Prérequis

  • Configurez un nom de domaine accéléré Pour plus d'informations, consultez la section Exigences relatives au nom de domaine. ApsaraVideo VOD ne vous oblige pas à configurer un nom de domaine accéléré CDN (la nécessité d'un nom de domaine CDN dépend de la manière dont vous souhaitez accéder à la vidéo) : si vous ne configurez pas de nom de domaine accéléré, vous pouvez appeler l'opération Obtenir les URL de lecture vidéo (GetPlayInfo) pour obtenir une URL OSS contenant un paramètre d'authentification limité dans le temps et l'utiliser pour la lecture (la lecture fonctionne même sans nom de domaine accéléré). Si vous configurez un nom de domaine accéléré, vous pouvez utiliser le nom de domaine CDN pour un accès anonyme ou mettre en œuvre un contrôle de cache plus flexible via la signature d'URL. Les deux méthodes permettent une lecture normale ; la configuration d'un nom de domaine accéléré n'est donc pas une étape obligatoire pour la lecture.

  • Résolvez l'enregistrement CNAME pour le nom de domaine : assurez-vous d'avoir associé un enregistrement CNAME au nom de domaine. Sinon, la lecture échouera. Pour plus d'informations, consultez les sections Configurer un enregistrement CNAME avec Alibaba Cloud DNS ou Configurer un enregistrement CNAME sur DNSPod.

  • Confirmez la configuration de transcodage : ApsaraVideo VOD peut transcoder ou ne pas transcoder les fichiers multimédias que vous téléchargez. Pour plus d'informations, consultez la section Transcodage audio et vidéo.

  • Confirmez la configuration de sécurité : ApsaraVideo VOD fournit plusieurs fonctionnalités de sécurité pour protéger votre contenu vidéo. Celles-ci incluent le contrôle d'accès, la signature d'URL, l'authentification distante, le chiffrement vidéo et le téléchargement sécurisé. Ces configurations de sécurité déterminent si une vidéo peut être lue. Pour plus d'informations, consultez la section Sécurité vidéo.

URL de lecture

  • Configurez le nom de domaine accéléré.

    Après avoir configuré un nom de domaine accéléré dans la console ApsaraVideo VOD, l'URL de lecture est une URL de fichier CDN. Vous pouvez afficher l'URL sur la page Audio/Vidéo > Gérer > URL vidéo de la console. Les URL de lecture peuvent être fixes ou dynamiques. Cela dépend de l'activation ou non de la signature d'URL dans la gestion des noms de domaine. Pour savoir comment activer et configurer la signature d'URL, consultez la section Signature d'URL.

    • Adresse fixe

      Cette méthode convient aux scénarios ayant de faibles exigences de sécurité. L'adresse reste valide en permanence, c'est-à-dire qu'elle ne contient pas d'informations d'authentification lorsque l'interrupteur d'authentification est désactivé (la valeur du paramètre auth_key dans l'URL constitue l'information d'authentification). Par défaut, l'interrupteur d'authentification est désactivé après l'ajout d'un nom de domaine à la console.

    • Adresse dynamique

      Les URL dynamiques sont adaptées aux scénarios ayant des exigences de sécurité élevées. Elles sont générées dynamiquement et expirent après une période spécifique. La durée de validité par défaut des URL dynamiques correspond à la durée de validité par défaut que vous configurez dans la signature d'URL. Vous pouvez également définir une heure d'expiration lors de la Génération d'URL de lecture ou lors de l'Obtention d'URL de lecture vidéo. Si une URL expire, Alibaba Cloud CDN renvoie HTTP 403 lors de l'accès.

      Exemple d'URL dynamique :

      http://example.aliyundoc.com/video/aliyun-sample.mp4?auth_key=1500523200-0-0-80cd3862d699b7118eed99103f2a****
      Remarque

      Dans cet exemple, la valeur du paramètre auth_key commence par 1500523200. Cela correspond au 20 juillet 2017 à 12:00:00. Si la Durée de validité par défaut est définie sur 60 minutes, l'URL expire le 20 juillet 2017 à 13:00:00.

  • Si aucun nom de domaine accéléré n'est configuré

    • Lorsqu'aucun nom de domaine accéléré n'est configuré, les URL de lecture renvoyées sont des URL de fichier OSS. Dans ce cas, la signature d'URL n'est pas disponible, mais des informations d'authentification OSS sont générées par défaut. Pour plus d'informations, consultez la section OSS - Inclure les signatures dans les URL. Lorsque vous appelez l'API Obtenir les URL de lecture vidéo pour obtenir les URL de lecture, vous pouvez toujours utiliser le paramètre AuthTimeout pour spécifier la durée de vie (TTL) de l'URL OSS de la vidéo, mais vous ne pouvez pas personnaliser les informations d'authentification basées sur votre AccessKey.

    • Si vous définissez le Bucket de stockage sur public-read sur la page Gestion du stockage de la console, vous pouvez ignorer les informations d'authentification OSS (pour plus d'informations, consultez la section Gestion du stockage). Dans ce cas, l'URL est valide en permanence, mais il existe un risque de hotlinking et de téléchargements illégaux. Par conséquent, le Bucket de stockage doit être défini sur private autant que possible.

Pour plus d'informations sur les paramètres courants des URL de lecture, consultez la section Paramètres de lecture courants.

Vous pouvez obtenir les URL de lecture de l'une des manières suivantes :

  • Directement : affichez la notification d'événement après la fin du transcodage ou appelez l'opération GetPlayInfo.

  • À l'aide d'un identifiant de lecture : utilisez le SDK du lecteur ApsaraVideo et appelez l'opération GetVideoPlayAuth pour obtenir un identifiant de lecture. Le SDK du lecteur ApsaraVideo utilise automatiquement l'identifiant pour obtenir l'URL de lecture.

Méthodes de lecture

  • Aperçu dans la console ApsaraVideo VOD

    Le lecteur d'aperçu ApsaraVideo VOD offre des fonctionnalités telles que l'avance rapide, le contrôle du volume, les sous-titres, les pistes audio, le changement de résolution et les commentaires en direct. Ces fonctionnalités facilitent la prévisualisation de vos vidéos.预览视频

    • Sur la page Audio/Vidéo de la console, sélectionnez une vidéo à prévisualiser. Les flux chiffrés sont lus par défaut.

    • Sur la page Audio/Vidéo > Gérer > URL vidéo de la console, sélectionnez un flux à prévisualiser. Pour garantir la sécurité vidéo, seuls les flux non chiffrés peuvent être prévisualisés.

  • Intégrez le SDK du lecteur ApsaraVideo

    Avant d'intégrer le SDK du lecteur ApsaraVideo, tenez compte des exigences suivantes en matière de version et d'authentification :

    Version recommandée : utilisez le SDK du lecteur ApsaraVideo 2.37.6 ou une version ultérieure. Cette version résout les problèmes de compatibilité de lecture HLS avec Chrome 141+ et les navigateurs Edge, corrige le rendu anormal des plugins et traite les problèmes de fuite de mémoire.

    À partir de la version 2.28.0 du SDK, l'authentification par licence est obligatoire. Pour configurer la licence :

    1. Demandez une clé de licence sur la page Gestion du SDK de la console ApsaraVideo VOD. La licence de l'édition standard Web est actuellement gratuite.

    2. Lors de l'initialisation du lecteur, configurez les paramètres domain (le nom de domaine de la page où le lecteur est intégré, et non le domaine de stockage vidéo ou CDN) et licenseKey.

    Pour plus de détails sur l'obtention et la configuration d'une licence, consultez la section Comment obtenir et configurer une licence de lecteur Web ?

    Changement de chemin d'accès aux ressources : à partir de la version 2.16.3 du SDK, les chemins d'URL des ressources JS et CSS ont changé. Lors de la mise à niveau, mettez à jour toutes les références de ressources vers les nouveaux chemins.

    Méthodes d'intégration :

    • Lecture VID + PlayAuth : obtenez un identifiant de lecture depuis le serveur et envoyez-le au client pour la lecture. Cette méthode offre une sécurité élevée. Pour plus d'informations, consultez la section Obtenir un identifiant de lecture.

    • Lecture basée sur l'URL : transmettez directement l'URL de lecture obtenue au lecteur. Pour plus d'informations, consultez la section Lire une vidéo à l'aide d'une URL de lecture.

    • Choix entre l'édition standard et l'édition professionnelle : le SDK du lecteur ApsaraVideo est disponible en édition standard et en édition professionnelle. L'édition professionnelle prend également en charge des fonctionnalités avancées telles que le codage H.266, DASH, les sous-titres externes, le préchargement, le pré-rendu et les stratégies ABR avancées, qui ne sont pas incluses dans l'édition standard. Si vous avez uniquement besoin d'un contrôle de lecture de base (tel que la lecture de vidéos à la demande ou en direct, la lecture à vitesse variable et le changement de résolution), l'édition standard suffit. Si vous avez besoin des fonctionnalités avancées mentionnées ci-dessus, nous vous recommandons d'acheter l'édition professionnelle.

    Important

    Important : les versions supérieures du SDK appliquent une validation des paramètres plus stricte. En mode de lecture basé sur l'URL, ne spécifiez pas de paramètres incompatibles tels que format:m3u8 et ne mélangez pas les paramètres VID/PlayAuth. Le SDK ne prend pas en charge la rétrocompatibilité avec toutes les API héritées.

    • Filigrane dynamique : le lecteur Web prend en charge les filigranes dynamiques (marquee/clignotement aléatoire). Configurez-les à l'aide du paramètre watermark. Cela peut coexister avec les filigranes statiques configurés dans la console.

    • Contrôle du téléchargement : les navigateurs fournissent un bouton de téléchargement intégré qui ne peut pas être supprimé via les paramètres de lien. Pour contrôler les autorisations de téléchargement, intégrez le SDK et utilisez des paramètres pour gérer le comportement de téléchargement.

    • Lecture automatique sans SDK : lorsque vous n'utilisez pas le SDK ApsaraVideo, implémentez la lecture automatique en définissant à la fois autoplay:true et muted:true afin de respecter les politiques de lecture automatique des navigateurs.

    • Méthode de lecture MPS : la méthode de lecture MPS (utilisant accId/accSecret) est toujours prise en charge mais n'est plus maintenue. Nous vous recommandons de migrer vers les méthodes de lecture recommandées.

    • URL Blob : le nouveau lecteur peut afficher des URL blob dans la barre d'adresse. Il s'agit d'un comportement normal MSE (Media Source Extensions) et non d'une erreur.

  • Intégrez un lecteur tiers

    • Intégrez un lecteur tiers pour lire une vidéo à l'aide d'une URL de lecture.

    • Après avoir obtenu une URL de lecture, transmettez-la à votre lecteur. Cette méthode est flexible, mais vous oblige à implémenter des fonctionnalités telles que le changement de résolution et la gestion des exceptions.

Sécurité de la lecture (limites de lecture et de téléchargement)

Description de la facturation

  • Si vous configurez un nom de domaine accéléré, vous êtes facturé pour le service CDN lors de la lecture de fichiers audio ou vidéo.

  • Si vous ne configurez pas de nom de domaine accéléré, vous êtes facturé pour le trafic sortant du stockage lors de la lecture de fichiers audio ou vidéo.

Pour plus d'informations, consultez la section Facturation des services de base.

FAQ

Comment résoudre les problèmes d'échec de lecture vidéo ?

  1. Vérifiez le réseau : confirmez que le client dispose d'une connectivité réseau normale.

  2. Compatibilité du navigateur (Chrome/Edge 141+) : si la lecture m3u8 échoue, scintille ou renvoie l'erreur 4400 sur les nouvelles versions de Chrome ou Edge, mettez à niveau le lecteur Web vers la version 2.37.6 ou ultérieure et vérifiez que la licence est correctement configurée.

  3. Validation des paramètres : en mode de lecture basé sur l'URL, vérifiez que vous n'avez pas défini incorrectement format:m3u8 ou mélangé les paramètres VID et PlayAuth. Le SDK applique une validation stricte des paramètres dans les versions plus récentes.

  4. MEDIA_ERR_SRC_NOT_SUPPORTED ou fragLoadError (403) : vérifiez la capacité de lecture native de Safari, la configuration CORS, la liste blanche de protection contre le hotlinking et la période de validité de PlayAuth (100 secondes).

  5. ERR_CONNECTION_TIMED_OUT : vérifiez la connectivité réseau locale, les règles de pare-feu et l'état du CDN.

  6. Vérifiez le statut de la vidéo : appelez l'API Obtenir les URL de lecture audio et vidéo ou vérifiez dans la console si le statut de la vidéo est Normal.

  7. Vérifiez l'URL de lecture ou les identifiants : vérifiez si auth_key a expiré ou si la signature est valide.

  8. Vérifiez le lecteur : confirmez que le lecteur prend en charge le format vidéo. Pour obtenir des informations sur les formats pris en charge par le lecteur ApsaraVideo, consultez la section Fonctionnalités du SDK du lecteur ApsaraVideo.

  9. Saccades ou échec de la lecture lorsqu'un navigateur mobile ouvre directement une URL de lecture copiée : cela se produit lorsque l'URL de lecture ne comporte pas de signature de signature d'URL valide, ou lorsque le nom de domaine a activé la protection contre le hotlinking Referer et bloque la requête. Solution : vérifiez si la signature d'URL est activée pour l'URL de lecture et si elle porte une signature auth_key valide. Vérifiez la configuration de la liste blanche de protection contre le hotlinking Referer pour le nom de domaine. Nous vous recommandons d'utiliser une URL de lecture signée ou d'accéder à la vidéo via le SDK du lecteur au lieu d'exposer directement l'URL de lecture brute.

  10. **Désynchronisation audio et vidéo lors de la lecture en avance rapide dans le composant video d'un mini-programme WeChat** : cela se produit car le composant natif video des mini-programmes WeChat ne prend pas entièrement en charge les listes de montage au niveau sous-jacent, ce qui entraîne l'accumulation du décalage audio initial lors de la lecture en avance rapide ou des opérations de recherche. Solution : nous vous recommandons d'utiliser le SDK du lecteur ApsaraVideo pour le web au lieu du composant natif video, ou de transcoder la vidéo pour améliorer la compatibilité.

  11. Le lecteur Web cesse de fonctionner après une mise à niveau du navigateur Chrome (problème de compatibilité HLS) : nous vous recommandons de mettre à niveau le SDK du lecteur ApsaraVideo pour le web vers la version 2.37.8 ou ultérieure pour résoudre ce problème de compatibilité, et de demander et configurer une licence gratuite si nécessaire (pour savoir comment demander une licence, consultez la description sous « Prérequis »).

Pour plus d'informations sur la résolution d'autres erreurs, consultez la section Résoudre les erreurs de lecture.

Remarque

Astuce : utilisez la démo officielle pour tester la lecture. Si la démo fonctionne correctement, le problème se situe probablement dans votre code d'intégration.

Comment lire des vidéos chiffrées ?

ApsaraVideo VOD propose plusieurs méthodes de chiffrement, telles que la cryptographie propriétaire Alibaba Cloud et le chiffrement HLS. Pour utiliser le chiffrement, configurez un groupe de modèles de transcodage chiffré pour transcoder la vidéo. Ensuite, utilisez le SDK du lecteur ApsaraVideo pour déchiffrer et lire la vidéo. Pour plus d'informations, consultez la section Chiffrement vidéo.

**Échec de la lecture chiffrée avec l'erreur InvalidParameter, indiquant que le paramètre Rand n'est pas valide**

Si la lecture d'une vidéo chiffrée échoue avec une erreur InvalidParameter indiquant que le paramètre Rand n'est pas valide, vous devez définir le paramètre encryptType correspondant dans la configuration de lecture. Pour plus d'informations, consultez les instructions de chiffrement vidéo dans la section Chiffrement vidéo.

Quelles sont les notes d'utilisation des API courantes du SDK du lecteur ?

Voici les pièges courants et les modèles d'utilisation corrects lors de l'appel des API du SDK du lecteur :

  • Obtention de la position de lecture sur iOS : utilisez le paramètre position du rappel onCurrentPositionUpdate. Après une recherche, écoutez l'événement AVPEventSeekEnd avant de récupérer la position.

  • Valeur de retour de getPlayTime() : renvoie la durée de lecture sous forme d'entier en secondes. Cela reflète le temps de lecture réel (hors pauses et opérations de recherche). Lors de la lecture à vitesse ajustée, la durée est calculée en fonction du temps physique écoulé.

  • Changement de qualité vidéo avec selectTrack : si selectTrack échoue lors du changement de qualité, utilisez setQuality + setStartTime + prepare comme solution de contournement temporaire.

  • Changement de vidéos avec replayByVidAndPlayAuth : lors du changement de vidéos à l'aide de replayByVidAndPlayAuth, passez explicitement le paramètre swScriptURL (une URL HTTPS absolue) pour prendre en charge le chiffrement privé sur les anciennes versions d'iOS.

  • Définition de l'heure de début : la définition de l'heure de début de la lecture n'affecte pas les opérations manuelles de la barre de progression par l'utilisateur.

  • Nettoyage du tampon : le SDK ne prend actuellement pas en charge une API de nettoyage dynamique du tampon pendant la lecture.

Comment obtenir et configurer une licence de lecteur Web ?

Questions fréquemment posées sur la licence du lecteur Web :

  • Comment faire une demande : demandez une licence gratuitement sur la page Gestion du SDK de la console ApsaraVideo VOD.

  • Liaison de domaine : la licence est liée au nom de domaine affiché dans la barre d'adresse du navigateur de la page où le lecteur est intégré (les sous-domaines sont pris en charge). Elle n'est pas liée au domaine de stockage vidéo ou d'accélération CDN.

  • Aucun fichier de certificat nécessaire : la licence est une clé de chaîne obtenue via l'API. Il n'est pas nécessaire de télécharger ou de déployer un fichier de certificat sur votre serveur. Passez simplement les paramètres domain et licenseKey lors de l'initialisation du lecteur.

  • Ressources vidéo partagées : différentes licences peuvent partager la même ressource vidéo.

  • Débogage local avec HTTPS : si la validation de la licence échoue en raison de problèmes de certificat HTTPS lors des tests locaux, vous pouvez utiliser l'une des méthodes suivantes (pour les tests uniquement) :

    • Utilisez mkcert pour générer un certificat auto-signé.

    • Ajoutez l'indicateur --ignore-certificate-errors lors du lancement de Chrome.

    • Déployez sur un serveur de test HTTPS valide.

  • SDK 2.34 et versions ultérieures : la configuration de la licence est obligatoire pour que le lecteur fonctionne correctement.

  • Conformité des données pour les anciennes versions du SDK : les anciennes versions du SDK du lecteur ApsaraVideo pour le web présentent des problèmes de conformité des données. Si vous utilisez le lecteur en dehors de la Chine continentale, vous devez passer à une version nécessitant une licence et lier une licence valide. Pour savoir comment demander et configurer une licence, consultez la section FAQ sur la licence.

Comment gérer les problèmes de style et de composants du lecteur Web ?

Problèmes courants et solutions pour les styles et les composants du lecteur :

  • Icônes manquantes lors du déploiement local : si des icônes sont manquantes lors du déploiement local, téléchargez le répertoire complet /skins/default/ ou mettez à jour les chemins relatifs dans le CSS pour utiliser les adresses CDN.

  • Erreur de changement de qualité QualityComponent : lors du changement de qualité à l'aide de QualityComponent, si vous rencontrez une erreur t.getQuality is not a function, ajoutez la fonction de rappel args à votre configuration et mettez à niveau aliplayercomponents vers la version 1.1.2 ou ultérieure.

  • Image de couverture chevauchant la barre de progression (mode VID + PlayAuth) : lorsque l'image de couverture chevauche la barre de progression en mode VID + PlayAuth, masquez-la à l'aide de CSS (.prism-cover) ou activez autoplay + muted pour contourner le problème.

  • Compatibilité HLS du navigateur WeChat : pour les problèmes de lecture HLS dans le navigateur intégré de WeChat, configurez useHlsNative: false pour forcer la solution de lecture fMP4.

Comment spécifier une version lors de l'installation du SDK du lecteur via npm ?

Pour installer une version spécifique du SDK du lecteur, utilisez la commande suivante :

npm install aliyun-aliplayer@<version> --save

Par exemple, pour installer la version 2.27.1 :

npm install aliyun-aliplayer@2.27.1 --save