Я пытаюсь сделать водяной знак в видео. В тот момент, когда файл изображения (.png) для водяного знака содержит прозрачность, изображение больше не отображается в видео. Если я конвертирую это изображение в .jpg и обратно в .png, оно работает хорошо. Если я создаю новый png без прозрачности, он тоже работает. Но когда я добавляю, например. непрозрачность слоя для этого изображения, оно больше не отображается.
Я использую avconv 0.8.6-4:0.8.6-0ubuntu0.12.04.1 со следующей командой
avconv -y -i video.mp4 -f 'movie=watermark.png [watermark]; [in][watermark] overlay=10:10 [out]' -c:v libx264 -t 255 -strict experimental out.mp4
Если я использую .gif для водяного знака, я получаю изображение, но все оно непрозрачно.
Любая подсказка?
Ответ 1 · рейтинг 1 · PaulS
Ответ на мой вопрос прост, хотя мне понадобился день, чтобы его найти.
"Обычный" ffmpeg, поставляемый с репозиторием моего дистрибутива Ubuntu, жаловался на параметр "c: v libx264". avconv знает этот параметр, но глючит; он просто не отображает прозрачные изображения.
Решение было таким же простым, как установка самой последней версии ffmpeg (я выбрал статическую версию). Теперь это работает как шарм. :)
Ответ 2 · PJunior
Вот как мне удалось добавить водяной знак в файл mp4 (вверху слева) с помощью avconv версии 0.8.6-6:0.8.6-1ubuntu2.
avconv -y -i source.mp4 -vf "movie=watermark.png [watermark]; [in][watermark] overlay=10:10 [out]" -c:v libx264 target.mp4
Надеюсь, это поможет кому-то.
Ответ 3 · fxsam
Если вы используете ffmpeg-1.2, а не avconv, то команда довольно проста:
ffmpeg -i source.mp4 -i logo.png -filter_complex 'overlay' -strict -2 outputmovie.mp4
У меня это работало нормально, с прозрачностью, запеченной в файле logo.png. Просто убедитесь, что там есть альфа. Это также предполагает, что файл logo.png имеет тот же размер, что и справочный материал.
Ответ 4 · user3361920
Я использовал прозрачное изображение png, и это сработало для меня. Теперь я могу видеть сцену за водяным знаком в видео, поскольку изображение водяного знака png прозрачно. Так что просто отредактируйте изображение с помощью фотошопа и добавьте 50% непрозрачности (или любое другое значение, которое вы хотите) на изображении.