4

Я хочу добавить водяные знаки на мои видео FLV. Раньше я делал это, используя опцию vhook FFmpeg, но из-за некоторых проблем мне пришлось обновить его до последней версии SVN. Эта версия FFmpeg больше не поддерживает vhook .

Я пробовал mencoder с bmovl но с mencoder, похоже, довольно сложно работать.

Есть ли другой вариант видео с водяными знаками?

3 ответа3

3

Правильный способ сделать это с недавним ffmpeg - использовать оверлейный фильтр. Следующая команда поместит watermark.png поверх input.flv , причем верхний левый угол водяного знака будет пятнадцать пикселей вправо и десять пикселей вниз от верхнего левого угла основного видео:

ffmpeg -i input.flv -i watermark.png -filter_complex \
'[0:v][1:v]overlay=15:10[outv]' -map [outv] -map 0:a \
-c:a copy -c:v libx264 -crf 22 -preset veryfast output.mp4

Очевидно, измените 15 или 10 на любые значения, которые вы хотите.

Есть также несколько констант, которые могут оказаться полезными, если вы размещаете водяные знаки на нескольких видео с разными разрешениями:

  • W и H - ширина и высота основного видео (input.flv)
  • w и h - ширина и высота оверлейного видео (watermark.png)

Это может пригодиться много раз. Например, чтобы разместить водяной знак над центром видео, вы можете использовать:

'[0:v][1:v]overlay=(W-w)/2:(H-h)/2[outv]'

Аналогично, чтобы расположить водяной знак по центру в верхней левой шестой части видео:

'[0:v][1:v]overlay=(W-w)/6:(H-h)/6[outv]'

Для нижней левой шестой части видео:

'[0:v][1:v]overlay=(W-w)/6:(H-h)/(6/5)[outv]'

Вы можете делать все, что вам нужно.

См. Документацию фильтра наложения для получения дополнительной информации.

1

VLC может создавать водяные знаки для видео, используя эффекты и фильтры > Видеоэффекты > Vout/Overlay > Добавить текст, и он может читать файлы FLV. Лично у меня был разный успех с кодированием с использованием VLC (или любой другой программы в этом отношении).

0

я думаю, что vlc, mplayer и ffmpeg обычно делают хорошую работу. Какие у вас проблемы с mplayer/mencoder?

Вы можете добавить водяной знак на каждый кадр, используя imagemagick или сценарий gimp, но это будет очень медленно.

посмотрите: http://www.imagemagick.org/Usage/annotating/#wmark_image

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .