Yo canalizo los datos de un proceso a otro, pero esta secuencia necesita ser filtrada.
El primer proceso es ffmpeg
y el segundo es ffplay
. ffmpeg
proporciona marco de video en bruto para fplay
para renderizar, sin embargo agrega 32 bytes de encabezado a cada cuadro . Para el marco de 720p, esto significa que cada 1280x720x4 bytes se anexa con 32 bytes.
Esto afecta ffplay
Reproducción y necesito tener un poco de filtrado de este flujo de bytes que caerá este encabezado para cada fotograma. Lo más probable, herramientas como od
o xxd
Debería utilizarse, pero tengo dificultades para averiguar cómo exactamente.
ffmpeg -f avfoundation -pixel_format 0rgb -framerate 25 -video_size 1280x720 -i "0" -map 0:v -c copy -f rawvideo -vframes 1 - | perl -e 'print substr $buff, 1 while sysread *STDIN, $buff, 3686432' > /tmp/frame.0rgb
. Contar byteswc -c /tmp.frame.0rgb