Opus (formato de audio) - Opus (audio format)

Opus
Opus logo2.svg
Extensión de nombre de archivo
.opus
Tipo de medio de Internet audio/ogg
audio/opus (RTP)
Desarrollado por Grupo de trabajo del códec IETF
Versión inicial 11 de septiembre de 2012 ( 2012-09-11 )
Tipo de formato Audio
Contenido por Ogg , Matroska , WebM , MPEG-TS
Extendido desde SEDA , CELT
Estándar RFC 6716
¿ Formato abierto ?
Sitio web opus-codec .org
libopus
Libopus 1.3.1 screenshot.png
Desarrollador (es) Fundación Xiph.Org
Versión inicial 26 de agosto de 2012 ( 2012-08-26 )
Lanzamiento estable
1.3.1 / 12 de abril de 2019 ; Hace 2 años ( 12 de abril de 2019 )
Escrito en C89
Plataforma Multiplataforma
Escribe Códec de audio , implementación de referencia
Licencia Licencia BSD de 3 cláusulas
Sitio web Descargas de códec Opus

Opus es un formato de codificación de audio con pérdida desarrollado por la Fundación Xiph.Org y estandarizado por el Grupo de Trabajo de Ingeniería de Internet , diseñado para codificar de manera eficiente el habla y el audio general en un solo formato, sin dejar de tener una latencia lo suficientemente baja para la comunicación interactiva en tiempo real y bajo -complejidad suficiente para procesadores integrados de gama baja. Opus reemplaza tanto a Vorbis como a Speex para nuevas aplicaciones, y varias pruebas de escucha a ciegas lo han calificado de mayor calidad que cualquier otro formato de audio estándar en cualquier tasa de bits dada hasta que se alcanza la transparencia , incluidos MP3 , AAC y HE-AAC .

Opus combina el algoritmo SILK basado en LPC orientado al habla y el algoritmo CELT basado en MDCT de baja latencia , cambiando entre ellos o combinándolos según sea necesario para una máxima eficiencia. La tasa de bits, el ancho de banda de audio, la complejidad y el algoritmo se pueden ajustar sin problemas en cada cuadro. Opus tiene el retardo algorítmico bajo (26,5 ms por defecto) necesario para su uso como parte de un enlace de comunicación en tiempo real, actuaciones musicales en red y sincronización de labios en directo ; mediante el intercambio de calidad o tasa de bits, el retardo se puede reducir a 5 ms. Su retraso es excepcionalmente bajo en comparación con los códecs de la competencia, que requieren más de 100 ms, sin embargo, Opus funciona de manera muy competitiva con estos formatos en términos de calidad por tasa de bits.

Como formato abierto estandarizado a través de RFC 6716, una implementación de referencia llamada libopus está disponible bajo la Nueva Licencia BSD . La referencia tiene tanto de punto fijo y de punto flotante optimizaciones para dispositivos de baja y de gama alta, con SIMD optimizaciones en las plataformas que los soportan. Todas las patentes de software conocidas que cubren Opus tienen licencia bajo condiciones libres de regalías . Opus se usa ampliamente como códec de voz sobre IP (VoIP) en aplicaciones como WhatsApp y PlayStation 4 .

Características

Posibles combinaciones de tasa de bits y latencia en comparación con otros formatos de audio

Opus admite codificación de velocidad de bits constante y variable de 6  kbit / sa 510 kbit / s (o hasta 256 kbit / s por canal para pistas multicanal), tamaños de trama de 2,5 ms a 60 ms y cinco velocidades de muestreo de 8 kHz (con un ancho de banda de 4 kHz) a 48 kHz (con un ancho de banda de 20 kHz, el rango de audición humana ). Un flujo de Opus puede admitir hasta 255 canales de audio y permite el acoplamiento de canales entre canales en grupos de dos utilizando codificación del lado medio.

