Naar inhoud springen

G.711: verschil tussen versies

Uit Wikipedia, de vrije encyclopedie
Verwijderde inhoud Toegevoegde inhoud
Lexw (overleg | bijdragen)
cat en subcat
lineaire kwantisatie op de y-waardes
Regel 3: Regel 3:
De G.711 standaard comprimeert [[Pulscodemodulatie|PCM]] samples, die met een [[bemonsteringsfrequentie|sampling rate]] van 8000 samples per seconde zijn genomen, tot 8-bit waardes. Hierdoor resulteert de G.711 standaard in een gecodeerde [[bitrate]] van 64 kbit/s.
De G.711 standaard comprimeert [[Pulscodemodulatie|PCM]] samples, die met een [[bemonsteringsfrequentie|sampling rate]] van 8000 samples 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'' (ook wel geschreven als ''mu-law'') algorithme en het ''A-law'' algorithme. μ-law wordt voornamelijk in [[Noord-Amerika]] en [[Japan]] gebruikt, A-law in de rest van de wereld. Beiden gebruiken een [[logaritme|logaritmische]] schaal. A-law is iets recenter dan μ-law, en is specifiek ontwikkeld om simpel in een [[computerprogramma]] te kunnen implementeren.
Binnen de standaard bestaan twee [[algoritme]]n, het zogenoemde ''μ-law'' (ook wel geschreven als ''mu-law'') algorithme en het ''A-law'' algorithme. μ-law wordt voornamelijk in [[Noord-Amerika]] en [[Japan]] gebruikt, A-law in de rest van de wereld. Beiden gebruiken een [[logaritme|logaritmische]] schaal. De signaalwaarde x wordt via een logaritmisch functievoorschrift afgebeeld op een waarde y; op de y-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]] te kunnen implementeren.


De specificaties van de algorithmen zijn:
De specificaties van de algorithmen zijn:

Versie van 18 nov 2006 02:24

G.711 is een ITU standaard voor audiocompressie en -expansie. Het wordt voornamelijk gebruikt in telefonietoepassingen. De standaard werd in 1972 vrijgegeven.

De G.711 standaard comprimeert PCM samples, die met een sampling rate van 8000 samples 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 (ook wel geschreven als mu-law) algorithme en het A-law algorithme. μ-law wordt voornamelijk in Noord-Amerika en Japan gebruikt, A-law in de rest van de wereld. Beiden gebruiken een logaritmische schaal. De signaalwaarde x wordt via een logaritmisch functievoorschrift afgebeeld op een waarde y; op de y-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 te kunnen implementeren.

De specificaties van de algorithmen zijn:

  • μ-law:
    y = ln(1 + μx) / ln(1 + μ) waarin μ = 255
  • A-law:
    y = Ax / (1 + ln A) voor x <= 1/A en waarin A = 87.6
    y = (1 + ln Ax) / (1 + ln A) voor 1/A <= x <= 1

De A-law codering kan ook worden weergegeven in onderstaande tabel, waarin het ingangssignaal een 16-bit lineaire samplewaarde 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 gesamplede waarde, en d zijn don't care bits (aangezien deze in het gecodeerde signaal toch weggegooid worden).

Volgens deze regel wordt een 16-bit sample 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 vetaald naar een 1), voordat de sample wordt verstuurd. De bedoeling hiervan is om, ook wanneer het gesamplede 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.

  • (en) ITU-T G.711 pagina