Une autre façon de simuler une caméra en direct du monde réel est d'utiliser udp://
. Par exemple :
# (make sure you use the correct screen number, in my case it was :1, not :0)
ffmpeg -re -f x11grab -r 15 -s 1280x720 -i :0.0+0,0 -map 0:v -c:v libx264 -f mpegts udp://localhost:50000
La vidéo est reçue par :
ffmpeg -i udp://localhost:50000 -f mpegts video.ts
En outre, si votre objectif est simplement de simuler une caméra en direct (comme pour tester un pipeline de vision par ordinateur), vous pouvez utiliser la fréquence d'images native. -re
l'option de bouclage -stream_loop -1
et un fichier statique :
VIDE0=./static-video.mp4
ffmpeg -re -stream_loop -1 -i $VIDEO -map 0:v -f mpegts udp://localhost:50000
Informations officielles sur ffmpeg sur le site -re
option :
-re (entrée) Lit l'entrée à la fréquence d'images native. Principalement utilisé pour simuler un grab ou un flux d'entrée en direct (par exemple, lors de la lecture d'un fichier). Ne doit pas être utilisé avec des périphériques d'acquisition réels ou des flux d'entrée en direct (où il est possible de lire les données). flux d'entrée en direct (où cela peut causer des pertes de paquets). Par défaut, ffmpeg essaie de lire les entrées aussi rapidement que possible. Cette option ralentira la lecture de l'entrée (s) à la fréquence d'image native de l'entrée (s). de l'entrée ou des entrées. Elle est utile pour les sorties en temps réel (par ex. streaming en direct).