Phonon

Z Wikipedii, wolnej encyklopedii
Phonon
Logo Phonon
Logo programu
Ilustracja
Autor Matthias Kretz
Aktualna wersja stabilna 4.12.0
(2 listopada 2023) [±]
System operacyjny POSIX, Microsoft Windows XP i nowsze; programy dla MacOS X v10.4-10.5
Rodzaj Multimedia
Licencja GNU Lesser General Public License 2.1
Strona internetowa

PhononAPI 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.

Schemat działania Phonon

Historia[edytuj | edytuj kod]

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 2008[1], 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[2][3][4].

Cechy Phonon[edytuj | edytuj kod]

  • 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[5].
  • 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[5].

Backendy[edytuj | edytuj kod]

  • 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[edytuj | edytuj kod]

  1. KDE 4.0 Released.
  2. Colin Guthrie: Qt Multimedia/Mobility vs. Phonon: FIGHT!!!. [dostęp 2010-11-20]. [zarchiwizowane z tego adresu (2010-05-27)].
  3. QtMultimedia Module. [dostęp 2010-11-20]. [zarchiwizowane z tego adresu (2010-08-28)].
  4. Qt Mobility Project APIs Overview. [dostęp 2010-11-20]. [zarchiwizowane z tego adresu (2010-05-02)].
  5. a b Troy Unrau: The Road to KDE 4: Phonon Makes Multimedia Easier. 2007-02-06. [dostęp 2007-12-19].