Phonon es la API multimedia proporcionada por KDE y es la abstracción estándar para manejar flujos multimedia dentro del software KDE y también utilizada por varias aplicaciones Qt .
Desarrollador (es) | Matthias Kretz ua [ cita requerida ] |
---|---|
Versión inicial | 11 de enero de 2008 [1] |
Lanzamiento estable | 4.11.1 / 26 de septiembre de 2019 [2] |
Repositorio | |
Escrito en | C ++ |
Sistema operativo | Linux , BSD , macOS , Solaris , Windows |
Tipo | Marco multimedia |
Licencia | Licencia pública general reducida GNU 2.1 |
Sitio web | phonon |
Phonon se creó originalmente para permitir que el software KDE y Qt sea independiente de cualquier marco multimedia único, como GStreamer o xine, y para proporcionar una API estable durante la vida útil de una versión principal. Se hizo por varias razones: para crear una API multimedia de estilo KDE / Qt simple , para admitir mejor los marcos multimedia nativos en Windows y macOS , y para solucionar problemas de marcos que no se mantienen o que tienen inestabilidad API o ABI .
Por ejemplo, un archivo se puede reproducir en cuatro líneas de código C ++ , [3] en comparación con 30 líneas en el antiguo marco de audio para KDE ( aRts ) [4]
Phonon :: MediaObject * media = new Phonon :: MediaObject ( esto ); createPath ( media , nuevo Phonon :: AudioOutput ( Phonon :: MusicCategory , esto )); medios -> setCurrentSource ( QUrl ( "/tmp/example.wav" )); medios -> reproducir ();
Phonon no está diseñado para tener todas las funciones multimedia imaginables, sino más bien como una forma sencilla de realizar funciones comunes de los reproductores multimedia de computadora. Se recomienda a los desarrolladores que requieran más control sobre un backend de medios determinado del que puede proporcionar Phonon que utilicen la API de medios nativos o la API de GStreamer en los sistemas para los que está disponible. [4]
Historia
La idea detrás de Phonon comenzó en aKademy 2004 en Ludwigsburg cerca de Stuttgart (Alemania), donde se tuvo que elegir una nueva API multimedia para reemplazar aRts. No se llegó a un consenso, pero algunos desarrolladores se reunieron y decidieron intentar desarrollar un nuevo marco con múltiples backends. La primera versión se llamaba KDEMM (KDE MultiMedia) y solo era compatible con JuK y Amarok . Matthias Kretz continuó trabajando solo en el proyecto como parte de su tesis universitaria. El proyecto cambió de nombre una vez más, pero en febrero de 2006 finalmente se eligió el nombre Phonon. La primera versión oficial fue parte de KDE 4.0 en enero de 2008, el mismo año en que Qt adoptó Phonon y lo lanzó como parte de Qt 4.4. Aunque el soporte para Phonon en Qt continuará para la serie 4.x, Qt ya reemplazó a Phonon con QtMultimedia y QtMobility. [5] [6] [7]
Características
- Phonon interactúa con varios backends con lo que los desarrolladores llaman "motores"; cada motor trabaja con un backend específico. Cada backend permitirá que Phonon controle funciones básicas como reproducir, pausar y buscar. Phonon también admitirá funciones de nivel superior, como la forma en que las pistas se desvanecen entre sí. [8]
- Phonon puede cambiar marcos multimedia sobre la marcha. El usuario puede cambiar entre marcos incluso mientras escucha música, con solo una pequeña pausa durante el cambio. Este cambio también afectará a todo el sistema y afectará a todas las aplicaciones que utilizan Phonon, por lo que cambiar los marcos será mucho más fácil.
- Al usar Solid , Phonon brinda a los usuarios un mayor control sobre accesorios como auriculares, parlantes y micrófonos. Se dio un ejemplo de que uno podría tener una conversación de VoIP que solo se reproduzca a través de los auriculares, pero que todos los demás sonidos salgan a través de los altavoces. [8]
Backends
- Los backends admitidos en la mayoría de los sistemas similares a Unix son GStreamer y VLC .
- Los backends compatibles con Windows incluyen DirectShow , VLC y MPlayer .
- El backend compatible con macOS es QuickTime .
- Los backends xine y MPlayer están obsoletos en Linux y ya no se están desarrollando. [9]
Ver también
- PulseAudio : servidor de sonido predominante para uso de escritorio
- Kit de conexión de audio JACK : servidor de sonido predominante para la producción de audio profesional
Referencias
- ^ "Lanzamiento de KDE 4.0" . 2018-01-11 . Consultado el 23 de octubre de 2019 .
- ^ "Anuncio de lanzamiento de Phonon 4.11.1" . 2019-09-26 . Consultado el 23 de octubre de 2019 .
- ^ Kretz, Matthias. "Referencia de clase MediaObject" . Archivado desde el original el 26 de abril de 2008 . Consultado el 19 de diciembre de 2007 .
- ^ a b Sanders, N. (9 de mayo de 2006). "Phonon y el futuro de KDE multimedia" . Consultado el 19 de diciembre de 2007 .
- ^ Guthrie, Colin. "Qt Multimedia / Movilidad vs. Phonon: ¡¡¡LUCHA !!!" . Consultado el 20 de noviembre de 2010 .
- ^ "Módulo QtMultimedia" . Consultado el 20 de noviembre de 2010 .
- ^ "Descripción general de las API de Qt Mobility Project" . Consultado el 20 de noviembre de 2010 .
- ^ a b Unrau, Troy (6 de febrero de 2007). "El camino a KDE 4: Phonon hace multimedia más fácil" . Consultado el 19 de diciembre de 2007 .
- ^ "Phonon - KDE UserBase Wiki" . Consultado el 1 de marzo de 2012 .
enlaces externos
- Página de inicio de Phonon
- Código de teléfono (alojado en git.kde.org)