2012-06-08 2 views
2

Это то, что я сделал до сих пор:черного оверлей появляется при слиянии прозрачного видео на другое видео

Команды для создания прозрачного PNG изображения:

convert -size 640x480 -background transparent -fill blue \ 
-gravity South label:ROCK image1-0.png 

Команды для создания прозрачной видео:

ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \ 
-vcodec png -pix_fmt bgra mov-1.mov 

(согласно this post) - Я ожидаю, что это смотри o быть прозрачным видео.

Команда для наложения видео с другой:

ffmpeg -i final-video.mov -sameq -ar 44100 \ 
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \ 
-strict experimental final-video.mov 

Над командами работает отлично, и я не сталкивались с проблемой, но я не понимаю, что я ожидаю, который является своего рода эффект водяных знаков, я хочу mov-1.mov быть прозрачным с final-video.mov.

Вопросы:

  1. Есть ли способ проверить, если генерируемое видео является прозрачным? кроме слияния?
  2. Не уверен, почему вышеуказанный mov-1.mov не прозрачен, когда он слит с final-video.mov, любая информация для решения этой проблемы была бы замечательной.

Пожалуйста, помогите.

ответ

1

ImageMagick не всегда создает прозрачные png в способе, который понимает FFmpeg. Я был сведен к использованию GIMP для создания индексированных прозрачных изображений в последний раз, когда я столкнулся с этой проблемой. Nevermind, оглядываясь назад на this answer Я вижу, что я был, очевидно, способный сделать ImageMagick прозрачным в том, что понравилось FFmpeg, установив png:color-type. Ваша команда преобразования станет:

convert -size 640x480 -background transparent -fill blue \ 
-gravity South label:ROCK -define png:color-type=6 image1-0.png 

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

+0

спасибо за ответ, BTW, я проверил изображение с GIMP и, как вы сказали, изображение индексировано прозрачно. У вас есть дополнительная информация, и было бы хорошо, если бы вы делились своими командами, и я могу ее пропустить. –

+0

Когда я пытаюсь передать изображение в атрибут 'movie', я могу видеть только изображение, но видео в конечном выходе, я вижу черное оверлей и скрывает свое видео в спину, но я уверен, что входное изображение является прозрачным изображением. –

+0

Похоже, что проблема с созданием образа - может быть, я чего-то не хватает. Причина? когда я использовал Photoshop и создал прозрачный образ, который не имел никаких проблем, и я получил окончательный результат, как я ожидал, означает прозрачность. –

Смежные вопросы