Firma Xiph.Org, twórca bezpłatnych kodeków wideo i audio, wydała kodek audio Opus 1.4.0, który zapewnia wysokiej jakości kodowanie i minimalne opóźnienia zarówno w przypadku transmisji strumieniowej audio o dużej przepływności, jak i kompresji głosu w aplikacjach VoIP o ograniczonej przepustowości. Implementacje referencyjne kodera i dekodera są rozpowszechniane na licencji BSD. Pełne specyfikacje formatu Opus są publicznie dostępne, bezpłatne i zatwierdzone jako standard internetowy (RFC 6716).
Kodek jest tworzony przez połączenie najlepszych technologii z kodeka CELT firmy Xiph.org i kodeka open source SILK firmy Skype. Oprócz Skype i Xiph.Org w rozwoju Opus brały udział również takie firmy jak Mozilla, Octasic, Broadcom i Google. Patenty związane z Opus są przyznawane przez firmy zaangażowane w rozwój do nieograniczonego użytku bez uiszczania opłat licencyjnych. Wszystkie prawa własności intelektualnej i licencje patentowe związane z Opus są automatycznie przekazywane do aplikacji i produktów korzystających z Opus, bez potrzeby dodatkowego zatwierdzenia. Nie ma ograniczeń co do zakresu i tworzenia alternatywnych wdrożeń firm trzecich. Jednak wszystkie przyznane prawa zostają cofnięte w przypadku postępowania patentowego dotyczącego technologii Opus przeciwko jakiemukolwiek użytkownikowi Opus.
Opus charakteryzuje się wysoką jakością kodowania i minimalnym opóźnieniem zarówno w przypadku kompresji strumieniowego dźwięku o dużej przepływności, jak i kompresji głosu w aplikacjach telefonii VoIP o ograniczonej przepustowości. Wcześniej Opus został wybrany najlepszym kodekiem przy 64Kbit (Opus pokonał konkurentów, takich jak Apple HE-AAC, Nero HE-AAC, Vorbis i AAC LC). Produkty obsługujące Opus po wyjęciu z pudełka obejmują przeglądarkę Firefox, platformę GStreamer i pakiet FFmpeg.
Główne cechy Opusa:
- Szybkość transmisji od 5 do 510 Kbit/s;
- Częstotliwość próbkowania od 8 do 48 KHz;
- Czas trwania ramki od 2.5 do 120 milisekund;
- Obsługa stałych (CBR) i zmiennych (VBR) przepływności;
- Obsługa dźwięku wąskopasmowego i szerokopasmowego;
- Wsparcie głosowe i muzyczne;
- Obsługa stereo i mono;
- Obsługa dynamicznego ustawiania szybkości transmisji bitów, przepustowości i rozmiaru ramki;
- Możliwość przywrócenia strumienia audio w przypadku utraty ramki (PLC);
- Obsługa do 255 kanałów (ramki wielostrumieniowe)
- Dostępność implementacji wykorzystujących arytmetykę zmiennoprzecinkową i stałoprzecinkową.
Kluczowe innowacje w Opus 1.4:
- Przeprowadzono optymalizację parametrów kodowania, mającą na celu poprawę subiektywnych wskaźników jakości dźwięku przy włączonej funkcji FEC (Forward Error Correction) przywracania uszkodzonych lub utraconych pakietów z przepływnościami od 16 do 24 kb/s (LBRR, Low Bit-Rate Redundancy).
- Dodano opcję OPUS_SET_INBAND_FEC, aby włączyć korekcję błędów FEC, ale bez wymuszania trybu SILK (FEC nie będzie używany w trybie CELT).
- Poprawiona implementacja trybu DTX (Discontinuous Transmission), który zapewnia wstrzymanie transmisji ruchu w przypadku braku dźwięku.
- Dodano obsługę systemu kompilacji Meson i ulepszoną obsługę budowania przy użyciu CMake.
- Dodano eksperymentalny mechanizm „Real-Time Packet Loss Concealment” przywracający fragmenty mowy utracone w wyniku utraty pakietów, działający poprzez wykorzystanie technologii uczenia maszynowego.
- Dodano eksperymentalną implementację mechanizmu „głębokiej redundancji”, który wykorzystuje system uczenia maszynowego do poprawy efektywności odzyskiwania dźwięku po utracie pakietów.
Źródło: opennet.ru