Добавить рамку к видео (FFMPEG)

Добавить рамку к видео (FFMPEG)

Я пытаюсь увеличить размер холста некоторых видео с контентом по центру и 50%-ным отступом с каждой стороны. Я использую в основном FFMPEG. У меня также есть Handbrake и VirtualDub под рукой. Я открыт для использования чего-то другого, если это сработает.

Я не хочу уменьшать масштаб исходного видео.

Вот код, который мне не удалось заставить работать:

ffmpeg -i input.webm -vf "pad=width=ow*2:height=oh*2:x=ow/2:y=oh/2:color=black" output.webm

решение1

Вам нужно использовать iw/ ihвместо ow/ oh:

ffmpeg -i <input> -vf "pad=iw*2:ih*2:iw/2:ih/2" <output>

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

Названия опций не нужны, как и определение черного цвета как цвета фона (он используется по умолчанию).

Если качество выходного файла ниже, чем входного, это происходит потому, что ffmpeg перекодирует видео с помощью кодировщика по умолчанию для выбранного выходного формата (например, libvpx-vp9для .webmили libx264для .mp4), с настройками качества по умолчанию. Вероятно, вам следует выбрать достаточно высокий битрейт (с двухпроходным кодированием) или достаточно хороший постоянный фактор качества (CRF). СмотритеВП9илиH.264руководства по кодированию для получения дополнительной информации о том, как изменить качество для этих конкретных кодеков.

Связанный контент