Phonon – API multimedialne wspierana przez bibliotekę Qt umożliwiające obsługę strumieni multimedialnych pod KDE 4.

Phonon został stworzony w celu uniezależnienia KDE 4 od innych frameworków multimedialnych, takich jak GStreamer lub Xine i zapewnia stabilne API na czas istnienia KDE 4. Stało się to z różnych powodów: aby utworzyć proste API multimedialne w stylu KDE/Qt, w celu lepszego wsparcia natywnych frameworków multimedialnych w systemach Microsoft Windows i MacOS X oraz do rozwiązywania problemów z nierozwijanymi frameworkami oraz niestabilnymi API lub ABI. Następnie zostało przeniesione do Qt i dlatego może być używane niezależnie od KDE.

thumb|right|350px|Schemat działania Phonon

Historia Powodem utworzenia Phonon były problemy techniczne i personalne wśród twórców aRts. Od początku aRts było obiecującym rozwiązaniem problemów z dźwiękiem na Linuksie, ale z biegiem czasu nie nadążało za rozwojem komputerów oraz urządzeń multimedialnych. Zdecydowano o zastąpieniu aRTs przez nowe framework multimedialny z wieloma backendami na Akademy 2004 w Ludwigsburgu. Pierwsza wersja nazywała się KDEMM (KDE MultiMedia) i była wspierana tylko przez JuK i Amarok. Matthias Kretz jako jedyny kontynuował rozwój w ramach pracy na uniwersytecie. Projekt zmienił ostatecznie nazwę na Phonon w lutym 2006 roku. Pierwsze oficjalne wydanie było częścią KDE 4.0 wydanego w styczniu 2008KDE 4.0 Released., w tym samym roku, w którym stał się częścią Qt 4.4. Pomimo wsparcia dla Phonon w wersjach Qt 4.x, został zastąpiony przez QtMultimedia oraz QtMobility.

Cechy Phonon Każdy interfejs Phonon odpowiada za każdy backend. Każdy backend pozwala Phonon kontrolować podstawowe funkcje, takie jak odtwarzanie, zatrzymywanie, przeszukiwanie. Wspiera również wysokopoziomowe funkcje, takie jak przejścia między ścieżkami. Phonon może przełączać frameworki w locie. Użytkownik może przełączać się między frameworkami nawet podczas słuchania muzyki, co skutkuje jedynie niewielką przerwą. Ta zmiana dotyczy całego systemu i wszystkich programów używających Phonon, więc zmiany frameworków są łatwiejsze. Wraz z Solid, Phonon pozwala użytkownikom na większą kontrolę nad słuchawkami, głośnikami i mikrofonami, na przykład możliwe jest prowadzenie rozmowy za pośrednictwem VoIP wyłącznie z użyciem słuchawek, a innych dźwięków przez głośniki.

Backendy VLC i GStreamer jako główne backendy obsługiwane na systemach uniksopodobnych avKode – backend FFmpeg powstały w ramach Google Summer of Code 2006, obecnie (styczeń 2010) nierozwijany QuickTime jako backend na MacOS X, który już nie jest rozwijany DirectShow: był początkowo rozwijany dla wersji 9 dla Microsoft Windows. Z powodu przejścia na QtMultimedia nie jest już rozwijany Phonon-aRTs: nierozwijany już framework, którego celem było zapewnienie obsługi dla aRTS. Phonon-Fake: backend bez wyjścia audio, początkowo mający na celu pomoc w rozwoju Phonon Phonon-xine: do 2010 roku jeden ze standardowych backendów, ale od wersji 4.4.4 jest oznaczony jako niewspierany.

Przypisy

Kategoria:KDE Kategoria:Multimedia