Estou capturando vídeo da minha webcam com o seguinte comando:
ffmpeg -r 30 -f v4l2 -video_size 160x120 -i /dev/video0 output.avi
A opção -r indica o framerate que eu quero. No entanto, não é que eu queira 30 FPS, é só que, caso contrário, não funciona corretamente.
Sem taxa de quadros, a captura é muito problemática (eu acho que ela tenta capturar muito, mas não pode seguir).
Com uma taxa de quadros definida como 15, o vídeo de saída é duas vezes maior que a duração de captura (tipo de câmera lenta).
Com uma taxa de quadros definida para 30, parece estar tudo bem.
Como posso ter certeza de que devo usar 30 fps? Se eu quiser capturar 15 fps, o que devo fazer para obter uma reprodução correta?
Informações sobre minha webcam:
co@macbook2008:~$ v4l2-ctl --list-formats-ext
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'YUYV'
Name : YUV 4:2:2 (YUYV)
Size: Discrete 160x120
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.036s (27.500 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.044s (22.500 fps)
Interval: Discrete 0.050s (20.000 fps)
Interval: Discrete 0.057s (17.500 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.080s (12.500 fps)
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.133s (7.500 fps)
Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 176x144
Interval: Discrete 0.033s (30.000 fps)
... and so on for other resolutions
Obrigado