Архив рубрики: Статьи

Кодирование видео с использованием встроенного видео Intel HD

В этом посте речь пойдет о вопросах кодирования видео «в промышленных масштабах» с применением видеокодека h264 на GPU, интегрированном в современные процессоры Intel и о том опыте, которая приобрела наша компания Inventos в процессе создания и оптимизации медиа сервера для обработки потокового видео.

Введение

Итак, была поставлена задача разработать медиа сервер, представляющий собой эдакий «комбайн» на все случаи жизни и умеющий следующее:

  • Кодирование/рессемплинг аудио/видео почти во все известные форматы, среди которых HLS, HDS, RTMP, mp4, etc;
  • Поддержка съема сигнала с SDI, DVB;
  • Балансировка и масштабирование серверов раздачи и кодирования;
  • Описание конфигурации кодировщика на встроенном языке;
  • Различные модули для нормализации звука, усиления, деинтерлейсинга видео и т.д.

Читать далее

Timelapse при помощи ffmpeg

Известный в узких кругах набор свободных библиотек с открытым исходным кодом, именуемый ffmpeg, — это не только средство для банальной конвертации домашних роликов в другие форматы, но и довольно мощное средство для создания эффектов для видео и аудио, а так же применение различных фильтров. В этой статье и будет показано, как с помощью этой утилиты сделать несколько интересных трюков.

Для экспериментов в Windows набор уже собранных утилит можно скачать здесь. Для всех остальных ffmpeg можно установить из пакетов для вашей ОС или собрать из исходников, скачав их с официального сайта www.ffmpeg.org.
Читать далее

Использование double dispatch на примере разработки системы потокового вещания

Одна из задач, которые приходится решать при разработке системы потокового вещания — как правильно организовать передачу информации внутри системы.

0. Проблема

Для потокового вещания общепринятой является архитектура, согласно которой система состоит из отдельных модулей-фильтров, которые обмениваются сообщениями, в простейшем случае — в одном направлении, от источника данных через разнообразные фильтры в приёмники данных. Например, источником данных может являться спутниковый ресивер, фильтрами — декодер, кодер, а приёмник — модуль воспроизведения мультимедиа, или плейер. Таким образом, структурно система стриминга представляет собой граф (обычно однонаправленный), вершинами которого являются объекты-обработчики, а по рёбрам следуют объекты-сообщения.

Как видно из описания, объекты-обработчики, или “фильтры”, наиболее естественно могут быть представлены в виде иерархии полиморфных классов, имеющих общего предка, единственной задачей которого будет приём и обработка пакетов медиаданных:

Читать далее

1 2 3 4 5 6 7 8 9 10