Как стать автором
Обновить

AVCONV — конвертация видеофайлов для тега video HTML5 и наложение ватермарка

Время на прочтение1 мин
Количество просмотров22K
К хорошему посту habrahabr.ru/post/171213

Некоторое время назад FFMPEG в Ubuntu объявили non grata. В качестве замены развивается дублирующий проект — AVCONV.

Принцип работы похож, но есть некоторые незначительные отличия.

Приведу пример решения популярной задачи — подготовки видео для публикации в теге video HTML5.

  1. Преобразуем видео из произвольного формата в набор FLV, MP4 и OGV
  2. Накладываем ватермарк



#!/bin/sh
avconv -i $1 -vf "movie=$3 [wm];[in][wm] overlay=5:5 [out]" -ar 44100 -ab 128k -f flv -vcodec flv -vb 1000k $2.flv
avconv -i $1 -vf "movie=$3 [wm];[in][wm] overlay=5:5 [out]" -ab 128k -vcodec libx264 -vb 1000k $2.mp4
avconv -i $1 -vf "movie=$3 [wm];[in][wm] overlay=5:5 [out]" -ab 128k -vcodec libtheora -acodec libvorbis -vb 1000k $2.ogv


  1. Сохраняем в файл, например encode.sh
  2. Даем права на исполнение
  3. Вызываем по принципу ./encode.sh {FROM} {TO} {WATERMARK}


Параметры
{FROM} — полный путь до исходного видео
{TO} — путь до результата, без расширения
{WATERMARK} — полный путь до ватермарка

В качестве ватермарка PNG с альфой достоверно работает.

Можно модифицировать любым образом, по вашему усмотрению.

Можно сделать функцией CMS, но при этом необходимо предусмотреть, чтобы интерпретатор не зависал, ожидая окончания декодирования. Для PHP решается направлением вывода скрипта в /dev/null. Подробности приводить не буду, так как на хабре уже много написано по этому поводу.
Теги:
Хабы:
Всего голосов 11: ↑8 и ↓3+5
Комментарии2

Публикации