Opus tiene una latencia muy corta (26,5 ms utilizando los marcos predeterminados de 20 ms y la configuración predeterminada de la aplicación), lo que lo hace adecuado para aplicaciones en tiempo real como telefonía , voz sobre IP y videoconferencia ; La investigación de Xiph condujo al códec CELT , que permite la máxima calidad manteniendo un retardo bajo. En cualquier flujo de Opus, la tasa de bits, el ancho de banda y el retardo se pueden variar continuamente sin introducir distorsión o discontinuidad; incluso mezclar paquetes de diferentes flujos provocará un cambio suave, en lugar de la distorsión común en otros códecs. A diferencia de Vorbis, Opus no requiere grandes libros de códigos para cada archivo individual, lo que lo hace más eficiente para clips cortos de audio y más resistente.

Como estándar abierto, los algoritmos se documentan abiertamente y se publica una implementación de referencia (incluido el código fuente ). Broadcom y la Fundación Xiph.Org poseen patentes de software sobre algunos de los algoritmos CELT, y Skype Technologies / Microsoft poseen algunas sobre los algoritmos SILK; cada uno ofrece un perpetuo libre de regalías para su uso con Opus, reservándose solo el derecho de hacer uso de sus patentes para defenderse de demandas por infracción de terceros. Qualcomm , Huawei , France Telecom y Ericsson han afirmado que sus patentes pueden aplicarse, lo que el asesor legal de Xiph niega, y ninguno ha emprendido ninguna acción legal. La licencia de Opus finaliza automática y retroactivamente para cualquier entidad que intente presentar una demanda por patente.

El espectrograma de audio codificado en Opus a medida que aumenta la tasa de bits (~ 32 a ~ 160 kbit / s) muestra claramente un comportamiento de paso bajo y una mejor conservación de la energía de la banda con CELT (comparar original, Vorbis, MP3, AAC ).

El formato Opus se basa en una combinación del formato CELT de ancho de banda completo y el formato SILK orientado al habla , ambos muy modificados: CELT se basa en la transformada de coseno discreta modificada (MDCT) que utilizan la mayoría de los códecs de música, utilizando técnicas CELP en el dominio de frecuencia para una mejor predicción, mientras que SILK utiliza codificación predictiva lineal (LPC) y un filtro de predicción a largo plazo opcional para modelar el habla. En Opus, ambos se modificaron para admitir más tamaños de fotogramas, así como mejoras e integración algorítmicas adicionales, como el uso del codificador de rango CELT para ambos tipos. Para minimizar la sobrecarga a bajas tasas de bits, si la latencia no es tan apremiante, SILK tiene soporte para empaquetar múltiples marcos de 20 ms juntos, compartiendo contexto y encabezados; SILK también permite tramas de redundancia de velocidad de bits baja (LBRR), lo que permite la recuperación de pérdida de paquetes de baja calidad. CELT incluye tanto la replicación espectral como la generación de ruido, similar al SBR y PNS de AAC, y puede ahorrar aún más bits al filtrar todos los armónicos de los sonidos tonales por completo y luego replicarlos en el decodificador. Una mejor detección de tonos es un proyecto en curso para mejorar la calidad.

El formato tiene tres modos diferentes: habla, híbrido y CELT. Al comprimir voz, SILK se utiliza para frecuencias de audio de hasta 8 kHz. Si se desea un ancho de banda más amplio, un modo híbrido usa CELT para codificar el rango de frecuencia por encima de 8 kHz. El tercer modo es pure-CELT, diseñado para audio general. SILK es inherentemente VBR y no puede alcanzar un objetivo de tasa de bits, mientras que CELT siempre se puede codificar en cualquier número específico de bytes, habilitando el modo híbrido y CELT cuando se requiere CBR.

SILK admite tamaños de fotograma de 10, 20, 40 y 60 ms. CELT admite tamaños de trama de 2,5, 5, 10 y 20 ms. Por lo tanto, el modo híbrido solo admite tamaños de trama de 10 y 20 ms; los fotogramas de menos de 10 ms siempre utilizarán el modo CELT. Un paquete típico de Opus contiene una sola trama, pero se producen paquetes de hasta 120 ms combinando varias tramas por paquete. Opus puede cambiar de forma transparente entre modos, tamaños de trama, anchos de banda y recuentos de canales por paquete, aunque las aplicaciones específicas pueden optar por limitar esto.

La implementación de referencia está escrita en C y se compila en arquitecturas de hardware con o sin una unidad de punto flotante , aunque actualmente se requiere el punto flotante para la detección de ancho de banda de audio (conmutación dinámica entre SILK, CELT y codificación híbrida) y la mayoría de las optimizaciones de velocidad.

Contenedores

Los paquetes Opus no se auto-delimitan, sino que están diseñados para usarse dentro de un contenedor de algún tipo que proporciona al decodificador la longitud de cada paquete. Opus se especificó originalmente para la encapsulación en contenedores Ogg , especificado como audio/ogg; codecs=opus, y para los archivos Ogg Opus .opusse recomienda la extensión del nombre de archivo. Las transmisiones de Opus también son compatibles con Matroska , WebM , MPEG-TS y MP4 .

Alternativamente, cada paquete de Opus puede estar envuelto en un paquete de red que proporciona la longitud del paquete. Los paquetes Opus pueden enviarse a través de un protocolo de datagrama ordenado como RTP .

Un formato de paquete autodelimitado opcional se define en un apéndice de la especificación. Esto utiliza uno o dos bytes adicionales por paquete para codificar la longitud del paquete, lo que permite concatenarlos sin encapsularlos.

Ancho de banda y frecuencia de muestreo

Opus permite los siguientes anchos de banda durante la codificación. La compresión Opus no depende de la frecuencia de muestreo de entrada; las marcas de tiempo se miden en unidades de 48 kHz incluso si no se utiliza el ancho de banda completo. Asimismo, la frecuencia de muestreo de salida se puede elegir libremente. Por ejemplo, el audio se puede ingresar a 16 kHz pero se puede configurar para codificar solo audio de banda estrecha.

Abreviatura
Ancho de banda de audio

Frecuencia de muestreo efectiva
NB (banda estrecha) 04 kHz 08 kHz
MB (banda media) 06 kHz 12 kHz
WB (banda ancha) 08 kHz 16 kHz
SWB (banda súper ancha) 12 kHz 24 kHz
FB (banda completa) 20 kHz 48 kHz

Historia

Se propuso Opus para la estandarización de un nuevo formato de audio en el IETF, que finalmente fue aceptado y otorgado por el grupo de trabajo del códec . Se basa en dos propuestas estándar inicialmente separadas de la Fundación Xiph.Org y Skype Technologies SA (ahora Microsoft ). Sus principales desarrolladores son Jean-Marc Valin (Xiph.Org, Octasic, Mozilla Corporation ), Koen Vos (Skype) y Timothy B. Terriberry (Xiph.Org, Mozilla Corporation). Entre otros, también participaron Juin-Hwey (Raymond) Chen ( Broadcom ), Gregory Maxwell (Xiph.Org, Wikimedia ) y Christopher Montgomery (Xiph.Org).

El desarrollo de la parte CELT del formato se remonta a los pensamientos sobre un sucesor de Vorbis bajo el nombre de trabajo Ghost . Como un códec de voz más nuevo de la Fundación Xiph.Org, Opus reemplaza el códec de voz más antiguo de Xiph, Speex , un proyecto anterior de Jean-Marc Valin. Se ha trabajado en CELT desde noviembre de 2007.

La parte SILK ha estado en desarrollo en Skype desde enero de 2007 como el sucesor de su SVOPC , un proyecto interno para hacer que la empresa sea independiente de los códecs de terceros como iSAC e iLBC y los respectivos pagos de licencias.

En marzo de 2009, Skype sugirió el desarrollo y estandarización de un formato de audio de banda ancha dentro del IETF. Pasó casi un año con mucho debate sobre la formación de un grupo de trabajo apropiado . Representantes de varias empresas que participaban en la estandarización del formato competidor con patentes gravadas, incluidos Polycom y Ericsson , los creadores y otorgantes de licencias de G.719 , así como France Télécom , Huawei y Orange Labs (departamento de France Télécom), que participaron en la creación de G.718 , manifestaron objeciones contra el inicio del proceso de estandarización para un formato libre de regalías. (Algunos de los oponentes reclamarían más tarde derechos de patente que Xiph rechazó; ver arriba). El grupo de trabajo finalmente se formó en febrero de 2010, e incluso la correspondiente Comisión de Estudio 16 del UIT-T se comprometió a apoyar su trabajo.

En julio de 2010 se presentó un prototipo de formato híbrido que combinaba los dos formatos candidatos propuestos SILK y CELT. En septiembre de 2010, Opus se presentó al IETF como propuesta de estandarización. Durante un breve período de tiempo, el formato pasó a llamarse Harmony antes de obtener su nombre actual en octubre de 2010. A principios de febrero de 2011, el formato bitstream estaba provisionalmente congelado, sujeto a los últimos cambios. A finales de julio de 2011, Mozilla Corporation contrató a Jean-Marc Valin para seguir trabajando en Opus.

Finalización (1.0)

En noviembre de 2011, el grupo de trabajo emitió la última convocatoria de cambios en el formato de flujo de bits. El flujo de bits se ha congelado desde el 8 de enero de 2012. El 2 de julio de 2012, el IETF aprobó la estandarización de Opus . El software de referencia entró en estado de versión candidato el 8 de agosto de 2012. La especificación final se publicó como RFC 6716 el 10 de septiembre de 2012. y las versiones 1.0 y 1.0.1 de la implementación de referencia libopus se lanzaron al día siguiente.

El 11 de julio de 2013, libopus 1.0.3 trajo correcciones de errores y una nueva API de sonido envolvente que mejora la asignación de canales y la calidad, especialmente para LFE .

1.1

El 5 de diciembre de 2013, se lanzó libopus 1.1, incorporando mejoras generales de velocidad y mejoras significativas en la calidad del codificador: la estimación de tonalidad aumenta la tasa de bits y la calidad de muestras previamente problemáticas , como los clavecines; la detección automática de voz / música mejora la calidad en audio mixto; el estéreo de medio lado reduce las necesidades de tasa de bits de muchas canciones; refuerzo de precisión de banda para mejorar los transitorios; y rechazo de CC por debajo de 3 Hz. Se agregaron dos nuevos modos VBR : sin restricciones para una calidad más consistente y VBR temporal que aumenta los marcos más ruidosos y, en general, mejora la calidad.

libopus 1.1.1 fue lanzado el 26 de noviembre de 2015 y 1.1.2 el 12 de enero de 2016, ambos agregando optimizaciones de velocidad y correcciones de errores. El 15 de julio de 2016 vio el lanzamiento de la versión 1.1.3 e incluye correcciones de errores, optimizaciones, actualizaciones de documentación y trabajo experimental de Ambisonics .

1.2

libopus 1.2 Beta se lanzó el 24 de mayo de 2017. libopus 1.2 se lanzó el 20 de junio de 2017. Las mejoras introducidas en 1.2 le permiten crear música de banda completa a velocidades de bits tan bajas como 32 kbit / sy voz de banda ancha a solo 12 kbit / s.

libopus 1.2 incluye soporte opcional para los cambios de especificación del decodificador hechos en borradores de RFC 8251, mejorando la calidad de salida de tales flujos de baja velocidad.

1.3

libopus 1.3 se lanzó el 18 de octubre de 2018. La versión principal de Opus 1.3 trae nuevamente mejoras de calidad, nuevas funciones y correcciones de errores. Los cambios desde 1.2.x incluyen:

  • Mejoras en la detección de actividad de voz (VAD) y la clasificación de voz / música mediante una red neuronal recurrente (RNN)
  • Soporte para codificación ambisonics usando familias de mapeo de canales 2 y 3
  • Mejoras en la codificación de voz estéreo a baja tasa de bits
  • Uso de codificación de voz de banda ancha de hasta 9 kb / s (ya no se usa la banda media)
  • Haciendo posible usar SILK hasta tasas de bits de alrededor de 5 kb / s
  • Mejora menor de la calidad de los tonos.
  • Habilitar las correcciones de especificaciones en RFC 8251 de forma predeterminada
  • Mejoras de seguridad / endurecimiento

Las correcciones de errores notables incluyen:

  • Correcciones al CELT PLC
  • Correcciones de detección de ancho de banda

1.3.1

libopus 1.3.1 se lanzó el 12 de abril de 2019. Esta versión menor de Opus 1.3.1 soluciona un problema con el análisis de archivos con silencio digital (todos ceros), especialmente en compilaciones x87 (afecta principalmente a compilaciones de 32 bits). También incluye dos novedades:

  • Una nueva consulta OPUS_GET_IN_DTX para saber si el codificador está en modo DTX (la última trama era una trama de ruido de confort o no estaba codificada en absoluto)
  • Un nuevo (y aún experimental) sistema de compilación basado en CMake que eventualmente reemplazará al sistema de compilación VS2015 (el de autotools se mantendrá)

Comparación de calidad y rendimiento de baja latencia

Comparación de la eficiencia de codificación entre Opus y otros formatos de audio populares

Opus funciona bien a velocidades de bits bajas y altas .

En pruebas de escucha de alrededor de 64 kbit / s, Opus muestra una calidad superior en comparación con los códecs HE-AAC , que anteriormente eran dominantes debido a su uso de la tecnología patentada de replicación de banda espectral (SBR). En pruebas de escucha de alrededor de 96 kbit / s, Opus muestra una calidad ligeramente superior en comparación con AAC y una calidad significativamente mejor en comparación con Vorbis y MP3 .

Opus tiene un retardo algorítmico muy bajo, una necesidad para su uso como parte de un enlace de comunicación de baja latencia de audio , que puede permitir una conversación natural, interpretaciones musicales en red o sincronización de labios en eventos en vivo. El retraso algorítmico total para un formato de audio es la suma de los retrasos que deben producirse en el codificador y el decodificador de una transmisión de audio en vivo independientemente de la velocidad de procesamiento y la velocidad de transmisión, como almacenar en búfer muestras de audio en bloques o cuadros, lo que permite la superposición de ventanas y posiblemente permitiendo la anticipación de modelado de ruido en un decodificador y cualquier otra forma de anticipación, o para un codificador MP3, el uso de depósito de bits .

La latencia unidireccional total por debajo de 150 ms es el objetivo preferido de la mayoría de los sistemas VoIP , para permitir una conversación natural con la toma de turnos poco afectada por la demora. Los músicos suelen sentirse en el tiempo con una latencia de audio de hasta 30 ms, aproximadamente de acuerdo con el tiempo de fusión del efecto Haas , aunque también puede ayudar hacer coincidir el retraso de reproducción del propio instrumento de cada usuario con la latencia de ida y vuelta. Se sugiere que para la sincronización de labios sea ​​aceptable una latencia de audio de entre 45 y 100 ms.

Opus permite compensar la reducción de la calidad o el aumento de la tasa de bits para lograr un retardo algorítmico aún menor (5,0 ms como mínimo). Mientras que el marco Opus predeterminado de la implementación de referencia tiene una longitud de 20,0 ms, la capa SILK requiere una búsqueda anticipada adicional de 5,0 ms más 1,5 ms para el remuestreo, lo que da un retraso predeterminado de 26,5 ms. Cuando la capa CELT está activa, requiere una anticipación de 2,5 ms para la superposición de ventanas a la que se agrega un retardo coincidente de 4,0 ms de forma predeterminada para sincronizar con la capa SILK. Si se crea una instancia del codificador en el modo de retardo bajo restringido especial , se elimina el retardo de coincidencia de 4,0 ms y se deshabilita la capa SILK, lo que permite el retardo algorítmico mínimo de 5,0 ms.

Apoyo

El formato y los algoritmos se documentan abiertamente y la implementación de referencia se publica como software libre . La implementación de referencia de Xiph se llama libopus y un paquete llamado opus-tools proporciona utilidades de codificador y descodificador de línea de comandos. Se publica bajo los términos de una licencia similar a BSD . Está escrito en C y se puede compilar para arquitecturas de hardware con o sin una unidad de punto flotante . La herramienta de diagnóstico adjunta opusinfo proporciona información técnica detallada sobre los archivos Opus, incluida información sobre el cumplimiento estándar del formato de flujo de bits. Se basa en ogginfo de vorbis-tools y, por lo tanto, a diferencia del codificador y decodificador, está disponible bajo los términos de la versión 2 de la GPL .

Implementaciones

RFC  6716 contiene un código fuente completo para la implementación de referencia escrita en C. RFC 8251 contiene erratas.

El proyecto FFmpeg tiene implementaciones de codificador y decodificador que no se derivan de la biblioteca de referencia.

La biblioteca de referencia libopus se ha adaptado tanto a C # como a Java como parte de un proyecto llamado Concentus. Estos puertos sacrifican el rendimiento en aras de integrarse fácilmente en aplicaciones multiplataforma.

Software

Digital Radio Mondiale  , un formato de radio digital para frecuencias AM, puede transmitir y recibir audio Opus (aunque no reconocido en el estándar oficial) utilizando la radio definida por software Dream .

La Fundación Wikimedia patrocinó un codificador Opus de JavaScript en línea gratuito y de código abierto para navegadores que admitan las funciones HTML5 requeridas .

Desde 2016, WhatsApp utiliza Opus como formato de archivo de audio.

Signal cambió de códec de audio Speex a Opus para una mejor calidad de audio a principios de 2017.

Soporte del sistema operativo

La mayor parte del software de usuario final se basa en marcos multimedia proporcionados por el sistema operativo . La compatibilidad con el códec Native Opus se implementa en la mayoría de los principales marcos multimedia para sistemas operativos similares a Unix, incluidas las bibliotecas GStreamer , FFmpeg y Libav .

Google agregó soporte nativo para la reproducción de audio Opus en Android 5.0 "Lollipop" . Sin embargo, se limitó al audio Opus encapsulado en contenedores Matroska , como archivos .mkvy .webm. Android 7.0 "Nougat" introdujo soporte para audio Opus encapsulado en .oggcontenedores. Android 10 finalmente agregó soporte nativo para .opus extensiones .

Debido a la adición de soporte WebRTC en el motor de renderizado WebKit de Apple , macOS High Sierra e iOS 11 vienen con soporte de reproducción nativo para audio Opus encapsulado en contenedores Core Audio Format .

En Windows 10 , versión 1607 , Microsoft proporcionó soporte nativo para audio Opus encapsulado en archivos Matroska y WebM . En la versión 1709 , el soporte para audio Opus encapsulado en .oggcontenedores estaba disponible a través de un complemento preinstalado llamado Web Media Extensions. En Windows 10 versión 1903 , .opusse agregó soporte nativo para el contenedor. En Windows 8.1 y versiones anteriores, los decodificadores de terceros, como los filtros LAV , están disponibles para brindar soporte para el formato.

Soporte de Opus por diferentes sistemas operativos
Ventanas Mac OS Linux Androide iOS
Soporte de códec
Parcial : Win 10 v1607, 1709, 1809
Completo : Win 10 v1903

(soporte limitado para contenedores)

Parcial : Android 5, 6, 7
Completo : Android 10

(soporte limitado para contenedores)
Soporte para contenedores En la actualización de aniversario de Windows 10 (1607) :
WebM (.webm no se reconoce; requiere una pseudoextensión )
Matroska (.mka, .mkv)

En Windows 10 Fall Creators Update (1709) con el complemento Web Media Extensions :
Ogg (.opus no se reconoce; requiere una pseudoextensión)

En la actualización de Windows 10 de octubre de 2018 (1809) :
WebM (.webm se reconoce oficialmente)

En la actualización de Windows 10 de mayo de 2019 (1903) :

Ogg (.opus es reconocido oficialmente)

En macOS High Sierra :
formato de audio principal (.caf)
Ogg (.opus)
WebM (.webm)
Matroska (.mka, .mkv)
MPEG-TS (.ts)
En Android 5 :
WebM (.webm)
Matroska (.mka, .mkv)

En Android 7 :
Ogg (.opus no se reconoce; requiere una pseudo extensión)

En Android 10 :

Ogg (.opus es reconocido oficialmente)

En iOS 11 :
formato de audio principal (.caf)
Notas En Windows 10 :
- En Anniversary Update (1607), el soporte limitado está disponible en Microsoft Edge ( solo a través de MSE ) y las aplicaciones de la Plataforma universal de Windows . Windows Media Player no es compatible con Ogg; solo WebM y Matroska.
- En la actualización de abril de 2018 (1803) con Web Media Extensions preinstaladas, Microsoft Edge (EdgeHTML 17) admite el audio Opus incrustado en las etiquetas <audio>.
- Hasta la actualización de octubre de 2018 (1809), no se reconocía la extensión de nombre de archivo .opus. (sustitúyalo por una extensión de pseudoarchivo como .m4a)

En Windows 8.1 y versiones anteriores :
- Requiere la instalación de un marco multimedia de terceros, filtros LAV .

Solo se admite el audio Opus en un contenedor CAF. - - Hasta Android 9, no se reconocía la extensión de nombre de archivo .opus (sustitúyala por una extensión de pseudoarchivo como .ogg o .m4a) Solo se admite el audio Opus en un contenedor CAF.

Soporte de reproductor multimedia

Si bien el soporte en marcos multimedia habilita automáticamente el soporte de Opus en software que se construye sobre dichos marcos, varios desarrolladores de aplicaciones hicieron esfuerzos adicionales para admitir el formato de audio Opus en su software. Dicho soporte se agregó a los reproductores de audio AIMP , Amarok , cmus , Music Player Daemon , foobar2000 , Mpxplay , MusicBee , SMplayer , VLC media player , Winamp y Xmplay ; Icecast , software de transmisión de audio Airtime (software) ; y extractor de CD de audio Asunder , grabadora de CD CDBurnerXP , herramientas de codificación de medios FFmpeg, Libav y MediaCoder . Las pruebas de transmisión de radio de Icecast están en vivo desde septiembre de 2012 y enero de 2013. SteamOS usa Opus o Vorbis para transmitir audio.

Soporte del navegador

El soporte de Opus es obligatorio para las implementaciones de WebRTC . Opus es compatible con Mozilla Firefox , Chromium y Google Chrome , Opera basado en Blink , así como con todos los navegadores para sistemas similares a Unix que dependen de GStreamer para la compatibilidad con formatos multimedia. Aunque Internet Explorer no proporcionará reproducción de Opus de forma nativa, el navegador Edge incluye compatibilidad con el formato , junto con VP9 , para una compatibilidad total con WebM . Safari es compatible con Opus a partir de iOS 11 y macOS High Sierra.

Soporte VoIP

Debido a sus capacidades, Opus ganó el interés temprano de los proveedores de software de voz sobre IP (VoIP). Varios SIP clientes, incluyendo Acrobits Softphone , CSipSimple (a través de plug-in adicional), Empatía (a través de GStreamer), Jitsi , Tuenti , Línea 2 (actualmente sólo en IOS ), Linphone , Phoner y PhonerLite , SFLphone , Teléfono , Mumble , la discordia y TeamSpeak El software de chat de voz 3 también es compatible con Opus. TrueConf es compatible con Opus en sus productos VoIP. Asterisk carecía de soporte Opus incorporado por razones legales, pero un parche de terceros estaba disponible para descargar y se agregó soporte oficial a través de un blob binario en septiembre de 2016. El software de videoconferencia Tox P2P usa Opus exclusivamente. La aplicación de mensajería distribuida de anuncios clasificados envía marcos opus sin procesar dentro del socket TLS en su implementación de VoIP.

Opus se usa ampliamente como códec de voz en WhatsApp , que tiene más de 1.500  millones de usuarios en todo el mundo. WhatsApp utiliza Opus a frecuencias de muestreo de 8 a 16 kHz , con el Protocolo de transporte en tiempo real (RTP). La consola de videojuegos PlayStation 4 también usa el códec CELT / Opus para su chat de fiesta del sistema PlayStation Network . También se utiliza en la aplicación de videoconferencia Zoom.

Hardware

Desde la versión 3.13, Rockbox permite la reproducción de Opus en reproductores multimedia portátiles compatibles , incluidos algunos productos de la serie iPod de Apple , dispositivos fabricados por iriver , Archos y Sandisk , y en dispositivos Android que utilizan "Rockbox como aplicación". Todos los teléfonos IP de Grandstream recientes admiten audio Opus tanto para codificación como para decodificación. Todos los teléfonos IP OBihai OBi1062, OBi1032 y OBi1022 son compatibles con Opus. Los altavoces inalámbricos BlueSound recientes admiten la reproducción de Opus. Los dispositivos que ejecutan Hiby OS, como Hiby R3, son capaces de decodificar archivos Opus de forma nativa.

Muchos códecs IP de transmisión incluyen Opus, como los fabricados por Comrex , GatesAir y Tieline .

Notas

Referencias

Citas

Fuentes

enlaces externos

Ver también