Dopo un anno e mezzo di sviluppo, l'organizzazione Xiph.Org, che si occupa della creazione di codec audio e video liberi, ha presentato il rilascio del codec audio Opus 1.6, che offre un'alta qualità di codifica e una minima latenza sia nella compressione di audio in streaming ad alta bitrate, sia nella compressione di voce in applicazioni VoIP con larghezza di banda limitata. Le implementazioni di riferimento dell'encoder e del decoder sono distribuite con licenza BSD. Le specifiche complete del formato Opus sono disponibili al pubblico, gratuite e approvate come standard internet (RFC 6716).
Il codec è stato creato combinando le migliori tecnologie del codec CELT sviluppato da Xiph.org e del codec SILK aperto da Skype. Oltre a Skype e Xiph.Org, hanno partecipato allo sviluppo di Opus anche aziende come Mozilla, Octasic, Broadcom e Google. I brevetti coinvolti in Opus sono forniti dalle aziende che hanno partecipato allo sviluppo per un utilizzo illimitato senza pagamento di diritti di licenza. Tutti i diritti di proprietà intellettuale e le licenze sui brevetti collegati a Opus sono automaticamente delegati per le applicazioni e i prodotti che utilizzano Opus, senza necessità di ulteriore approvazione. Non ci sono restrizioni sull'ambito di applicazione e sulla creazione di implementazioni alternative di terzi. Tutti i diritti concessi possono essere revocati in caso di controversia brevettuale che coinvolga le tecnologie Opus contro qualsiasi utente di Opus.
Opus si distingue per l'alta qualità della codifica e una latenza minima sia nella compressione di audio in streaming ad alta bitrate, sia nella compressione di voce in applicazioni VoIP con larghezza di banda limitata. In precedenza, Opus è stato riconosciuto come il miglior codec utilizzando un bitrate di 64 Kbit (Opus ha superato concorrenti come Apple HE-AAC, Nero HE-AAC, Vorbis e AAC LC). Tra i prodotti che supportano Opus "out of the box", possiamo menzionare il browser Firefox, il framework GStreamer e il pacchetto FFmpeg.
Caratteristiche principali di Opus:
- Bitrate da 5 Kbit/s a 2 Mbit/s;
- Frequenza di campionamento da 8 a 96 KHz;
- Durata dei frame da 2,5 a 120 millisecondi;
- Supporto per bitrate costanti (CBR) e variabili (VBR);
- Supporto per audio a banda ristretta e larga;
- Supporto per voce e musica;
- Supporto per stereo e mono;
- Supporto per la regolazione dinamica del bitrate, della larghezza di banda e della dimensione del frame;
- Possibilità di recuperare il flusso audio in caso di perdita di pacchetti (PLC);
- Supporto fino a 255 canali (quadri multipli)
- Disponibilità di implementazioni che utilizzano aritmetica in virgola mobile e fissa.
Novità principali di Opus 1.6:
- È stata implementata una variante Opus HD per la codifica audio con frequenza di campionamento di 96 kHz, bitrate fino a 2 Mbit/s e una larghezza di banda che supera il range audio standard di 20 kHz.
- È stato aggiunto un modulo BWE (wideband-to-fullband) per la conversione da una rappresentazione a codifica a banda larga (intervallo di frequenze limitato a 8 kHz) a una rappresentazione a banda piena che copre l'intero range udibile (fino a 20 kHz). Le frequenze mancanti tra 8 e 20 kHz vengono ricreate utilizzando un algoritmo basato sull'apprendimento automatico.
- È stato proposto un nuovo API per la codifica e decodifica di audio con rappresentazione intera a 24 bit per canale. Il nuovo API può essere utile per migliorare la qualità del suono su piattaforme la cui performance non è adeguata per la codifica in virgola mobile o in situazioni in cui si utilizza esclusivamente la codifica a interi. Il supporto per l'API a interi a 16 bit per canale e la codifica in virgola mobile a 32 bit per canale è mantenuto.
- È stata notevolmente migliorata l'implementazione del meccanismo "Deep Redundancy" (DRED), che utilizza l'apprendimento automatico per recuperare frammenti audio persi a causa di perdite di pacchetti.
- È stata aumentata la precisione del codificatore nell'implementazione che utilizza l'aritmetica a virgola fissa.
- Sono state aggiunte ottimizzazioni per l'architettura MIPS.
- È stata garantita la definizione delle istruzioni SIMD supportate dalle CPU x86 sulla piattaforma OpenBSD.
Fonte: opennet.ru
