Funciona atualizando para a versão mais recente. Tentei com 3.0.2
Eu procurei por todos os tipos de maneiras de fazer o filtro zoompan funcionar em um vídeo, não tenho problemas em uma imagem:
ffmpeg -loop 1 -i thumbnail_56138ba980d73.png -vf "zoompan=z='min(zoom+0.0015,10)':d=125" -c:v mpeg2video -t 5 -s "796x450" test2.mpeg
Isso funciona muito bem, eu tenho um bom zoom na imagem. Mas quando eu tento fazer o mesmo onde a entrada é um vídeo:
ffmpeg -i tmpFile_149712.mp4 -vf "zoompan=z='min(zoom+0.0015,10)':d=150" -c:v mpeg2video -t 5 -s "796x450" test2.mpeg
Em seguida, ele me dá a saída seguinte, e nenhum vídeo por causa do abortado pelo núcleo no final. Então, isso me leva a pensar se esse filtro funciona mesmo com um vídeo?
Especialmente quando eu leio a documentação para o parâmetro zoompan -D "Isso define quantos efeitos de número de quadros durarão por imagem de entrada única ."
$ ffmpeg -i tmpFile_149712.mp4 -vf "zoompan=z='min(zoom+0.0015,10)':d=150" -c:v mpeg2video -t 5 -s "796x450" test2.mpeg
ffmpeg version N-73887-g99ad832 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/home/vagrant/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/vagrant/ffmpeg_build /include --extra-ldflags=-L/home/vagrant/ffmpeg_build/lib --bindir=/home/vagrant/bin --enable-gpl --enable-libass --enable -libfreetype --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264
libavutil 54. 28.100 / 54. 28.100
libavcodec 56. 50.101 / 56. 50.101
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 25.100 / 5. 25.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'tmpFile_149712.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.40.101
Duration: 00:00:12.10, start: 0.000000, bitrate: 359 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 356 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Metadata:
handler_name : VideoHandler
[mpeg @ 0x2c17020] VBV buffer size not set, using default size of 130KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'test2.mpeg':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.40.101
Stream #0:0(und): Video: mpeg2video, yuv420p, 796x450, q=2-31, 200 kb/s, 30 fps, 90k tbn, 30 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc56.50.101 mpeg2video
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mpeg2video (native))
Press [q] to stop, [?] for help
[output stream 0:0 @ 0x2c12000] 100 buffers queued in output stream 0:0, something may be wrong.
Past duration 0.998039 too large
*** Error in 'ffmpeg': corrupted double-linked list: 0x00000000030af400 ***bits/s dup=0 drop=17100
Aborted (core dumped)
Isso parece um bug na sua versão do FFMpeg. A versão mais recente parece funcionar, mas há outro problema. Quando você passa um vídeo como uma entrada para o zoompan, primeiro divide-o em quadros separados e, em seguida, aplica o efeito de zoom / panorâmica a cada quadro separadamente. Então você obtém 125 (d = 125 por padrão) quadros de saída para cada um dos seus quadros de entrada de vídeo. Eu não consegui encontrar uma maneira de resolver isso