2015-10-08 2 views
0

Je souhaite créer un canal qui envoie un fichier mpeg avec le gstreamer 1.0 via le réseau. J'ai essayé des tuyaux et des exemples, mais l'élément n'était pas connu non plus et il n'était pas capable de lier deux éléments.Compresser le flux mpeg et envoyer via le réseau gstreamer

Quelqu'un peut-il me montrer une pipe par exemple avec le protocole udp pour l'expéditeur et le destinataire? Ou certains me donnent des indices?

Je suis actuellement en utilisant Ubuntu 14.04

Répondre

0

Il est toujours préférable d'ajouter du code/script que vous avez essayé et les messages d'erreur que vous obtenez. À la suite de travaux pour moi, par exemple,

côté

Sender: Obtenir la vidéo brute de fichier vidéo, encodage en H.264, paquet dans RTP et de vidage sur le port UDP 5000,

gst-launch-1.0 uridecodebin uri=file://`pwd`/sample.mpg ! x264enc ! h264parse ! rtph264pay ! udpsink host=127.0.0.1 port=5000 

côté récepteur: Lire RTP paquets de UDP port 5000, obtenir des données vidéo (dépaysant dans la terminologie GStreamer), décoder en vidéo brute et jouer.

gst-launch-1.0 udpsrc port=5000 ! application/x-rtp, encoding-name=H264,payload=96 ! rtph264depay ! decodebin ! autovideosink 
+0

Merci beaucoup pour votre réponse Baris. J'ai déjà trouvé un moyen de construire un bon tuyau. Je tiens à recommander à ceux qui sont encore à la recherche, d'ajouter un rtpjitterbuffer entre le src et rtpdepay. Cela vous permettra d'éviter les retards dans la vidéo et la synchronisation = false à la fin de la pipe (parce que c'est une solution de contournement laide pour éviter les retards dans les vidéos). – Archimedes