Quels protocoles de diffusion ApsaraVideo Live prend-il en charge ?
Comment obtenir une URL de diffusion ?
Comment obtenir une URL de diffusion signée ?
Que faire si l'accès aux ressources via HTTPS échoue ?
Pourquoi ne puis-je pas voir un flux en direct ?
Que faire si la lecture RTMP et FLV fonctionne normalement, mais que la lecture HLS échoue ?
Que faire si la lecture FLV fonctionne normalement, mais que la lecture RTMP échoue ?
Que faire si l'écran clignote pendant la lecture ?
L'image vidéo présente un espace avec des bordures noires
Que faire si l'audio et la vidéo sont désynchronisés pendant la diffusion en direct ?
Que faire en cas de saccades lors de la lecture d'un flux en direct ?
Comment accéder au dernier clip après la reprise d'une lecture mise en pause ?
Problèmes de lecture (écran noir, absence de vidéo ou plantage)
L'audio est lu, mais aucune vidéo n'est affichée dans la console ou le navigateur
Symptôme : Lors de la lecture d'un flux en direct dans la console ou un navigateur, vous entendez l'audio mais ne voyez pas la vidéo. Une erreur d'échec de décodage peut également apparaître.
Solution :
Vérifiez si la source d'ingestion du flux utilise le codec H.265. Certains navigateurs ne prennent pas en charge le H.265 et ne peuvent pas afficher la vidéo.
Si tel est le cas, remplacez le codec à la source d'ingestion par un format courant, tel que H.264 ou AV1.
Si vous devez utiliser le H.265, lisez le flux à l'aide d'un lecteur dédié prenant en charge ce codec, comme ApsaraVideo Player.
Le flux en direct devient soudainement noir, mais revient après reconnexion
Symptôme : Pendant la lecture, l'écran devient soudainement noir. La vidéo revient après avoir quitté et rejoint à nouveau le flux. L'écran peut également clignoter une fois avant de disparaître.
Cause :
Horodatages désordonnés depuis la source d'ingestion : Les horodatages de temps de décodage (DTS) audio et vidéo provenant de la source d'ingestion augmentent trop rapidement ou ne sont pas incrémentiels. Cela empêche le lecteur d'analyser correctement le flux.
Images clés manquantes : La source d'ingestion n'insère pas d'images clés à intervalles réguliers. Cela empêche le lecteur de décoder correctement le flux.
Fluctuations réseau au niveau de la source d'ingestion : La connexion réseau de la source d'ingestion est instable, ce qui interrompt la transmission des données.
Solution :
Vérifiez la stabilité du dispositif et du logiciel d'ingestion de flux pour vous assurer que la source d'ingestion fonctionne correctement.
Définissez le groupe d'images (GOP) à 2 secondes ou moins afin de garantir l'insertion régulière d'images clés.
Vérifiez la bande passante et les conditions réseau de la source d'ingestion. Assurez-vous que la bande passante ascendante est suffisante et que la connexion est stable.
Comment résoudre le problème d'écran blanc lors de l'utilisation du Web Player sur HarmonyOS ?
Symptôme : Lorsque vous utilisez le Web Player pour lire un flux en direct sur un appareil HarmonyOS, la page affiche un écran blanc sans vidéo.
Cause : Une version obsolète du SDK Web Player n'est pas compatible avec l'environnement HarmonyOS.
Solution :
Mettez à jour le SDK Web Player vers la version 2.37.8 ou ultérieure pour garantir la compatibilité avec l'environnement HarmonyOS.
Assurez-vous que la licence Web Player est correctement configurée : le type de client de l'application doit être défini sur Web et une licence doit être associée à l'application. Pour les étapes de configuration, consultez la section « Obtenir et configurer une licence SDK Web Player » du Guide d'intégration de la licence.
Un écran vert apparaît lors de la lecture via RTMP
Symptôme : La vidéo devient verte lors de la lecture d'un flux en direct via le protocole RTMP.
Solution :
Remplacez le protocole de lecture par FLV ou M3U8 (HLS). Ces deux protocoles sont plus stables que RTMP et peuvent résoudre les problèmes occasionnels d'écran vert.
Comment résoudre les problèmes de lecture audio seule (sans vidéo) ou de saccades lors de l'avance rapide sur les appareils iOS et Mac ?
Étapes de dépannage :
Passez à un autre environnement réseau et réessayez.
Utilisez un autre appareil iOS ou un appareil Android pour effectuer un test comparatif, afin d'exclure un problème spécifique à l'appareil ou à l'environnement réseau.
Si les vérifications de base ci-dessus ne résolvent pas le problème, examinez plus en détail s'il s'agit d'un problème de compatibilité entre les appareils.
Comment gérer la reprise automatique de la lecture par Aliplayer dans un scénario de diffusion en direct sur le web après que la page est devenue invisible ou que l'écran s'est éteint ?
Cause : Le lecteur en direct ne reprend pas automatiquement la lecture après une pause. Ce comportement se produit généralement parce qu'une méthode déclenchant la lecture dans le code global est activée de manière inattendue.
Solutions :
Vérifiez la logique du code frontal pour identifier les méthodes qui démarrent la lecture et pourraient être déclenchées de manière inattendue.
Mettez en place une surveillance de l'état de lecture et gérez les états inattendus dans votre application.
Pour surveiller l'état du flux, appelez l'opération
DescribeLiveStreamsOnlineListafin d'interroger les flux actifs, ou configurez des rappels de flux en direct pour recevoir des notifications en cas de déconnexion ou de récupération inattendue d'un flux.
Erreurs de lecture et échecs de chargement
Erreur 4008 : Délai d'attente des données du tampon dépassé
Cause : La connexion réseau au niveau du point de lecture est instable ou la politique de mise en mémoire tampon du lecteur est mal configurée. Cela provoque un délai d'attente lors du chargement des données.
Solution :
Vérifiez la connexion réseau au niveau du point de lecture pour vous assurer qu'elle est stable.
Actualisez la page ou rechargez le lecteur.
Si le problème persiste, vérifiez la configuration de la politique de mise en mémoire tampon du lecteur.
manifestLoadError (code d'erreur 4006) lors du chargement d'un flux M3U8 dans un lecteur H5
Causes :
Le certificat HTTPS du nom de domaine de lecture n'est pas valide ou une stratégie CORS (Cross-Origin Resource Sharing) n'est pas configurée.
La protection contre le hotlinking par Referer est activée, mais le nom de domaine du lecteur ne figure pas sur la liste d'autorisation.
L'AppName ou le StreamName dans l'URL ne correspond pas à la configuration dans la console.
Solutions :
Vérifiez que le certificat HTTPS du nom de domaine de lecture est correctement configuré, valide et correspond au nom de domaine.
Confirmez que la configuration CORS autorise l'accès depuis le domaine où le lecteur est hébergé.
Si la protection contre le hotlinking par Referer est activée, ajoutez le nom de domaine du lecteur ou le Referer Alibaba Cloud par défaut à la liste d'autorisation.
Vérifiez que l'AppName et le StreamName dans l'URL de lecture correspondent exactement à la configuration d'ingestion de flux dans la console.
Échec de l'extraction simultanée de flux
Symptôme : Lors de l'extraction simultanée de plusieurs flux en direct, certains flux ne parviennent pas à se charger. La fermeture d'un flux permet aux autres de récupérer.
Causes :
Des StreamNames dupliqués pour différents flux provoquent un conflit d'allocation des ressources.
Le lecteur dispose de connexions locales ou de ressources de décodage insuffisantes, ce qui empêche le traitement simultané de plusieurs flux.
Solutions :
Assurez-vous que le StreamName de chaque flux est unique pour éviter les conflits.
Vérifiez les limites de connexions simultanées du lecteur. Si nécessaire, ajustez les paramètres de concurrence du lecteur ou extrayez les flux par lots.
Que faire si AliPlayerSDK sur iOS expire lors de la lecture d'un flux RTMP ?
Cause : iOS prend en charge l'extraction de flux RTMP, mais vous ne pouvez pas déboguer AliPlayerSDK à l'aide du débogage en ligne Xcode. Si votre téléphone est connecté à votre ordinateur via USB pendant le débogage, la connexion provoque l'expiration du délai de lecture.
Solution : Déconnectez le câble USB reliant votre téléphone à votre ordinateur, puis testez à nouveau la lecture.
Que faire si l'audio reste définitivement en retard sur la vidéo après le basculement entre le premier plan et l'arrière-plan dans le SDK ApsaraVideo Live pour iOS ?
Cause : Après le retour de l'application au premier plan, la couche de capture audio (AVAudioEngine) appelle sendPCMData de manière répétée sur une courte période. Par conséquent, des données audio obsolètes s'accumulent dans la file d'attente d'encodage du SDK et l'audio reste définitivement en retard sur la vidéo.
Solutions :
(Recommandé) Appelez
alivcPusher.pausePush()lorsque l'application passe en arrière-plan et appelezalivcPusher.restartPush()lorsque l'application revient au premier plan. Cela restaure la synchronisation audio-vidéo.Effacez les données audio mises en cache.
Appelez
pusher.stopPushlorsque l'application passe en arrière-plan pour arrêter l'ingestion de flux, puis redémarrez l'ingestion de flux après le retour de l'application au premier plan.
Comment résoudre l'erreur 4002 du Web Player lorsque l'URL de diffusion signée n'a pas expiré ?
Symptôme : Le lecteur renvoie le code d'erreur 4002 même si l'URL de diffusion signée n'a pas expiré.
Étapes de dépannage :
Vérifiez si le domaine de diffusion dispose d'une liste d'autorisation de Referer et assurez-vous que le domaine hébergeant la page du lecteur y est ajouté.
Vérifiez si le partage de ressources cross-origin (CORS) est activé pour le domaine.
Vérifiez si le problème est causé par une modification du moteur du navigateur Chrome dans Chrome 130 ou versions ultérieures. Mettez à niveau le SDK Web Player vers la version 2.38.0 ou ultérieure pour bénéficier de la journalisation, des statistiques et de la prise en charge de la compatibilité.
Que faire si l'extraction de flux renvoie une erreur 404 et que le lecteur ne se reconnecte pas automatiquement après la récupération du flux ?
Cause de l'erreur 404 : L'erreur 404 indique que le flux n'existe pas car l'ingestion de flux n'a pas commencé ou a été arrêtée. Par défaut, le lecteur n'effectue pas de nouvelles tentatives continues après une erreur 404. L'application doit mettre en œuvre une logique de récupération.
Solutions pour l'erreur 404 :
Surveillez les événements d'erreur du lecteur. Après l'apparition de l'erreur 404, attendez 2 à 5 secondes avant de retenter la lecture et limitez le nombre de tentatives pour éviter des requêtes trop fréquentes.
Avant de démarrer la lecture, interrogez les informations d'ingestion de flux pour confirmer que l'ingestion a commencé, ou utilisez des rappels d'ingestion et d'interruption de flux pour détecter l'état du flux.
Lorsque la diffusion n'a pas commencé, affichez une page d'attente ou un carrousel au lieu d'exposer directement l'erreur aux spectateurs.
Différence entre « Connection Timeout was reached » et l'erreur 404 : Après le démarrage de l'ingestion de flux, le centre de diffusion en direct met environ 3 à 4 secondes pour recevoir les données. Si le lecteur lance l'extraction de flux avant que la connexion d'ingestion ne soit entièrement prête, une connexion persistante peut être établie, mais aucune donnée audio ou vidéo n'est reçue. Cela provoque l'erreur « Connection Timeout was reached ». Contrairement à l'erreur 404, ce délai d'attente n'indique pas que le flux n'existe pas.
Solutions pour « Connection Timeout was reached » :
Optimisation côté client : Ajoutez une logique de nouvelle tentative pour cette erreur de délai d'attente.
Optimisation de la logique métier : Configurez une URL de rappel d'ingestion de flux sur le serveur. Notifiez au lecteur de lancer l'extraction de flux uniquement après que le serveur a reçu le rappel « ingestion de flux réussie » d'Alibaba Cloud.
Stabilité de l'ingestion de flux : Maintenez l'ingestion de flux stable et évitez les démarrages et arrêts fréquents.
Protocoles de lecture, codecs et optimisation de la latence
Comment configurer le SDK du lecteur pour prendre en charge la lecture H.265 ?
Description : Pour lire un flux en direct encodé en H.265 avec le SDK ApsaraVideo Player, vous devez remplir les conditions préalables suivantes :
Demandez l'autorisation d'activer la lecture H.265 (ou configurez votre projet dans la console pour prendre en charge le H.265).
Ajoutez le paramètre
is_enhanced_rtmp_play=onà l'URL de lecture.
Cette rubrique est étroitement liée au contenu de dépannage H.265 figurant dans la section « L'audio est lu, mais aucune vidéo n'est affichée dans la console ou le navigateur » : cette dernière aborde la détection du codec côté ingestion de flux, tandis que celle-ci traite de la configuration du SDK et du paramètre d'URL de lecture nécessaire pour activer la lecture par extraction de flux H.265.
Comment résoudre le blocage d'une vidéo lors de l'extraction d'un flux avec un plugin tiers tel que live-player ?
Étapes de dépannage :
Utilisez la démo du lecteur Alibaba Cloud pour effectuer un test comparatif : sélectionnez le type de diffusion en direct et saisissez l'URL d'extraction pour prévisualiser.
Si la lecture dans la démo fonctionne normalement, le problème vient du plugin tiers ou de l'environnement client. Vérifiez les journaux côté client.
Si les saccades se produisent également dans la démo, vérifiez les journaux hors ligne du domaine d'extraction pour exclure les erreurs serveur 5xx et les problèmes de configuration 403/404.