Publication: Magyar Közlöny
Issue: MK-2007-70 (Year: 2007, Number: 70)
Era: 2004-2010
Section: Melléklet a 2007. évi XLVI. törvényhez
Paragraph Index: 15558

5. DEKÓDOLÁSI FOLYAMAT MEGHATÁROZÁSA Minden átviteli keretet az 5.1 szerint kell dekódolni. A vonalkódokat az 5.2 szerint kell kvantált hangminták előállítására felhasználni. 5.1 Átviteli keret dekódolása 5.1.1 PARCIÁLIS KORRELÁCIÓS EGYÜTTHATÓ DEKÓDOLÁSA 5.1.1.1 IMPULZUS HIBA ÉRZÉKELÉSE/JAVÍTÁSA A 26 védett bitet (A7-18. táblázat), a 6-bites Hamming kódszót és a 8 bithiba érzékelő bitet ki kell vonni az átviteli keretből és az A7-19. táblázat szerinti bithiba érzékelő számítási mátrixba kell rendezni. A bithiba érzékelő biteket ezt követően KIZÁRÓ VAGY-műveletnek kell alávetni a „21212121” bináris maszknál. A keletkező mátrix minden oszlopát meg kell vizsgálni tekintettel a páros paritás lehetséges hiányára. Azt követően a mátrix és a társított oszlop paritási hibatájékoztatást be kell nyújtani az A7-2. ábrán meghatározott hibaérzékelési és javítási folyamathoz. Ha ez a folyamat azt jelzi, hogy a vett együttható vonalkódok kijavított hibaszintje megfelelő, akkor az együtthatókat az 5.1.1.2 szerint dekódolni kell a vonalkódokbó. Ugyanakkor, ha a kijavított hibaszint nem megfelelő, akkor a vonalkódokat érvényteleníteni kell és a dekóder kimenetét az 5.1.3.2 és 5.1.3.2.1 szerinti logika alkalmazásával némítani kell. Megjegyzés. – A 8 bithiba érzékelő bit célja, hogy őrködjenek azon rendellenes eset felett, amikor egy túlzottan hosszú bithiba-sorozat „0” biteket helyezhet a számítási mátrix mind a 40 helyzetébe. Abban az esetben, a KIZÁRÓ VAGY-művelet a mátrix „b” bitjein a páratlan paritást négy oszlopba készteti, eképpen kényszerítve a hibaérzékelési és javító folyamatot az átviteli keret érvénytelenítésére. 5.1.1.2 EGYÜTTHATÓ DEKÓDOLÁSA Ha a 10 együtthatónak megfelelő vonalkódok kijavított hibaszintje megfelelőnek mutatkozik (5.1.1.1), akkor a 10 együtthatót az A7-2–A7-11. táblázatok szerint kell dekódolni és a keletkező értékeket a qparcor[] vektorba kell elhelyezni. Azt követően a qparcor[] vektort kell felhasználni a 4.6 pontban meghatározott művelet alkalmazásával a qtaps[] vektor előállítására. 5.1.2 HOSSZÚTÁVÚ PREDIKTOR PARAMÉTER DEKÓDOLÁSA A qgain és delay hosszútávú prediktor paramétereket az A7-12 éa A7-13. táblázatokban meghatározott adatválogató táblázat művelete révén kapott vonalkódokból kell dekódolni. 5.1.3 GERJESZTŐ PARAMÉTER DEKÓDOLÁSA 5.1.3.1 IMPULZUS-HELYZET DEKÓDOLÁS Minden gerjesztőkeret esetében, a posns[] vektort a három impulzushelyzet értékének tartalmából kell előállítani. A tartalmat az A7-16. táblázatban meghatározott adatválogató táblázat művelete révén kapott vonalkódokból kell dekódolni. 5.1.3.2 IMPULZUS-AMPLITÚDÓ DEKÓDOLÁSA Minden gerjesztőkeret esetében, a qamp[] vektort a gerjesztő keretben lévő három impulzus-amplitúdó értékének tartalmából kell előállítani. A tartalmat az A7-14–A7-15. táblázatokban meghatározott adatválogató táblázat művelete révén kapott vonalkódokból kell dekódolni. 2007/70/II. szám 5.1.3.2.1 Ha a dekóder kimenet némítása van jelezve (5.1.1), akkor a qamp[1] és qamp[2]-nek megfelelő vonalkódokat „0100”-ra kell kényszeríteni a dekódolást megelőzően. Hasonlóan, a qamp[3]-nak megfelelő vonalkódot „010”-ra kell kényszeríteni a dekódolást megelőzően. Megjegyzés. – A qamp[1], qamp[2], és qamp[3] tartalma képviseli külön-külön a gerjesztőkeret első három impulzusának amplitúdóját. 5.1.3.3 Az 1. sz. gerjesztőkerettel kezdődően és sorrendben folytatva minden fennmaradó gerjesztőkeret esetében, mind az öt gerjesztőkeretnek megfelelő qamp[] vektor tartalmát a következő műveletnek kell módosítani: Megjegyzés. – Ez a művelet kompenzálja a kódoló impulzus kvantálás (4.8.4.1) alatt végrehajtott amplitúdó normalizációs és nyereség-beállítási folyamatokat. {inicializáció} gfact_leak: = 0; maxadapt: = false; adjust[1]: = 1; adjust[2]: = 1,0/0,625; adjust[3]: = 1,0/0,375; {3-bites inicializáció} adapt[3,0]: = 0,875; adapt[3,1]: = 0,875; adapt[3,2]: = 1,0; adapt[3,3]: = 1,5; inv_quant[3,0]: = 0,2451; inv_quant[3,1]: = 0,7560; inv_quant[3,2]: = 1,344; inv_quant[3,3]: = 2,152; {4-bites inicializáció} adapt[4,0]: = 0,75; adapt[4,1]: = 0,875; adapt[4,2]: = 0,875; adapt[4,2]: = 0,875; adapt[4,3]: = 0,875; adapt[4,4]: = 1,0; adapt[4,5]: = 1,25; adapt[4,6]: = 1,5; adapt[4,7]: = 2,0; inv_quant[4,0]: = 0,1284; inv_quant[4,1]: = 0,3881; inv_quant[4,2]: = 0,6568; inv_quant[4,3]: = 0,9424; inv_quant[4,4]: = 1,256; inv_quant[4,5]: = 1,618; inv_quant[4,6]: = 2,069; inv_quant[4,7]: = 2,733; VAR i,qbits: integer sgn : -1..1; FOR pulse: = 1 TO 3 DO BEGIN IF pulse < 3 THEN BEGIN qbits: = 4; qlevels: = 7 END ELSE BEGIN qbits: = 3; qlevels: = 3 END; i: = 0; WHILE (abs(qamp[pulse]) > inv_quant[qbits,i] and (i < qleveles) DO i: = succ(i); qamp[pulse]: = qamp[pulse]*gfact_leak/adjust[pulse]; gfact_leak: = EXP(0,98*LN(gfact_leak)); IF i = qlevels THEN BEGIN IF maxadapt THEN gfact_leak: = gfact_leak*adapt[qbits, qlevels]; maxadapt: = true END ELSE maxadapt: = false; gfact_leak: = gfact_leak*adapt[qbits,i]; IF gfact_leak > 512,0 THEN gfact_leak: = 512,0 ELSE IF gfact_leak < 0,5 THEN gfact_leak: = 0,5 END; 5.1.3.3.1 Ha a dekóder kimenet némítása van jelezve (5.1.1), akkor a qamp[] tartalmát zéróra kell beállítani a fenti művelet befejezése után. 2007/70/II. szám 5.2 A dekódolt hang kimenet előállítása Minden dekódolt átviteli keret esetében, az idő-vezérelt hangmintákat a következő műveletek sorrendben történő elvégzésével kell előállítani:

Source: https://magyarkozlony.hu/hivatalos-lapok/7e70cec03f34e3c2efd8610b865b65591eafd701/dokumentumok/a55dc160549d57fa4db0035e37c6a6a98dd1a0b9/letoltes