Представлен первый релиз медиасервера Gerbera, продолжившего развитие проекта MediaTomb после прекращения его разработки. Gerbera поддерживает протоколы UPnP, в том числе спецификацию UPnP MediaServer 1.0, и позволяет организовать трансляцию мультимедийного контента в локальной сети с возможностью просмотра видео и прослушивания звука на любом UPnP-совместимом устройстве, включая телевизоры, игровые приставки, смартфоны и планшеты. Код проекта написан на языке С++ и распространяется под лицензией GPLv2.

Поддерживается перекодирование контента на лету для вывода в форматах, поддерживаемых заданным устройством. Управление вещанием производится через web-интерфейс. Из мультимедийных файлов автоматически извлекаются метаданные и строится коллекция, доступная для навигации со всех устройств, оснащённых web-браузером.

С момента ответвления от MediaTomb в Gerbera внесено более 340 изменений, среди которых переход на систему сборки cmake, уход от многих встроенных привязок в пользу внешних библиотек (теперь используются штатные libupnp, libuuid, libflac, libmp4v2, id3lib), замена JavaScript-движка Spidermonkey на Duktape, возможность отображения обложек альбомов, поддержка IPv6.

Основные возможности Gerbera:

  • Навигация по мультимедийной коллекции и воспроизведение через UPnP;
  • Извлечение метаданных из файлов mp3, ogg, flac, jpeg и т.п.;
  • Построение миниатюр на основе данных из Exif;
  • Возможность создания определяемого пользователем серверного интерфейса, в зависимости от извлечённых метаданных (настраиваемые через JavaScript виртуальные контейнеры);
  • Автоматическое сканирование изменения содержимого каталогов (по расписанию или через inotify);
  • Web-интерфейс с древовидным представлением содержимого БД и файловой системы, позволяющий добавлять, удалять, редактировать и просматривать контент;
  • Гибкая система перекодировщиков на основе плагинов и скриптов-обработчиков;
  • Возможность проброса видео с YouTube на UPnP-устройство;
  • Поддержка информации с сервиса LastFM;
  • Генерация миниатюр на лету при помощи libffmpegthumbnailer;
  • Поддержка внешних URL (можно создавать ссылки на определённый интернет-контент и просматривать его через UPnP);
  • Функция Active Items, позволяющая запускать скрипты на сервере при запросе определённых элементов по HTTP;
  • Гибкая система настройки, позволяющая изменять поведение сервера;
  • Поддержка платформ Linux, FreeBSD, NetBSD, macOS, eCS и архитектур x86, Alpha, ARM, MIPS, Sparc, PowerPC.


Источник: http://www.opennet.ru/opennews/art.shtml?num=46621