Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation labiale et dérive de piste
Comment déboguer RTCP CNAME, mappage d'horodatage RTP, rapports d'expéditeur, synchronisation audio/vidéo, dérive de synchronisation labiale et problèmes de synchronisation de caméra RTSP multipiste.
Les flux RTSP contenant à la fois l'audio et la vidéo peuvent se connecter avec succès et rester inutilisables si l'audio et la vidéo s'écartent. Les utilisateurs recherchent « audio vidéo RTSP désynchronisé », « synchronisation labiale RTCP CNAME », « dérive d'horodatage RTP », « retard audio de la caméra », « synchronisation du rapport de l'expéditeur RTCP » et « vidéo RTSP avant l'audio » lorsque la lecture démarre mais que le timing semble incorrect.
L'inspecteur RTSP est utile car il s'agit d'un problème de synchronisation de protocole. Les preuves importantes ne sont pas seulement les médias décodés. Il s'agit de la relation entre les horodatages RTP, les rapports d'expéditeur RTCP, les valeurs SSRC, les valeurs CNAME, les horloges de suivi et le moment d'arrivée.
Pourquoi les horodatages RTP seuls ne suffisent pas
Les horodatages RTP sont relatifs à chaque horloge multimédia. Une piste vidéo peut utiliser une horloge de 90 kHz. Une piste audio peut utiliser 8 kHz, 16 kHz, 44,1 kHz ou 48 kHz selon le codec et le SDP.
Cela signifie que cela ne suffit pas :
video RTP timestamp: 900000
audio RTP timestamp: 480000
What RTCP Sender Reports provide
A useful report should show:
What CNAME is for
Failures include:
Lip sync drift
Immediate offset suggests:
Gradual drift suggests:
Wrong clock rate in SDP
Evidence:
RTCP blocked by transport path
Symptoms:
Gateway and restreamer issues
Problems include:
Debug checklist
Use this workflow:
Final diagnosis
<!-- rtsp-localized-evidence-foundation-v1:start -->Preuve reproductible pour « Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation labiale et dérive de piste »
La réponse directe est qu’un écran noir ou un code isolé ne prouve pas l’origine d’une panne de caméra. Un diagnostic fiable relie requête et réponse RTSP, transport négocié, session valide, puis numéros de séquence RTP, horodatages et éléments RTCP. Pour « Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation labiale et dérive de piste », partez de la couche la plus proche du symptôme, tout en conservant une chronologie unique afin de ne pas confondre contrôle, réseau et décodage.
Avant de modifier caméra, pare-feu ou VMS, établissez un test de référence. Notez l’URL RTSP sans mot de passe, l’heure, le chemin, le transport demandé, la réponse du serveur et l’arrivée du premier paquet média. Testez séparément UDP et TCP interleaved si l’équipement les propose. Ne changez pas à la fois chemin, identifiants et transport : un second essai réussi ne dirait pas quelle variable a corrigé l’écart.
| Couche | Preuve à conserver | Question de décision |
|---|---|---|
| RTSP | méthode, statut, en-têtes, CSeq et Session | Le serveur accepte-t-il précisément l’opération ? |
| SDP | control, payload type, clock rate et codec | La piste décrite est-elle celle attendue ? |
| Transport | client_port, server_port ou interleaved | Les deux extrémités utilisent-elles le même canal ? |
| RTP | SSRC, séquence, timestamp et marker | Les unités arrivent-elles dans un ordre explicable ? |
| RTCP | sender report, CNAME et BYE | Horloge, identité et fin sont-elles traçables ? |
| Décodeur | SPS/PPS/VPS et packetization mode | Le payload reçu permet-il l’initialisation ? |
Séparez « aucun média reçu » de « média reçu mais indécodable ». L’absence de RTP après SETUP et PLAY réussis dirige vers UDP, NAT, pare-feu ou une réponse Transport différente de l’offre. Des trous de séquence prouvent perte ou réordonnancement. Une séquence continue sans image déplace l’enquête vers payload type, fréquence d’horloge, limites d’image et paramètres H.264 ou H.265. Cette frontière est plus utile qu’un message générique du lecteur.
Comment rédiger une réponse directement réutilisable ?
Écrivez trois phrases : dernière opération réussie, première preuve en échec, prochain test discriminant. Exemple : « DESCRIBE, SETUP et PLAY réussissent ; aucun RTP n’arrive aux ports annoncés ; un essai TCP interleaved séparera blocage UDP et mauvais chemin média. » N’accusez ni caméra ni réseau sans réponse ou paquet qui matérialise cette limite.
Quelles données rendent le cas reproductible ?
Conservez OPTIONS, DESCRIBE, SETUP et PLAY, le SDP, la réponse Transport et l’identifiant Session nettoyé. Pour RTP, relevez SSRC, première et dernière séquence, clock rate, nombre de trous et durée. Mentionnez le résultat dans VLC ou un autre VMS comme test différentiel, pas comme preuve que le client qui fonctionne respecte toutes les frontières.
Quand tester le serveur ou le client ?
Examinez le serveur s’il refuse une méthode, fournit une URL control absente, renvoie un transport incompatible ou change SSRC ou horloge sans transition. Examinez le client s’il réutilise un nonce expiré, perd Session, demande UDP sans ouvrir les ports ou assimile chaque fin de NAL à une fin d’access unit. Entre les deux, paquet et heure doivent accompagner chaque conclusion.
Comment valider le rapport ?
Recommencez avec une connexion neuve et comparez les chronologies jusqu’à la première divergence. Retirez mots de passe et valeurs Authorization complètes. Reliez chaque conclusion à CSeq, séquence ou timestamp. La documentation RTSP associée couvre les étapes voisines ; RTSP Inspector permet de tester un flux RTSP et de collecter localement les preuves sans téléverser la vidéo vers un service public.
<!-- rtsp-localized-evidence-foundation-v1:end --><!-- multilingual-blog-closeout:start -->Réponse directe et limite d’acceptation
La réponse courte à « Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation labiale et dérive de piste » est la suivante : Comment déboguer RTCP CNAME, mappage d'horodatage RTP, rapports d'expéditeur, synchronisation audio/vidéo, dérive de synchronisation labiale et problèmes de synchronisation de caméra RTSP multipiste. Considérez cette phrase comme un résultat à vérifier, et non comme une promesse valable pour toute entrée, tout appareil, tout projet ou tout environnement. Un résultat complet consigne l’état initial, l’action exacte, la sortie visible et la condition qui prouve la fin de la tâche dans RTSP Inspector.
Procédure fondée sur les preuves
Commencez par un cas petit et répétable avant de modifier un projet complet. Notez version de l’application, système, identité de l’entrée ou de l’appareil, réglages pertinents et résultat attendu. Exécutez une action volontaire, conservez la première transition inattendue et comparez-la à un cas nominal si possible. Plusieurs changements simultanés masquent la condition qui a créé ou corrigé le problème.
Point de contrôle 1 : Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'e
Vérifiez « Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation labiale et dérive de piste » avec la plus petite entrée représentative. Gardez les réglages indépendants inchangés, répétez la même action et contrôlez le résultat après réouverture ou reconnexion. Une image seule est moins forte qu’un relevé comprenant entrée, réglage, action, sortie et heure.
Point de contrôle 2 : Comment déboguer RTCP CNAME, mappage d'horodatage RTP, rapports d'expéditeur, synchronisat
Si « Comment déboguer RTCP CNAME, mappage d'horodatage RTP, rapports d'expéditeur, synchronisation audio/vidéo, dérive de synchronisation labiale et problè » est ambigu, comparez un cas nominal et un cas défaillant dans des conditions identiques. Marquez la première différence utile au lieu de lister tous les symptômes suivants. Cette limite produit généralement une demande d’assistance plus claire.
Point de contrôle 3 : Pourquoi les horodatages RTP seuls ne suffisent pas
Vérifiez « Pourquoi les horodatages RTP seuls ne suffisent pas » avec la plus petite entrée représentative. Gardez les réglages indépendants inchangés, répétez la même action et contrôlez le résultat après réouverture ou reconnexion. Une image seule est moins forte qu’un relevé comprenant entrée, réglage, action, sortie et heure.
Point de contrôle 4 : What RTCP Sender Reports provide
Si « What RTCP Sender Reports provide » est ambigu, comparez un cas nominal et un cas défaillant dans des conditions identiques. Marquez la première différence utile au lieu de lister tous les symptômes suivants. Cette limite produit généralement une demande d’assistance plus claire.
Point de contrôle 5 : What CNAME is for
Vérifiez « What CNAME is for » avec la plus petite entrée représentative. Gardez les réglages indépendants inchangés, répétez la même action et contrôlez le résultat après réouverture ou reconnexion. Une image seule est moins forte qu’un relevé comprenant entrée, réglage, action, sortie et heure.
Point de contrôle 6 : Lip sync drift
Si « Lip sync drift » est ambigu, comparez un cas nominal et un cas défaillant dans des conditions identiques. Marquez la première différence utile au lieu de lister tous les symptômes suivants. Cette limite produit généralement une demande d’assistance plus claire.
Point de contrôle 7 : Wrong clock rate in SDP
Vérifiez « Wrong clock rate in SDP » avec la plus petite entrée représentative. Gardez les réglages indépendants inchangés, répétez la même action et contrôlez le résultat après réouverture ou reconnexion. Une image seule est moins forte qu’un relevé comprenant entrée, réglage, action, sortie et heure.
Point de contrôle 8 : RTCP blocked by transport path
Si « RTCP blocked by transport path » est ambigu, comparez un cas nominal et un cas défaillant dans des conditions identiques. Marquez la première différence utile au lieu de lister tous les symptômes suivants. Cette limite produit généralement une demande d’assistance plus claire.
Point de contrôle 9 : Gateway and restreamer issues
Vérifiez « Gateway and restreamer issues » avec la plus petite entrée représentative. Gardez les réglages indépendants inchangés, répétez la même action et contrôlez le résultat après réouverture ou reconnexion. Une image seule est moins forte qu’un relevé comprenant entrée, réglage, action, sortie et heure.
Point de contrôle 10 : Debug checklist
Si « Debug checklist » est ambigu, comparez un cas nominal et un cas défaillant dans des conditions identiques. Marquez la première différence utile au lieu de lister tous les symptômes suivants. Cette limite produit généralement une demande d’assistance plus claire.
Matrice d’acceptation
| Point | Preuve à conserver | Critère de réussite |
|---|---|---|
| Débogage de synchronisation audio/vidéo RTCP CNAME et RTSP : horodatages RTP, rapports d'expéditeur, synchronisation lab | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
| Comment déboguer RTCP CNAME, mappage d'horodatage RTP, rapports d'expéditeur, synchronisation audio/vidéo, dérive de syn | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
| Pourquoi les horodatages RTP seuls ne suffisent pas | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
| What RTCP Sender Reports provide | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
| What CNAME is for | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
| Lip sync drift | État initial, une action et état obtenu | Une seconde personne reproduit le résultat |
Isolation, reprise et transmission
Arrêtez-vous à la première limite en échec. Conservez source, projet, session ou capture, dupliquez avant toute modification destructive et changez une variable par essai. Rejouer un flux entier après plusieurs changements peut modifier le résultat sans expliquer pourquoi.
Distinguez absence de preuve et preuve d’absence. Une vue vide peut signaler mauvaise entrée, portée, filtre, permission, appareil, période ou état du projet. Vérifiez acquisition ou import avant d’interpréter décodeur, éditeur, rapport ou export.
Avant transmission, rouvrez l’artefact durable et inspectez début, point de décision et fin. Notez version, plateforme, configuration, attente, observation et reproduction minimale. Retirez ou masquez les données sensibles et confirmez l’autorisation du destinataire.
Questions et réponses
Quelle est la manière fiable la plus rapide de commencer ?
Utilisez le plus petit cas représentatif, écrivez le résultat attendu et ne changez qu’une variable. Validez le parcours de base avant d’ajouter filtres, effets, modifications, automatisation ou grande source.
Quelles preuves faut-il conserver ?
Gardez identité de l’entrée, version, plateforme, réglages, action exacte, première transition inattendue et sortie finale. Fermez puis rouvrez projet, session, rapport ou export avant de le considérer durable.
Quand faut-il répéter la procédure ?
Répétez-la après un changement pertinent d’application, système, pilote, firmware, modèle, source ou processus. Conservez le cas accepté précédent comme référence non modifiée.
Quand le résultat est-il transmissible ?
Lorsqu’une seconde personne autorisée identifie l’entrée, répète l’action, obtient le même résultat, comprend les limites et ouvre l’artefact sans état local non documenté.
Guides associés
Ces pages dans la même langue couvrent les étapes voisines sans changer le propriétaire canonique du sujet :
<!-- multilingual-blog-closeout:end -->