Как обрезать изображение в FFmpeg?
Как мне обрезать изображение в ffmpeg?
Нужно что-бы по краям он отрезал лишнее и оставил только центральную часть 600x600
Я использовал следующий код, но это не то,что мне нужно.
Это сжимает его..
set a="Your_files\*.png"
set b="Result\%%~na.png"
set c=ffmpeg
set f=-s 600x600
for %%a in (%a%) do (%c% -y -i "%%a" %f% %b%)
p.s. Попрошу не предлагать мне "ImageMagick" и прочее..
Спасибо.
Ответы (1 шт):
Автор решения: Артем
→ Ссылка
Я использовал несколько фильтров, что-бы достичь данного эффекта.
- Изменяем размер изображения с соотношением сторон так, чтобы его высота составляла 600 пикселей.
- Вырезаем среднюю часть из изображения с соотношением сторон с лева и с права 1 к 1.
@REM Fitting any image to a height of 600 pixels
@REM Подгоняем любое изображение под высоту 600 пикселей
set a="Your_files\*.png"
set b="Result\temp-1.png"
set c=ffmpeg
set f=-vf scale=-1:600
for %%a in (%a%) do (%c% -y -i "%%a" %f% %b%)
@REM Cut out the desired piece from the image
@REM Вырезаем нужный кусок из изображения
set a="Result\temp-1.png"
set b="Result\temp-2.png"
set c=ffmpeg
set f=-filter:v "crop=600/1:600/1"
for %%a in (%a%) do (%c% -y -i "%%a" %f% %b%)