Zum Inhalt
Anmelden

/docs · VoiceLab · Practical

Verlorene Pakete in einer Aufnahme finden

Das Profil chain zählt die Lücken aus digitaler Stille, die ein verlorenes Paket mitten in der Sprache hinterlässt. Wie es entscheidet, die Testzahlen, was es nicht sieht und warum das Echo- und Slapback-Maß nicht angeboten wird.

Aktualisiert 13.10.2026


Wenn ein Anruf oder Stream Pakete verliert und der Player das nicht verbirgt, hat das Audio ein Loch: einige zehn Millisekunden digitale Stille mitten in einem Wort. Lautheit, Rauschen und Spektrum sind alle in Ordnung, und deshalb sieht nichts anderes in der Engine es. Das Profil chain von POST /v1/analyze/profile zählt diese Löcher. Es ist ein kostenpflichtiges Preset, wie jedes Profil außer basic.

curl https://audiolab.tools/v1/analyze/profile \
  -H "Authorization: Bearer $AUDIOLAB_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/call.wav", "profile": "chain"}'

Was zurückkommt

LensWas es ist
chain.dropoutCountDie Zahl der abrupten Lücken aus digitaler Stille, 8 bis 500 ms, im Schall.
chain.dropoutSecIhre Gesamtlänge in Sekunden.
chain.dropoutMaxMsDie längste in ms, null, wenn es keine gibt. Ein verlorenes Paket sind meist 20 ms; 60 ms oder mehr sind mehrere hintereinander.

Alle drei sind validiert. Eine Aufnahme unter 2 s bekommt keinen Wert.

Wie es entscheidet

Eine Lücke zählt, wenn sie digitale Stille ist (jedes Sample unter einem halben 16-Bit-Schritt, was ein Raum oder ein Mikrofon nie liefert), 8 bis 500 ms dauert und den Schall durchschneidet: In den 5 ms davor und danach liegt der Pegel innerhalb von 20 dB des aktiven Pegels der Aufnahme. Eine natürliche Pause oder das Gate eines Rauschunterdrückers lässt den Schall erst ausklingen und zählt nicht. Eine Lücke ganz am Anfang oder Ende der Datei zählt ebenfalls nicht.

Wie weit man es glauben kann

Geprüft am 13. Oktober 2026 an Daten, auf denen das Maß nicht entwickelt wurde, mit vorab festgehaltenen Kriterien (PREREG-DROPOUT.md im Engine-Repository):

  • An 160 konstruierten Aufnahmen vorgelesener Sprache mit 11.337 hineingeschnittenen Lücken, von denen 8.411 den Schall durchschnitten: Es fand davon 99,8 Prozent, und 99,9 Prozent der 8.406 gemeldeten Lücken waren echt (eine Lücke zählt, wenn Beginn und Länge innerhalb von 2 ms dessen liegen, was geschnitten wurde). Die Zahl lag bei allen 160 Aufnahmen innerhalb von 5 Prozent oder einer Lücke.
  • Kein Fehlalarm in 1.615 Aufnahmen ohne Lücken: 40 saubere, 40 mit natürlichen Pausen aus digitaler Stille und 1.535 Aufnahmen synthetischer Stimmen in 32 Situationen (Rauschen, Nachhall, Telefonband, Clipping, schnelle Sprache).
  • Bei simuliertem Paketverlust (Pakete von 20 ms auf null gesetzt, 47 Aufnahmen) fand es alle 1.539 Lücken, die den Schall durchschnitten, und jede gemeldete Lücke war echt.

Was es nicht sieht

  • Es ist eine Untergrenze. Von den 2.554 im Paketverlusttest gemachten Lücken durchschnitten 1.539 den Schall. Der Rest fiel in Pausen oder leise Stellen, wo ein Verlust nicht von einer Pause zu unterscheiden ist, und zählt nicht.
  • Ein Verlust, den der Player verbarg (wiederholt, interpoliert oder mit Komfortrauschen gefüllt), hinterlässt keine Lücke.
  • Rauschen, das nach dem Verlust hinzugefügt wurde, füllt die Lücke.
  • Die Stille, die ein Codec in Pausen setzt, ist kein Verlust: 48 Aufnahmen durch einen Telefoncodec mit niedriger Bitrate enthielten 1.936 Läufe exakter Nullen, keiner mit Schall auf beiden Seiten, und keiner wurde gezählt.
  • Es wurde nicht an echten Anrufen mit bekanntem Verlust geprüft.

Das Echo- und Slapback-Maß wird nicht angeboten

Das Register hat auch chain.slapbackDelayMs, chain.slapbackLevelDb und chain.slapbackScore: die Verzögerung und den Pegel einer verzögerten Kopie des Schalls. Sie werden nicht über die API oder den MCP-Server angeboten, und die Antwort lässt sie weg.

Der Test sagt, warum. Das Maß fand jede konstruierte Kopie, auf der richtigen Verzögerung und dem richtigen Pegel (100 Prozent, die Verzögerung innerhalb von 0,03 ms). Aber es meldete auch eine Kopie in 27 Prozent der Aufnahmen ohne Kopie, fast alle synthetische Stimmen (53 Prozent bei einer Stimme, bis zu 100 Prozent bei dreien mit Akzent), gegenüber 0 von 40 Aufnahmen echter Sprache. Ein Maß, das meldet, was nicht da ist, ist schlechter als kein Maß, also bleibt es draußen, bis ein zweiter Test an neuen Daten die Kriterien erfüllt. Nach dem ersten wurde nichts angepasst.

Weiterlesen

More in VoiceLab docs