Phonon

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

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

Входит в состав Qt начиная с версии 4.4. До 4.5 версии поставлялся в виде исходников и стандартно был доступен только для коммерческой версии Qt[источник не указан 4076 дней]. В данный момент распространяется как часть 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.