2011-02-04 1 views
0
ffmpeg.exe -i "imageLarge.jpg" -y -f mjpeg -s 72x92 -vframes 1 -an thumbnail7292.jpg

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

+0

ошибки, что он генерирует является программным модулем масштабирования: время компиляции ширины Макс 2048 изменения ВОФА/VOFW и перекомпилировать Не удаюсь получить передискретизации Context –

ответ

1

Непонятно, в чем проблема с 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 вы используете? Этот problem seems to have been addressed более года назад.

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

+0

программного модуля масштабирования: время компиляции ширины Макс 2048 изменения VOF/VOFW и перекомпилировать Невозможно получить передискретизации контекста –

+0

См мой обновленный ответ. – misha