2. kodek
Codec2 egy ( szabadalom -) szabad veszteséges audio codec , amely specializálódott érthető átvitel az emberi beszéd rendkívül alacsony bitsebesség mellett. A kodeket a hangjelek keskeny sávú rádiócsatornákon történő továbbítására hozták létre amatőr rádióban . A referencia megvalósításra a GNU Lesser General Public License (LGPL) 2.1 verziójának feltételei vonatkoznak .
A módszer nyílt specifikációja lehetővé teszi a digitális kommunikációt amatőr rádiófrekvenciákon, anélkül, hogy szükségszerűen meghatározatlan digitális tartalmat továbbítana korábban rendelkezésre álló saját kódexek , például AMBE vagy MELP használatával , amelyek a rádióamatőrök számára tiltottak.
A Codec2 már hivatalosan is integrálódott a FreeSWITCH-ba, és az Asteriskbe integrálható egy javítás .
jellemzők
A Codec2 3200, 2400, 1600, 1400, 1300, 1200, 700 vagy 450 bps sebességű rögzített sebességű módokat kínál. 8 kHz mintavételi frekvenciával dolgozza fel és szállítja a PCM adatokat. Az egyes (paraméteres) adatcsomagok 10-20 (2,4 kBit / s) vagy 40 (1,4 kBit / s) milliszekundumot fednek le. A szerző az algoritmikus késleltetést körülbelül 100 milliszekundumra teszi. A hang minősége enyhén mozog alatt rendes 2G - mobiltelefonok és lehet mondani, hogy felmérhessük, viszonylag sokkal kisebb bitsebesség azzal a AMBE.
A referencia megvalósítás C-ben van programozva , és eddig lebegőpontos aritmetika nélkül nem sikerült , bár maga az eljárás ezt nem igényli. A referencia szoftvercsomag tartalmaz egy FDMDV szoftveres modem és egy grafikus felhasználói felület alapján FLTK . A szoftvert Linux rendszeren fejlesztik, és a Linux verzió mellett a Cygwin segítségével létrehozott Windows portot is kínálják.
A fő fejlesztő, Rowe alapvetően elkerülte az érvényes szabadalmak által érintett algoritmusokat azzal, hogy folyamatát évtizedek óta ismert technikákra alapozta. Azonban nem folytattak átfogó szabadalmi keresést, mielőtt azt a linux.conf.au webhelyen bemutatták 2012 januárjában.
technológia
A módszer az parametrikus hangkódolás eszközeivel működik az emberi hang modelljének felhasználásával. Alapvető módszerként egyebek mellett szinuszos modellt alkalmaz, amely Robert J. McAulay és Thomas F. Quatieri (MIT Lincoln laboratóriumok) 1980-as évek közepének fejlesztéseire vezet vissza, és szorosan kapcsolódik a többsávos gerjesztési kodekekéhez. A bemeneti jelből meghatározzák és kvantálják a vonalspektrum-párok (egyfajta LPC-együttható), (alap) hangmagasság, energia és hangjelzés leírására szolgáló paramétereket. Ebből PCM jelet szintetizálnak a vevő oldalon. A szinuszos modell a felhang frekvenciájának mintázatán alapuló törvényszerűségeken (periodicitáson) alapszik, és a sinusoidákat egy meghatározott alapfrekvencián harmonikusan rétegezi. A felső frekvenciák amplitúdóit a lineáris prediktív kódolással (LPC) modellezik.
sztori
A prominens Szabad Szoftver szószólója és rádióamatőr, Bruce Perens úgy látta, hogy 5 kBit / s-nál kevesebb szabad beszéd kodek szükséges. 2008- ban megkereste Jean-Marc Valint ( Speex , Opus ), aki bemutatta a fő fejlesztőnek, David Grant Rowe-nak, aki több alkalommal dolgozott együtt Valinnal a Speex-en. Rowe maga is rádióamatőr ( VK5DGR hívójel ), és tapasztalata van a kodekek és más jelfeldolgozó algoritmusok beszédjelekhez való létrehozásában és használatában. Az 1990-es években többek között doktorátust szerzett a beszédkódolásban, és részt vett az egyik első műholdas telefonrendszer ( Mobilesat ) felállításában .
Meg volt győződve a feladatról, és 2009. augusztus 21-én jelentette be döntését, hogy egy megfelelő kodekkel dolgozik. A doktori disszertáció kutatására és megállapításaira épített. 2010 augusztusában kiadta a 0.1 alfa verziót.
A 0,2-es verzió 2011 végén jelent meg, 1400 bit / s sebességű módot vezetett be, és jelentős javulást hozott a kvantálásban.
2012 januárjában a linux.conf.au oldalon Jean-Marc Valin segített javítani a vonalspektrum-párok számszerűsítését, amit Rowe kevésbé ismer. A 2011/2012-es télen és tavasszal elérhető bitsebesség-üzemmódok számos változtatása után május óta elérhetőek a 2400, 1400 és 1200 bit / s sebességű módok.
2018 júliusában közzétettek egy 450 bit / s sebességű módot, amelyet az Erlangen-Nürnbergi Egyetemen egy mester szakdolgozat részeként fejlesztettek ki. A vektor-kvantálás ügyes betanításával az adatsebesség tovább csökkenthető a 700C mód elve alapján.