Audioverzögerungen

Die Übertragung von Tönen kann rein technische nie "sofort" passieren. Es gibt zumindest immer bei einem Wechsel des Mediums eine Verzögerung als auch auf dem Medium selbst. Sind solche Verzögerungen "gering", dann ist es nicht merklich. Störend wird es aber, wenn die Verzögerungen deutlich zu Tage treten (in der Summe meist ab 200-500ms).

Der Weg von der Sprache des Sprechers bis zum Ohr des Gegenüber ist durchaus mit Hürden gespickt. Hier mal ein Beispiel:

Schauen wir uns die einzelnen Stationen einfach mal an

Station Beschreibung ms

Mund

Wir starten bei dem Mund, aus dem die Sprache kommt

0

Luft

Über ein paar Millimeter "Luft" wird das Signal mit Schallgeschwindigkeit übertragen. Sie können das vielleicht aus Konzerten. Ab ca. 20m Abstand von der Band hören Sie das Signal von einem aufgestellten Lautsprecher "schneller".
Gehen wir mal von 3 cm Abstand und 300m/Sek Schallgeschwindigkeit aus, dann runden wir die 0,9ms großzügig auf

1

Mikrofon und A/D Wandlung

Das Mikrofon muss die Schallwellen aufnehmen und die analogen Signale werden durch einen A/D-Wandler in digitale Werte umgesetzt

0

Echo Cancellation/DSP

Die meisten Headsets haben digitale Signalprozessoren um Störgeräusche und Echos schon im Headset zu filtern. Aber auch das kostet Zeit, denn damit ein DSP eine Störung erkennen und heraus rechnen kann, muss er das Signal verzögern. (man kann schon von 20-40ms ausgehen
Es gibt aber auch Headsets, die ohne DSP auskommen, weil sie andere Techniken nutzen, z.B.: bessere Mikrofone die z.B. durch ihren technischen Aufbau Störgeräusche gut verhindern.
http://en.wikipedia.org/wiki/Echo_cancellation

30ms-75ms

USB/Funk

Die Daten müssen dann über den USB-Bus zum PC übertragen werden. Auch das ist ein "Shared Medium". Wer also über USB noch eine externe Festplatte o.ä. betreibt, kann hier mit ein paar Verzögerungen rechnen.

0ms

Codec

Nun liegt es am Codec aus dem digitalisierten aber noch nicht komprimierten Audiosignal einen für VoIP taugliche Bitdatenstrom zu errechnen. Bei G711 ist das relativ einfach, da hier die Daten 1:1 durchgesetzt werden. RTAudio o.ä. komprimiert aber die Daten und versucht "Silence" zu erkennen. Zudem gibt es auch eine Echounterdrückung und Lautstärkeanpassung.

0ms

IP-Stack Segmentierung

Sie wissen sicher schon, dass ein VoIP-Paket in der Regel 20ms an Audiodaten enthält. Die müssen in einzelnen IP-Pakete verpackt und auf das Kabel gesetzt werden. Das Paket ist also mindestens 20ms verzögert.

20ms

LAN/WAN Laufzeit

Switch, Router, Laufzeiten, WAN-Links, QoS

Zwischen Sender und Empfänger gibt es schon die ein oder anderen Laufzeiten zu beachten. Selbst im LAN mit Gigabit ist es z.B. durch aus ein Thema, ob der Switch ein "Cut Through" oder "Store&Forward" macht. im ersten Verfahren sendet er die ersten Pakete auf dem Zielport schon raus, während er auf der Quelle noch da Paket empfängt. Das reduziert Laufzeit aber war zumindest früher auch störend, wenn das Quellpaket durch eine Kollision abgebrochen wurde.

Bei Routern kommen natürlich noch Queues und Priorisierung dazu und die durchweg langsamere Laufzeit auf WAN-Strecken. Die 2MBit-Leitung wird gerne als "Bandbreite" bezeichnet aber genau genommen ist es die Schrittgeschwindigkeit der Bits hintereinander. Höhere Werte bedeuten daher "schneller" und nicht mehr nebeneinander.

?

IP-Stack Assembling und Jitterbuffer und Codec

Auf dem Zielsystem kommen die Pakete an und erst wenn der ganze Frame empfangen ist, kann die CRC Prüfung stattfinden und das Paket über PCI-Bus hoch zur Software geleitet werden.

Um die Reihenfolge zu gewährleisten werden auch hier die Pakete in einem Puffer abgelegt und nicht sofort wieder gegeben. So kann ein etwas später eintreffendes Paket noch "vorne reingeschoben" werden oder die Wiedergabe etwas "langsamer" erfolgen, um Lücken zu überbrücken. Puffer bedeutet aber Verzögerung. Wenn der Puffer 4 Pakete a 20ms enthält, dann sind wir auch schon bei 80 ms.

Was hinten raus kommt ist dann wieder das dekomprimierte, decodierte Audiosignal

20ms-80ms

USB/Funk + Soundkarte + Lautsprecher

Auch dieses Signal geht nun wieder entweder direkt über die Soundkarte oder über USB zur Soundkarte, welche dann die digitalen Signale mit einem D/A-Wandler wieder an den klassischen analogen Lautsprecher gibt.

0ms

Luft und Ohr

Ein paar Millimeter später erreichen die Schallwellen über die Luft das Innenohr und werden erfasst. Sie hören ihren Gegenüber

1ms

Leider lassen sich die einzelnen Verzögerungen nicht wirklich individuell müssen. Es gibt Systeme und Programme, die von den Headset-Herstellern genutzt werden, aber als Anwender können Sie maximal von "Ende zu Ende" müssen.

Eine "Ende zu Ende"-Messung im gleichen LAN bekommen sie aber auch hin, wenn Sie einfach ihren Tischnachbarn anrufen und sich einmal gegenüber stellen und ansprechen. Wie "verzögert" hören Sie die Sprache ihres Gegenüber einmal direkt und einmal im Headset ?. Wobei auch hier eventuell eine Dynamik erhört werden kann, wenn nämlich der Echo-Canceller das eigene Signal über beide Mikrofone bekommt und irrtümlich dann sein bestes gibt, dieses "außen herum Echo" zu kompensieren.

Weitere Links