Phonon

Phonon — мультимедийный фреймворк от KDE, который предоставляет API для разработки мультимедиа-приложений. Phonon использует набор расширяемых модулей, выполняющих реальную работу.

Phonon
Тип мультимедийный фреймворк
Написана на C++[1]
Операционная система UNIX-подобные операционные системы и Microsoft Windows
Последняя версия
Лицензия LGPL-2.1[d]
Сайт phonon.kde.org (англ.)

Входит в состав Qt начиная с версии 4.4. До 4.5 версии поставлялся в виде исходников и стандартно был доступен только для коммерческой версии Qt. В данный момент распространяется как часть Qt под лицензией GNU LGPL version 2.1.

Особенности

Phonon API написан на языке программирования C++ с использованием парадигм объектно-ориентированного программирования. Механизм использования интерфейса Phonon основан на графовых связях между источниками (MediaObject) и выводящими устройствами (AudioOutput, VideoOutput). Связи между объектами данных и устройств вывода реализуются с помощью путей (Path). Библиотека также поддерживает звуковые эффекты и работу с RAW аудио в реальном времени (AudioDataOutput).

История

Изначально мультимедийный API назывался KDEMM (KDE MultiMedia). Официальный релиз API как части KDE 4.0 состоялся в январе 2008 года, в тот же самый год Phonon был адаптирован для Qt 4.4 и стал её частью. Главой разработки является Маттиас Крец (англ. Matthias Kretz). Сам Phonon является относительно новым и набирает популярность.

Пример использования

media = new MediaObject(this);
connect(media, SIGNAL(finished()), SLOT(slotFinished()));
media->setCurrentSource("/home/username/music/filename.ogg");
media->play();

Поддерживаемые модули

Phonon Backend — реализация Phonon API на основе определенной библиотеки, которая выполняет непосредственно функции воспроизведения видео и аудио данных. Таким модулем может быть реализация для другого API, который уже использует другие API и медиа-библиотеки.

Входящие в Qt:

Входящие в KDE:

Ссылки

  1. The phonon Open Source Project on Open Hub: Languages Page — 2006.
  2. Release 4.11.1 — 2019.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.