Oct 05, 2011 16:52
Рассказываю что я сегодня делал весь день. У нас на предприятии существует свой телевизионный канал. Как он устроен я расскажу позже, но суть в том, что устройство ест любые форматы видео. По телеку крутится один и тот же информационный фильм чужого производства. Задачу поставили такую: должен быть логотип, чтобы определять где наш канал.
Устройство не поддерживает наложение логотипов, покупать отдельную железку, которая делала бы это было бы очень долго и накладно, поэтому я решил вклеить этот логотип прямо в видео.
Оказалось, что на Windows существует куча программ, которые могут только обещать это сделать, а по сути получается либо что-то за деньги, либо бесплатно, но с глюками.
Тогда я решил использовать мощный штук - ffmpeg под линуксом.
Почитав форумы понял, что нифига не просто это будет, так как недавно там что-то обновили и теперь вся доступная в интернете информация потеряла смысл. Напрямую попробовать не удалось - нет, гвоорит ffmpeg у вас фильтров, хотя они вроде бы установлены.
Итак, для того, чтобы это заработало нужно установить последнюю версию ffmpeg из git, собрать её, сделать картинку и запустить команду. Вуаля!
Итак, ставим git: открываем окно терминала и копируем туда:
sudo apt-get install git
вводим пароль пользователя и оно ставится.
потом набираем
git --clone git://git.videolan.org/ffmpeg.git
эта команда загрузит к вам последнюю версию ffmpeg.
сd ffmpeg
./configure --enable-nonfree
тут он может поругаться, удовлетворите его пожелания :)
make
sudo make install
после этого создайте файл logo.gif такого же разрешения, как и видео, с прозрачной основой и вашим логотипом.
Логотип и видео положите в одну папку и выполните команду:
ffmpeg -sameq -i Ваш_файл -vf "movie=logo.gif [logo]; [in][logo] overlay=main_w-overlay_w:main_h-overlay_h [out]" Видео_с_логотипом
По идее не должно пострадать качество видео. У меня объем файла вырос в 2 раза при этом.