私の目標; ffmpegを使用して、ビデオファイルから一連の画像をエクスポートします。私の問題は1秒あたりのフレーム数とビットレートに関連していると思います。
次のコマンドを試しました。
ffmpeg -i myVideo.mp4 -r 1 images_%04d.jpg
しかし、どういうわけか45秒のビデオで、47枚の画像になってしまいました。これを正確に把握することは非常に重要です。適切なFPSまたはビットレートが何であるかを事前に知ることはできません。コマンドの実行時にこれらの値が必要な場合は、ffmpegから何らかの方法でそれらを取得できる必要があります。
また、ビデオのすべての画像をエクスポートし、画像ffmpeg -i myVideo images_%04d.jpg
の数をビデオの合計秒数で割ることも検討しました。これにより、24.97のようになり、25に丸めて、25フレームごとに24を削除します。私の恐れは、ファイルがVBRであり、高ビットレート部分がビデオの先頭にある場合、終了するフレームが1秒あたり1つと正確に一致しないことです。たとえば、30番目の画像が実際に2番目の31に近いビデオに表示される場合があります。
ffmpegの実行-> ffmpeg -i "/videos/11.mp4" -s "352x264" "/images/image%06d.jpg" FFmpegバージョン0.6-4:0.6-2ubuntu6.1、著作権(c)2000-2010 FFmpeg開発者 2011年3月31日18:43:47にgcc 4.4.5で構築 設定:--extra-version = 4:0.6-2ubuntu6.1 --prefix = / usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --enable-shared --disable-static libavutil 50.15。1 / 50.15。1 libavcodec 52.72。2 / 52.72。2 libavformat 52.64。2 / 52.64。2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.19。0 / 1.19。0 libswscale 0.11。0 / 0.11。0 libpostproc 51. 2. 0 / 51. 2. 0 ストリーム1コーデックフレームレートがコンテナフレームレートと異なるようです:49938.00(49938/1)-> 24.97(24969/1000) 「/videos/11.mp4」から#0、mov、mp4、m4a、3gp、3g2、mj2を入力します。 メタデータ: major_brand:mp42 minor_version:0 compatible_brands:isomavc1mp42 期間:00:00:32.60、開始:0.000000、ビットレート:433 kb / s ストリーム#0.0(und):オーディオ:aac、44100 Hz、ステレオ、s16、127 kb / s ストリーム#0.1(und):ビデオ:h264、yuv420p、352x264 [PAR 1:1 DAR 4:3]、303 kb / s、24.97 fps、24.97 tbr、24969 tbn、49938 tbc #0、image2を「/images/image%06d.jpg」に出力します。 メタデータ: エンコーダー:Lavf52.64.2 ストリーム#0.0(und):ビデオ:mjpeg、yuvj420p、352x264 [PAR 1:1 DAR 4:3]、q = 2-31、200 kb / s、90k tbn、24.97 tbc ストリームマッピング: ストリーム#0.1->#0.0 [q]を押してエンコードを停止しますframe = 176 fps = 0 q = 24.8 size = -0kB time = 7.05 bitrate = -0.0kbits / s ^ Mframe = 312 fps = 236 q = 24.8 size = -0kB time = 12.50 bitrate = -0.0kbits / s ^ Mframe = 316 fps = 112 q = 24.8 size = -0kB time = 12.66 bitrate = -0.0kbits / s ^ Mframe = 322 fps = 55 q = 24.8 size = -0kB time = 12.90 bitrate = -0.0kbits / s ^ Mframe = 327 fps = 39 q = 24.8 size = -0kB time = 13.10 bitrate = -0.0kbits / s ^ Mframe = 331 fps = 33 q = 24.8 size = -0kB time = 13.26 bitrate = -0.0kbits / s ^ Mframe = 336 fps = 31 q = 24.8 size = -0kB time = 13.46 ビットレート= -0.0kbits / s ^ Mframe = 339 fps = 27 q = 24.8 size = -0kB time = 13.58 bitrate = -0.0kbits / s ^ Mframe = 344 fps = 22 q = 24.8 size = -0kB 時間= 13.78ビットレート= -0.0kbits / s
誰もffmpegでビデオから画像をエクスポートする時間精度の結果を得る方法のアイデアを持っていますか?? ありがとう!