Difference between revisions of "Aufgaben:Exercise 3.6: Adaptive Multi Rate Codec"
m (Textersetzung - „*Sollte die Eingabe des Zahlenwertes „0” erforderlich sein, so geben Sie bitte „0.” ein.“ durch „ “) |
|||
Line 4: | Line 4: | ||
[[File:P_ID1233__Bei_A_3_6.png|right|frame|Spuren des AMR–Codecs]] | [[File:P_ID1233__Bei_A_3_6.png|right|frame|Spuren des AMR–Codecs]] | ||
− | Ende der 1990er Jahre wurde mit dem AMR–Codec ein sehr flexibler, adaptiver Sprachcodec entwickelt und standardisiert. Dieser stellt insgesamt acht verschiedene Modi mit Datenraten zwischen $4.75 \ \rm kbit/s$ und $12.2 \ \rm kbit/s$ zur Verfügung. | + | Ende der 1990er Jahre wurde mit dem AMR–Codec ein sehr flexibler, adaptiver Sprachcodec entwickelt und standardisiert. Dieser stellt insgesamt acht verschiedene Modi mit Datenraten zwischen $4.75 \ \rm kbit/s$ und $12.2 \ \rm kbit/s$ zur Verfügung. |
− | Der AMR-Codec beinhaltet wie der in [[Aufgaben:Aufgabe_3.5:_GSM–Vollraten–Sprachcodec|Aufgabe 3.5]] behandelte Vollraten–Codec (FRC) sowohl eine Kurzzeitprädiktion (LPC) als auch eine Langzeitprädiktion (LTP). Allerdings sind diese beiden Komponenten anders realisiert als beim FRC. | + | Der AMR-Codec beinhaltet wie der in [[Aufgaben:Aufgabe_3.5:_GSM–Vollraten–Sprachcodec|Aufgabe 3.5]] behandelte Vollraten–Codec (FRC) sowohl eine Kurzzeitprädiktion (LPC) als auch eine Langzeitprädiktion (LTP). Allerdings sind diese beiden Komponenten anders realisiert als beim FRC. |
Der wesentliche Unterschied von AMR gegenüber FRC stellt die Codierung des Restsignals (nach LPC und LTP) dar: | Der wesentliche Unterschied von AMR gegenüber FRC stellt die Codierung des Restsignals (nach LPC und LTP) dar: | ||
*Anstelle von „Regular Pulse Excitation” (RPE) wird beim AMR–Code das Verfahren „Algebraic Code Excitation Linear Prediction” (ACELP) angewendet. | *Anstelle von „Regular Pulse Excitation” (RPE) wird beim AMR–Code das Verfahren „Algebraic Code Excitation Linear Prediction” (ACELP) angewendet. | ||
− | *Aus dem festen Codebuch (FCB) wird für jeden Unterrahmen von $5 \ \rm ms$ Dauer derjenige FCB–Puls und diejenige FCB–Verstärkung ausgewählt, die am besten zum Restsignal passen | + | *Aus dem festen Codebuch (FCB) wird für jeden Unterrahmen von $5 \ \rm ms$ Dauer derjenige FCB–Puls und diejenige FCB–Verstärkung ausgewählt, die am besten zum Restsignal passen (für die der mittlere quadratische Fehler des Differenzsignals minimal wird). |
− | Jeder Eintrag im festen Codebuch kennzeichnet einen Puls, bei dem genau $10$ der $40$ Positionen mit $\pm1$ belegt sind. Hierzu ist anzumerken: | + | Jeder Eintrag im festen Codebuch kennzeichnet einen Puls, bei dem genau $10$ der $40$ Positionen mit $\pm1$ belegt sind. Hierzu ist anzumerken: |
− | *Der Puls ist in fünf Spuren mit jeweils acht möglichen Positionen aufgeteilt, wobei die Spur $1$ die Positionen $1, 6, 11$, ... , $36$ des Unterrahmens und Spur $5$ die Positionen $5, 10, 15$, ... , $40$ beschreibt. | + | *Der Puls ist in fünf Spuren mit jeweils acht möglichen Positionen aufgeteilt, wobei die Spur $1$ die Positionen $1,\ 6,\ 11$, ... , $36$ des Unterrahmens und Spur $5$ die Positionen $5,\ 10,\ 15$, ... , $40$ beschreibt. |
− | *In jeder Spur sind genau zwei Werte $\pm1$, während alle anderen sechs Werte $0$ sind. Die beiden $±1$–Positionen werden mit je drei Bit – also mit $000$, ... , $111$ – codiert. | + | *In jeder Spur sind genau zwei Werte $\pm1$, während alle anderen sechs Werte $0$ sind. Die beiden $±1$–Positionen werden mit je drei Bit – also mit $000$, ... , $111$ – codiert. |
− | *Für das Vorzeichen des erstgenannten Pulses wird ein weiteres Bit verwendet, wobei eine $1$ ein positives Vorzeichen und eine $0$ ein negatives Vorzeichen kennzeichnet. | + | *Für das Vorzeichen des erstgenannten Pulses wird ein weiteres Bit verwendet, wobei eine „$1$” ein positives Vorzeichen und eine „$0$” ein negatives Vorzeichen kennzeichnet. |
*Ist die Pulsposition des zweiten Impulses größer als die des ersten Impulses, so hat der zweite Impuls das gleiche Vorzeichen wie der erste, ansonsten das umgekehrte. | *Ist die Pulsposition des zweiten Impulses größer als die des ersten Impulses, so hat der zweite Impuls das gleiche Vorzeichen wie der erste, ansonsten das umgekehrte. | ||
− | *Zum Empfänger werden somit pro Spur sieben Bit übertragen, außerdem noch fünf Bit für die so genannte ''FCB–Verstärkung''. | + | *Zum Empfänger werden somit pro Spur sieben Bit übertragen, außerdem noch fünf Bit für die so genannte ''FCB–Verstärkung''. |
− | In der Grafik sind die $35$ Bit zur Beschreibung eines FCB–Pulses beispielhaft angegeben. | + | In der Grafik sind die $35$ Bit zur Beschreibung eines FCB–Pulses beispielhaft angegeben. |
'''Spur 1''' beinhaltet | '''Spur 1''' beinhaltet | ||
− | *einen positiven Impuls ( | + | *einen positiven Impuls $({\rm VZ} = 1)$ bei $1$ (erste mögliche Position für Spur 1) $\hspace{0.2cm}\text{plus}\hspace{0.2cm}0$ (Bitangabe für „ 000”) $= 1$, |
*einen weiteren positiven Impuls (da $110 > 000$) bei der Position $1 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5$ (Pulsabstand in jeder Spur) $\hspace{0.2cm}\text{mal}\hspace{0.2cm}6$ (Bitangabe für „ 110”) = $31\hspace{0.05cm}.$ | *einen weiteren positiven Impuls (da $110 > 000$) bei der Position $1 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5$ (Pulsabstand in jeder Spur) $\hspace{0.2cm}\text{mal}\hspace{0.2cm}6$ (Bitangabe für „ 110”) = $31\hspace{0.05cm}.$ | ||
Line 31: | Line 31: | ||
*einen negativen Impuls (${\rm VZ} = 0$) bei $2$ (erste mögliche Position für Spur 2) $\hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}4$ (Bitangabe für „ 100”) = $22\hspace{0.05cm},$ | *einen negativen Impuls (${\rm VZ} = 0$) bei $2$ (erste mögliche Position für Spur 2) $\hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}4$ (Bitangabe für „ 100”) = $22\hspace{0.05cm},$ | ||
*einen positiven Impuls (Vorzeichenumkehr wegen $011 > 100$) bei der Position $2 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}3$ (Bitangabe für „ 011”) = $17\hspace{0.05cm}.$ | *einen positiven Impuls (Vorzeichenumkehr wegen $011 > 100$) bei der Position $2 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}3$ (Bitangabe für „ 011”) = $17\hspace{0.05cm}.$ | ||
+ | |||
Line 39: | Line 40: | ||
''Hinweise:'' | ''Hinweise:'' | ||
− | *Diese Aufgabe gehört zum Kapitel [[Beispiele_von_Nachrichtensystemen/Sprachcodierung|Sprachcodierung]]. | + | *Diese Aufgabe gehört zum Kapitel [[Beispiele_von_Nachrichtensystemen/Sprachcodierung|Sprachcodierung]]. |
− | *Bei der Eingabe der Pulspositionen bezeichnet $N_{1}$ das erste Bit–Tripel und $N_{2}$ das zweite. | + | *Bei der Eingabe der Pulspositionen bezeichnet $N_{1}$ das erste Bit–Tripel und $N_{2}$ das zweite. |
− | *Man müsste zum Beispiel für Spur $2$ die Werte $N_{1}=-22$ und $N_{2}=+17$ eintragen. | + | *Man müsste zum Beispiel für Spur $2$ die Werte $N_{1}=-22$ und $N_{2}=+17$ eintragen. |
Line 50: | Line 51: | ||
<quiz display=simple> | <quiz display=simple> | ||
− | {Wie viele Bit beschreiben einen Sprachrahmen (der Dauer $20 \ \rm ms$ | + | {Wie viele Bit beschreiben einen Sprachrahmen $($der Dauer $20 \ \rm ms)$ im $12.2 \ \rm kbit/s$–Modus? |
|type="{}"} | |type="{}"} | ||
$N_{12.2} \ = \ $ { 244 3% } $ \ \rm Bit$ | $N_{12.2} \ = \ $ { 244 3% } $ \ \rm Bit$ | ||
Line 62: | Line 63: | ||
$N_{\rm LPC/LTP} \ = \ $ { 84 3% } $ \ \rm Bit$ | $N_{\rm LPC/LTP} \ = \ $ { 84 3% } $ \ \rm Bit$ | ||
− | {Welche Impulspositionen des Unterrahmens und Vorzeichen beschreibt die Spur $3$? Beachten Sie die Hinweise zur Eingabe auf der Angabenseite. | + | {Welche Impulspositionen des Unterrahmens und Vorzeichen beschreibt die Spur $3$? <br>Beachten Sie die Hinweise zur Eingabe auf der Angabenseite. |
|type="{}"} | |type="{}"} | ||
$N_{1} \ = \ $ { -8.24--7.76 } | $N_{1} \ = \ $ { -8.24--7.76 } | ||
$N_{2} \ = \ $ { -18.54--17.46 } | $N_{2} \ = \ $ { -18.54--17.46 } | ||
− | {Welche Impulspositionen inklusive Vorzeichen beschreiben die Spur $4$? | + | {Welche Impulspositionen inklusive Vorzeichen beschreiben die Spur $4$? |
|type="{}"} | |type="{}"} | ||
$N_{1} \ = \ $ { 39 3% } | $N_{1} \ = \ $ { 39 3% } | ||
$N_{2} \ = \ $ { -14.42--13.58 } | $N_{2} \ = \ $ { -14.42--13.58 } | ||
− | {Welche Impulspositionen inklusive Vorzeichen beschreiben die Spur $5$? | + | {Welche Impulspositionen inklusive Vorzeichen beschreiben die Spur $5$? |
|type="{}"} | |type="{}"} | ||
$N_{1} \ = \ $ { -30.9--29.1 } | $N_{1} \ = \ $ { -30.9--29.1 } |
Revision as of 15:43, 10 August 2019
Ende der 1990er Jahre wurde mit dem AMR–Codec ein sehr flexibler, adaptiver Sprachcodec entwickelt und standardisiert. Dieser stellt insgesamt acht verschiedene Modi mit Datenraten zwischen $4.75 \ \rm kbit/s$ und $12.2 \ \rm kbit/s$ zur Verfügung.
Der AMR-Codec beinhaltet wie der in Aufgabe 3.5 behandelte Vollraten–Codec (FRC) sowohl eine Kurzzeitprädiktion (LPC) als auch eine Langzeitprädiktion (LTP). Allerdings sind diese beiden Komponenten anders realisiert als beim FRC.
Der wesentliche Unterschied von AMR gegenüber FRC stellt die Codierung des Restsignals (nach LPC und LTP) dar:
- Anstelle von „Regular Pulse Excitation” (RPE) wird beim AMR–Code das Verfahren „Algebraic Code Excitation Linear Prediction” (ACELP) angewendet.
- Aus dem festen Codebuch (FCB) wird für jeden Unterrahmen von $5 \ \rm ms$ Dauer derjenige FCB–Puls und diejenige FCB–Verstärkung ausgewählt, die am besten zum Restsignal passen (für die der mittlere quadratische Fehler des Differenzsignals minimal wird).
Jeder Eintrag im festen Codebuch kennzeichnet einen Puls, bei dem genau $10$ der $40$ Positionen mit $\pm1$ belegt sind. Hierzu ist anzumerken:
- Der Puls ist in fünf Spuren mit jeweils acht möglichen Positionen aufgeteilt, wobei die Spur $1$ die Positionen $1,\ 6,\ 11$, ... , $36$ des Unterrahmens und Spur $5$ die Positionen $5,\ 10,\ 15$, ... , $40$ beschreibt.
- In jeder Spur sind genau zwei Werte $\pm1$, während alle anderen sechs Werte $0$ sind. Die beiden $±1$–Positionen werden mit je drei Bit – also mit $000$, ... , $111$ – codiert.
- Für das Vorzeichen des erstgenannten Pulses wird ein weiteres Bit verwendet, wobei eine „$1$” ein positives Vorzeichen und eine „$0$” ein negatives Vorzeichen kennzeichnet.
- Ist die Pulsposition des zweiten Impulses größer als die des ersten Impulses, so hat der zweite Impuls das gleiche Vorzeichen wie der erste, ansonsten das umgekehrte.
- Zum Empfänger werden somit pro Spur sieben Bit übertragen, außerdem noch fünf Bit für die so genannte FCB–Verstärkung.
In der Grafik sind die $35$ Bit zur Beschreibung eines FCB–Pulses beispielhaft angegeben.
Spur 1 beinhaltet
- einen positiven Impuls $({\rm VZ} = 1)$ bei $1$ (erste mögliche Position für Spur 1) $\hspace{0.2cm}\text{plus}\hspace{0.2cm}0$ (Bitangabe für „ 000”) $= 1$,
- einen weiteren positiven Impuls (da $110 > 000$) bei der Position $1 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5$ (Pulsabstand in jeder Spur) $\hspace{0.2cm}\text{mal}\hspace{0.2cm}6$ (Bitangabe für „ 110”) = $31\hspace{0.05cm}.$
Spur 2 beinhaltet
- einen negativen Impuls (${\rm VZ} = 0$) bei $2$ (erste mögliche Position für Spur 2) $\hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}4$ (Bitangabe für „ 100”) = $22\hspace{0.05cm},$
- einen positiven Impuls (Vorzeichenumkehr wegen $011 > 100$) bei der Position $2 \hspace{0.2cm}\text{plus}\hspace{0.2cm}5\hspace{0.2cm}\text{mal}\hspace{0.2cm}3$ (Bitangabe für „ 011”) = $17\hspace{0.05cm}.$
Hinweise:
- Diese Aufgabe gehört zum Kapitel Sprachcodierung.
- Bei der Eingabe der Pulspositionen bezeichnet $N_{1}$ das erste Bit–Tripel und $N_{2}$ das zweite.
- Man müsste zum Beispiel für Spur $2$ die Werte $N_{1}=-22$ und $N_{2}=+17$ eintragen.
Fragebogen
Musterlösung
(1) Mit der Datenrate $12.2 \ \rm kbit/s$ ergeben sich innerhalb von $20 \ \rm ms$ genau $\underline{244 \ \rm Bit}$, während zum Beispiel im $4.75 \ \rm kbit/s$–Modus nur $95 \ \rm Bit$ übertragen werden.
(2) In jedem Unterrahmen benötigt der FCB–Puls $35 \ \rm Bit$ (fünf Spuren zu je sieben Bit) und die FCB–Verstärkung fünf Bit. Bei vier Unterrahmen kommt man so auf $N_{\rm FCB} \underline{= 160 \ \rm Bit}$.
(3) Hierfür verbleiben die Differenz aus (1) und (2), also $N_{\rm LPC/LTP}\underline{ = 84 \ \rm Bit}$.
(4) Das Vorzeichenbit $0$ deutet auf einen negativen ersten Impuls hin. Wegen $001 < 011$ hat der zweite Impuls das gleiche Vorzeichen. Die beiden Beträge ergeben sich zu
- $$|N_1| \ = \ 3 \hspace{0.1cm}{\rm(da \hspace{0.1cm} Spur \hspace{0.1cm}3)} + 5\cdot 1 \hspace{0.1cm} {\rm(Bitangabe \hspace{0.1cm} 001)} = 8\hspace{0.05cm}, $$
- $$ |N_2| \ = \ 3 \hspace{0.1cm}{\rm(da \hspace{0.1cm} Spur \hspace{0.1cm}3)} + 5\cdot 3 \hspace{0.1cm} {\rm(Bitangabe \hspace{0.1cm} 011)} = 18\hspace{0.05cm}.$$
Einzugeben sind deshalb für die dritte Spur $N_{1} \underline{ = -8}$ und $N_{2} \underline{ = -18}.$
(5) In analoger Weise erhält man für die Spur $4$ die Werte $N_{1} \underline{ = +39}$ und $N_{2} \underline{ = -14}$.
(6) Die fünfte Spur liefert $N_{1} \underline{ =-30}$ und $N_{1} \underline{ = +5}$