FFMPEG не может извлечь миниатюры изображений размером более 0,6 МБ - PullRequest
0 голосов
/ 04 февраля 2011
ffmpeg.exe -i "imageLarge.jpg" -y -f mjpeg -s 72x92 -vframes 1 -an thumbnail7292.jpg

Мы используем эту команду для создания миниатюр файлов изображений с помощью FFmpeg, но обнаружили, что она не может генерировать миниатюры файлов размером более 0,6 МБ, может кто-нибудь что-то подсказать по этому поводу.

1 Ответ

1 голос
/ 04 февраля 2011

Не совсем понятно, в чем именно проблема с ffmpeg, но в любом случае я бы порекомендовал использовать утилиту convert из imagemagick . Это намного проще:

convert imageLarge.jpg -resize 72x92 thumbnail7292.jpg

Если вы дадите описание фактической ошибки , тогда больше людей смогут вам помочь.

EDIT

Ошибка ОП:

swScaler: Compile time max width is 2048  
change VOF/VOFW and recompile
Cannot get resampling context

Совершенно ясно, в чем проблема. Ваши файлы JPEG слишком велики для вашей текущей сборки ffmpeg. Вам придется перекомпилировать ffmpeg или получить более новую версию, если вы хотите работать с большими изображениями.

Это от src/libswscale/swscale_internal.h (версия: FFmpeg SVN-r26402).

#if ARCH_X86
#define VOFW 5120
#else
#define VOFW 2048 // faster on PPC and not tested on others
#endif

Это файл, который нужно отредактировать, если вы хотите изменить ограничения.

Какую версию ffmpeg вы используете? Эта проблема , похоже, была решена более года назад.

Если вы не хотите восстанавливать ffmpeg, вы можете просто использовать convert, как я изначально советовал.

...