Eu preciso ler um vídeo com o ffmpeg e extrair seus quadros para imagens JPG. Estou usando este comando:
./ffmpeg -y -r 25 -probesize 100M -analyzeduration 100M -i http://webserver/video.mp4 -q:v 5 /destination/image_%03d.jpg
Funciona bem se o vídeo estiver armazenado no dispositivo ou em um servidor Amazon AWS, mas isso não acontece se estiver armazenado em um servidor do Windows Azure. Se o vídeo é codificado em webm, ele funciona em todos os lugares, mas eu preciso que ele esteja no mp4 por alguns motivos.
Aqui está a saída do ffmpeg:
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf70d7000] stream 0, offset 0x30: partial file
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf70d7000] Could not find codec parameters for stream 0 (Video: h264 (avc1 / 0x31637661), none, 960x540, 1236 kb/s): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
http://server/video.mp4: could not find codec parameters
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://server/video.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.40.101
Duration: 00:00:01.44, bitrate: 1241 kb/s
Stream #0:0(und): Video: h264 (avc1 / 0x31637661), none, 960x540, 1236 kb/s, 25 fps, 25 tbr, 12800 tbn, 25600 tbc (default)
Metadata:
handler_name : VideoHandler
[buffer @ 0xf703a000] Unable to parse option value "-1" as pixel format
Last message repeated 1 times
[buffer @ 0xf703a000] Error setting option pix_fmt to value -1.
[graph 0 input from stream 0:0 @ 0xf70dd190] Error applying options to the filter.
Error opening filters!
Alguma idéia do que está errado? O servidor do Azure pode quebrar alguma coisa? O arquivo não está corrompido, se eu baixá-lo e reproduzi-lo localmente, funciona.