Voici ce que j'essaye:
gst-launch -v udpsrc port=1234 ! fakesink dump=1
Je teste avec:
gst-launch -v audiotestsrc ! udpsink Host=127.0.0.1 port=1234
Et tout fonctionne bien, je peux voir les paquets arrivant du audiotestsrc
Permet maintenant de tester avec la source webcam:
gst-launch -v v4l2src device=/dev/video0 ! queue ! videoscale method=1 ! "video/x-raw-yuv,width=320,height=240" ! queue ! videorate ! "video/x-raw-yuv,framerate=(fraction)15/1" ! queue ! udpsink Host=127.0.0.1 port=1234
Et rien ne se passe, aucun paquet n'apparaît dans le vidage.
Voici un logdump de ce que montre verbeux sur le serveur.
Quelqu'un at-il une idée à ce sujet?
Essayez-les (vous devrez peut-être installer des plugins gstreamer-laid pour celui-ci)
streaming UDP depuis la webcam (streaming sur le réseau)
gst-launch v4l2src device=/dev/video0 ! 'video/x-raw-yuv,width=640,height=480' ! x264enc pass=qual quantizer=20 tune=zerolatency ! rtph264pay ! udpsink Host=127.0.0.1 port=1234
Streaming UDP reçu de la webcam (réception via le réseau)
gst-launch udpsrc port=1234 ! "application/x-rtp, payload=127" ! rtph264depay ! ffdec_h264 ! xvimagesink sync=false
Mise à jour
Pour déterminer la charge utile à la fin du streaming, utilisez simplement l'option verbose avec gst-launch -v ...
Peut-être que les paquets sont trop gros pour udp? Ils sont limités à 64K. Essayez de redimensionner les cadres à une taille très petite pour vérifier si c'est la raison. Si tel est le cas, vous pourriez être intéressé par certains compresseurs et chargeurs/dépayloaders (gst-inspect | grep pay
).