Второй столп, на котором держится KDE4, не менее грандиозный и величественный.
Phonon — это мультимедийный API. Как и его двоюродный брат Solid, Phonon абстрагируется от конкретного звукового движка, будь то Xine, PulseAudio, GStreamer, DirectShow или QuickTime. Phonon, кстати, не входит в состав KDE, хотя KDE4 его использует очень активно.
Знаменитый фреймворк для создания кроссплатформенных приложений Qt (читай как [cut], а не [kuti]!) имеет встроенную поддержку Phonon начиная с версии 4.4.
Зачем изобретать велосипед?
Испокон веков КДЕ2.0 использовал искусство в качестве медиа-фреймворка и предоставления мультимедийного API. Однако время идет и все меняется, и, к счастью или к сожалению, aRts не пережили эту гонку и многое другое.То, что его место займут другие, было лишь вопросом времени, а времени оставалось все меньше и меньше – ведь разрабатывался столь крупный проект, и приближался момент его первого релиза.
И какой из всех существующих вариантов выбрать? Чтобы он был современный, поддерживал нужные функции и чтобы не случилось того же, что произошло с aRts? Ответ прост — не подстраиваться под один движок, а быть готовым работать если не со всеми, то со многими.
Что даст Phonon обычным пользователям?
Фонон снова избавит вас от головной боли, как и через что воспроизвести звук.Для наглядности представим себе такой сценарий: Это необходимо, чтобы системные уведомления звучали через ваши двухсотваттные динамики (привет соседи :D), чтобы Skype гудел в вашей беспроводной Bluetooth-гарнитуре, а ваши родители слушали Queen в соседней комнате на отдельной стереосистеме.
система.
Если у вас есть необходимое количество устройств вывода звука, Phonon в связке с уже рассмотренным Solid позволит вам настроить всё буквально в несколько кликов мышки.
Для наглядности приведу скриншот, конечно, не имеющий отношения к примеру, который я описал, но все же помогающий вам увидеть типичный интерфейс настройки Phonon в KDE4.
Причем переключение происходит «на лету», и в идеале нет необходимости не только в перезагрузке, но и в перезапуске приложений! Конечно, пока все может быть не так гладко, то есть изменение теперь вступает в силу после перезапуска приложений воспроизведения звука (в случае системных уведомлений — перезапуска KDE4), но это только пока.
А чтобы не было сомнений, что это действительно универсальное и кроссплатформенное решение, вот скриншот моей Windows XP:
Как видите, в данном случае Phonon использует движок DirectShow9. В Mac OS X на своем месте будет QuickTime. Это еще один плюс — Phonon использует уже установленные в системе движки и адаптируется к ним.
Что Phonon даст разработчикам?
Много вещей! Как воспроизвести аудиофайл, поддерживаемый вашей аудиоподсистемой? Всего 4 строчки кода и все готово! media = new MediaObject(this);
connect(media, SIGNAL(finished()), SLOT(slotFinished()));
media->setCurrentSource("/home/username/music/filename.ogg");
media->play();
В общем, Phonon не только предоставляет базовые функции воспроизведения, но и предоставляет интерфейс для создания специальных эффектов.
Для работы с Phonon вам как разработчику достаточно знать API интерфейса.
Основными объектами Phonon являются Медиаобъект И Аудио выход .
Данные, полученные через MediaObject, необходимо передать на аудиовыход. Для этого используйте функцию Фонон::createPath , который возвращает объект Path, в который затем можно ввести специальные эффекты, влияющие на аудиосигнал.
Если кроме аудио используется еще и видео, то в схему добавляется дополнительная ветвь.
В результате мы получаем что-то вроде этого:
Как видите, работать со звуком становится так же легко и непринужденно, как писать любой другой код на Qt и использовать kdelibs.
Я коснулся лишь края того, что становится доступным разработчику; пока вы читаете, вас ждет более серьезное погружение Документация по API на сайте проекта KDE, а также соответствующий Разделы справки по Qt , также доступен через программу Qt Assistant.
Пользователям остаётся только радость пользоваться всеми этими благами человечества, легко меняя настройки вывода звука при малейшей необходимости.
Пожалуй, на этом я закончу этот пост. Если кому-то покажется недостаточно, или есть вопросы, пишите комментарии, пишите в личку, пишите на почту - my_nick Mail.ru. Буду рад услышать ваши отзывы и предложения.
Информация взята с официального сайта Сайт проекта Фонон , от официальная помощь по Qt .
Как всегда помог собственный опыт общения с Phonon - на KDE-приложения вы можете найти приложение TrayPlayer. Это не мое, но разобраться довольно легко.
Я прикрепил к нему повтор, возможность прокрутки назад, а также чисто из любопытства перенес этот проект в CMake, разделил классы на разные файлы и начал реализовывать базовый плейлист. Размещать на WeLinux.ru .
Теги: #kde4 #phonon #Графические оболочки
-
Платное Участие В Опросе – Начало Процесса
19 Oct, 24 -
Делайте Google, А Не Google!
19 Oct, 24 -
Habrareader — Для Чтения Rss-Лент
19 Oct, 24 -
Wimm One: Наручный Мини-Компьютер Android
19 Oct, 24 -
Внимание-Реклама От Samsung
19 Oct, 24 -
Удобные Утилиты Для Android
19 Oct, 24