G.711: verschil tussen versies
k tikfoutje |
k Parameter verouderd |
||
(37 tussenliggende versies door 23 gebruikers niet weergegeven) | |||
Regel 1: | Regel 1: | ||
'''G.711''' is een [[ITU]] |
'''G.711''' is een [[International Telecommunication Union|ITU]]-standaard voor [[datacompressie|audiocompressie]] en -expansie. Hij wordt voornamelijk gebruikt in [[telefonie]]toepassingen. De standaard werd in [[1972]] vrijgegeven. |
||
De G.711 |
De G.711-standaard comprimeert [[Pulscodemodulatie|PCM]] monsters die met een [[bemonsteringsfrequentie]] van 8000 monsters per seconde zijn genomen, tot 8-bit waardes. Hierdoor resulteert de G.711-standaard in een gecodeerde [[bitrate]] van 64 kbit/s. |
||
Binnen de standaard bestaan twee [[algoritme]]n, het zogenoemde ''μ-law'' ( |
Binnen de standaard bestaan twee [[algoritme]]n, het zogenoemde ''μ-law''-algoritme (uitgesproken als ''mu-law'' en soms ook geschreven als 'mu-law', of als 'u-law') en het ''A-law''-algoritme. Het μ-law-algoritme wordt voornamelijk in [[Noord-Amerika]] en [[Japan]] gebruikt, het A-law-algoritme in de rest van de wereld. Beide maken gebruik van een [[logaritmische schaal]]. De signaalwaarde <math>x</math> wordt via een logaritmisch functievoorschrift afgebeeld op een waarde <math>y</math>. Op de <math>y</math>-waardes vindt lineaire [[kwantisatie (signaalanalyse)|kwantisatie]] (ook wel uniforme kwantisatie genoemd) plaats met 8 bits per signaalmonster. A-law is iets recenter dan μ-law, en is specifiek ontwikkeld om simpel in een [[computerprogramma]] geïmplementeerd te kunnen worden. |
||
De specificaties van de |
De specificaties van de algoritmen zijn: |
||
* μ-law: <math>y = \sgn(x) \cdot \ln(1 + \mu |x|) / \ln(1 + \mu)</math> waarin <math>\mu=255</math> |
|||
* |
* A-law: <math> |
||
*: y = ln(1 + μx) / ln(1 + μ) waarin μ = 255 |
|||
⚫ | |||
* A-law: |
|||
\\ y = \sgn(x) \cdot (1 + \ln A|x|) / (1 + \ln A) \text{ voor } 1/A \le |x| \le 1 |
|||
\end{cases}</math> |
|||
⚫ | |||
:waarin A = 87,6. |
|||
De A-law |
De A-law-codering kan ook worden weergegeven in onderstaande tabel, waarin het ingangssignaal een 16-bit lineaire bemonsteringswaarde is, en het uitgangssignaal een 8-bit A-law gecomprimeerd signaal. |
||
:{| class="wikitable" |
|||
<table border="1" cellpadding="3" cellspacing="0"> |
|||
|- |
|||
<tr> |
|||
! Lineaire ingangswaarde !! Gecomprimeerde code |
|||
<td>'''Lineaire ingangswaarde'''</td> |
|||
|- |
|||
<td>'''Gecomprimeerde code'''</td> |
|||
| s0000000WXYZdddd || s000WXYZ |
|||
</tr> |
|||
|- |
|||
<tr> |
|||
| s0000001WXYZdddd || s001WXYZ |
|||
<td>s0000000WXYZdddd</td> |
|||
|- |
|||
<td>s000WXYZ</td> |
|||
| s000001WXYZddddd || s010WXYZ |
|||
</tr> |
|||
|- |
|||
<tr> |
|||
| s00001WXYZdddddd || s011WXYZ |
|||
<td>s0000001WXYZdddd</td> |
|||
|- |
|||
<td>s001WXYZ</td> |
|||
| s0001WXYZddddddd || s100WXYZ |
|||
</tr> |
|||
|- |
|||
<tr> |
|||
| s001WXYZdddddddd || s101WXYZ |
|||
<td>s000001WXYZddddd</td> |
|||
|- |
|||
<td>s010WXYZ</td> |
|||
| s01WXYZddddddddd || s110WXYZ |
|||
</tr> |
|||
|- |
|||
<tr> |
|||
| s1WXYZdddddddddd || s111WXYZ |
|||
<td>s00001WXYZdddddd</td> |
|||
|} |
|||
<td>s011WXYZ</td> |
|||
</tr> |
|||
<tr> |
|||
<td>s0001WXYZddddddd</td> |
|||
<td>s100WXYZ</td> |
|||
</tr> |
|||
<tr> |
|||
<td>s001WXYZdddddddd</td> |
|||
<td>s101WXYZ</td> |
|||
</tr> |
|||
<tr> |
|||
<td>s01WXYZddddddddd</td> |
|||
<td>s110WXYZ</td> |
|||
</tr> |
|||
<tr> |
|||
<td>s1WXYZdddddddddd</td> |
|||
<td>s111WXYZ</td> |
|||
</tr> |
|||
</table> |
|||
Hierin is ''s'' het tekenbit, WXYZ zijn 4 afzonderlijke bits van de |
Hierin is ''s'' het tekenbit, WXYZ zijn 4 afzonderlijke bits van de bemonsteringswaarde, en ''d'' zijn ''don't care'' bits (aangezien deze in het gecodeerde signaal toch weggegooid worden). |
||
Volgens deze regel wordt een 16-bit |
Volgens deze regel wordt een 16-bit-monster van 1000000010101111 dus als 10001010 gecodeerd (eerste regel van de tabel) en 0000000110101111 wordt als 00011010 gecodeerd (tweede regel van de tabel). |
||
De gecodeerde waarde kan ook gezien worden als een [[floating point]] getal met een 4-bit [[mantisse]] en een 3-bit [[exponent]]. |
De gecodeerde waarde kan ook gezien worden als een [[floating point]] getal met een 4-bit [[mantisse]] en een 3-bit [[exponent]]. |
||
⚫ | Naast de bovenstaande regel specificeert de standaard dat elk even bit wordt geïnverteerd (een 1 vertaald naar een 0 en een 0 vertaald naar een 1), voordat het monster wordt verstuurd. De bedoeling hiervan is om, ook wanneer het bemonsterde signaal uitsluitend stilte bevat (dus alleen nullen in de lineaire ingangswaarden en dientengevolge ook in de gecodeerde waarden), toch voldoende enen te versturen om zodoende de ontvanger in staat te stellen het gebruikte clock-signaal te reconstrueren. |
||
In ASCII-teksten wordt vaak ''A-law'' aangeduid met PCMA en ''μ-law'' met PCMU.<ref>[https://web.archive.org/web/20190904034900/http://what-when-how.com/voip/g-711-compression-voip/ G.711 compression (VoIP)], what-when-how.com</ref> |
|||
⚫ | Naast de bovenstaande regel specificeert de standaard dat elk even bit wordt geïnverteerd (een 1 vertaald naar een 0 en een 0 vertaald naar een 1), voordat |
||
== Referenties == |
|||
{{References}} |
|||
== Externe links == |
== Externe links == |
||
* {{en}} [http://www.itu.int/rec/recommendation.asp?type=folders&lang=e&parent=T-REC-G.711 ITU-T G.711 |
* {{en}} [http://www.itu.int/rec/recommendation.asp?type=folders&lang=e&parent=T-REC-G.711 ITU-T G.711] |
||
* {{en}} [https://web.archive.org/web/20111105022454/http://www.en.voipforo.com/codec/codecs-g711-alaw.php G.711 codec process] |
|||
{{Navigatie bestandsformaten gecomprimeerde media}} |
|||
[[Categorie:Compressieformaat]] |
[[Categorie:Compressieformaat]] |
||
[[Categorie:Algoritme]] |
[[Categorie:Algoritme]] |
||
[[ca:G.711]] |
|||
[[de:G.711]] |
|||
[[en:G.711]] |
|||
[[fr:G.711]] |
|||
[[pl:G.711]] |
|||
[[ru:G.711]] |
Huidige versie van 3 apr 2022 om 19:04
G.711 is een ITU-standaard voor audiocompressie en -expansie. Hij wordt voornamelijk gebruikt in telefonietoepassingen. De standaard werd in 1972 vrijgegeven.
De G.711-standaard comprimeert PCM monsters die met een bemonsteringsfrequentie van 8000 monsters per seconde zijn genomen, tot 8-bit waardes. Hierdoor resulteert de G.711-standaard in een gecodeerde bitrate van 64 kbit/s.
Binnen de standaard bestaan twee algoritmen, het zogenoemde μ-law-algoritme (uitgesproken als mu-law en soms ook geschreven als 'mu-law', of als 'u-law') en het A-law-algoritme. Het μ-law-algoritme wordt voornamelijk in Noord-Amerika en Japan gebruikt, het A-law-algoritme in de rest van de wereld. Beide maken gebruik van een logaritmische schaal. De signaalwaarde wordt via een logaritmisch functievoorschrift afgebeeld op een waarde . Op de -waardes vindt lineaire kwantisatie (ook wel uniforme kwantisatie genoemd) plaats met 8 bits per signaalmonster. A-law is iets recenter dan μ-law, en is specifiek ontwikkeld om simpel in een computerprogramma geïmplementeerd te kunnen worden.
De specificaties van de algoritmen zijn:
- μ-law: waarin
- A-law:
- waarin A = 87,6.
De A-law-codering kan ook worden weergegeven in onderstaande tabel, waarin het ingangssignaal een 16-bit lineaire bemonsteringswaarde is, en het uitgangssignaal een 8-bit A-law gecomprimeerd signaal.
Lineaire ingangswaarde Gecomprimeerde code s0000000WXYZdddd s000WXYZ s0000001WXYZdddd s001WXYZ s000001WXYZddddd s010WXYZ s00001WXYZdddddd s011WXYZ s0001WXYZddddddd s100WXYZ s001WXYZdddddddd s101WXYZ s01WXYZddddddddd s110WXYZ s1WXYZdddddddddd s111WXYZ
Hierin is s het tekenbit, WXYZ zijn 4 afzonderlijke bits van de bemonsteringswaarde, en d zijn don't care bits (aangezien deze in het gecodeerde signaal toch weggegooid worden).
Volgens deze regel wordt een 16-bit-monster van 1000000010101111 dus als 10001010 gecodeerd (eerste regel van de tabel) en 0000000110101111 wordt als 00011010 gecodeerd (tweede regel van de tabel).
De gecodeerde waarde kan ook gezien worden als een floating point getal met een 4-bit mantisse en een 3-bit exponent.
Naast de bovenstaande regel specificeert de standaard dat elk even bit wordt geïnverteerd (een 1 vertaald naar een 0 en een 0 vertaald naar een 1), voordat het monster wordt verstuurd. De bedoeling hiervan is om, ook wanneer het bemonsterde signaal uitsluitend stilte bevat (dus alleen nullen in de lineaire ingangswaarden en dientengevolge ook in de gecodeerde waarden), toch voldoende enen te versturen om zodoende de ontvanger in staat te stellen het gebruikte clock-signaal te reconstrueren.
In ASCII-teksten wordt vaak A-law aangeduid met PCMA en μ-law met PCMU.[1]
Referenties
[bewerken | brontekst bewerken]- ↑ G.711 compression (VoIP), what-when-how.com
Externe links
[bewerken | brontekst bewerken]- (en) ITU-T G.711
- (en) G.711 codec process