Ma configuration ressemble à ceci:GStreamer inférieure framerate après l'interruption du flux de données
- Une caméra Ethernet connecté à un noeud de liaison sans fil.
- La caméra envoie un flux codé H264 (320 * 184 à 25 FPS) en utilisant UDP.
- Un autre nœud de liaison sans fil connecté à un ordinateur portable (Windows 7).
- L'ordinateur portable exécute gstreamer.
- Les paquets UDP reçus sont utilisés pour afficher la vidéo sans latence.
La commande gstreamer pour afficher les données vidéo:
gst-launch-1.0 Protocoles de rtspsrc = 0x00000001 location = rtsp: //10.0.0.3: 554/stream1 latence = 0 drop_on_latency = true! décodebin! videoscale! video/x-raw, width = 1280, height = 800! autovideosink
Voici la question:
- I interrompre le flux de données en retirant le câble Ethernet entre la caméra et le premier noeud de liaison sans fil pendant 5 secondes puis rebranchez le câble. Résultat: l'affichage du flux vidéo s'arrête puis se rétablit. J'interromps le flux de données pendant 15 secondes. Résultat: l'affichage du flux vidéo récupère mais un très faible framerate; Environ 1 image par seconde. Si je redémarre ensuite gstreamer, le flux vidéo est à nouveau bien présenté.
Comment puis-je surmonter cette réduction du framerate? Redémarrer automatiquement gstreamer si cette situation est détectée serait une option pour moi.
Cordialement, doojoo
Pourriez-vous essayer de définir la propriété synchronisation du puits false? 'autovideosink sync = false' –
Lors de la définition de sync à false, l'affichage du flux récupère bien! – Doojoo