/docs · General · Intro
Änderungen und Deprecation: was sich ändert, wann und wie du es erfährst
Das Versprechen hinter /v1, was als Änderung mit Vorankündigung gilt, wie wir sie ankündigen und was heute veraltet ist.
Aktualisiert 13.10.2026
Wenn du auf der API aufbaust, ist diese Seite die feste Adresse für eine Frage: Was kann sich unter mir ändern, und woher erfahre ich es? Die Adresse wird sich nicht ändern.
Das Versprechen
Heute hat die API eine Version, /v1. Darin gilt:
- Nichts wird ohne Vorankündigung entfernt, umbenannt oder in seinem Typ geändert. Ein Feld, das du heute liest, behält seinen Namen, seinen Typ und seine Bedeutung.
- Neue Felder kommen hinter einem Opt-in. Eine Antwort, die du schon parst, bekommt keinen Schlüssel, den du nicht angefordert hast:
roundundmeasureStatussind die ersten beiden Opt-ins, und ohne sie sind deine Antworten Byte für Byte das, was sie waren. Muss ein Feld jemals in der Standardantwort erscheinen, wird es zuerst im Changelog angekündigt und kommt als ein neuer Schlüssel, nie innerhalb eines bestehenden Objekts. - Fehlercodes behalten ihre Bedeutung. Eine neue Situation kann einen neuen Code bekommen, also verzweige auf
error.codeund halte einen Default für Codes bereit, die du nicht kennst. Verzweige nie auf den Wortlaut vonmessage.
Was als Änderung zählt
| Passiert jederzeit | Zuerst angekündigt, mit mindestens 90 Tagen |
|---|---|
| Eine neue Route | Ein Feld entfernen oder umbenennen |
| Eine neue Opt-in-Option | Typ, Einheit oder Bedeutung eines Felds ändern |
| Ein neuer Status, eine neue Marge oder eine neue Erklärung in der Dokumentation | Eine Route oder eine Option entfernen |
| Eine schnellere Analyse mit denselben Zahlen | Eine Regel, die bisher nicht durchgesetzt wurde, wird durchgesetzt |
| Ein neuer Fehlercode für eine neue Situation |
Ändern wir, wie eine Messgröße berechnet wird, sodass sich ihre Zahlen verschieben, sagt das Changelog, welche Messgrößen sich verschieben und um wie viel. Eine solche Änderung kommt zuerst hinter einem Opt-in und wird erst nach der Ankündigungsfrist zum Default.
Wie du es erfährst
Du musst diese Seite nicht noch einmal lesen, um eine Änderung zu bemerken.
- Die Antwort selbst. Jede erfolgreiche Analyseantwort, einzeln oder als Batch, trägt
X-AudioLab-Changelog: https://audiolab.tools/changelogundLink-Header zur Dokumentation, zum OpenAPI-Dokument und zu den Fehlerseiten. Eine Antwort, die einen veralteten Namen enthält, trägt außerdemDeprecation: true, einenSunset-Header mit dem Datum und einenLinkmitrel="deprecation"zum Changelog. - Das Changelog. /changelog hat zu jeder Änderung einen Eintrag mit dem Datum.
- Was ist neu. Die neuesten API-Änderungen stehen oben auf /api und /docs.
- Dein Konto. Etwa sechs Wochen nach jeder Ankündigung zeigt /account einen Hinweis darauf, was sich geändert hat oder ändern wird und wen es betrifft.
Eine Änderung, die eine funktionierende Integration brechen kann, wird im Changelog, unter „Was ist neu“ und in deinem Konto angekündigt, bevor sie passiert. Betrifft sie ein Feld, sagen es die Antworten, die dieses Feld tragen, in ihren Headern.
Was sich bald ändert
Das Inhaltstyp-Modell wechselt am 15. Januar 2027 auf v2
Der Inhaltstyp einer Datei (contentTypeGuess, mit contentConfidence und contentEvidence) stammt aus einem Modell. Das erste Modell (v1) liefert die API heute. Ein zweites Modell (v2) ist in unseren Tests bei Sprache und Musik deutlich besser (siehe den Status von signal.contentType auf /lenses), und die Website nutzt es bereits. Weil es die Zahlen verschiebt, folgt es der Regel oben: zuerst hinter einem Opt-in, erst nach der Ankündigung der Default.
- Jetzt: Füge einer Anfrage an
signallaboderanalyze/profile"contentModel": "v2"hinzu (contentModel="v2"als Keyword im Python-Client). Die Antwort hat dieselben Schlüssel und Typen; nur die Werte von Inhaltstyp, Konfidenz und Evidenz unterscheiden sich, und die Evidenzliste enthältmodel:v2. - 15. Januar 2027: v2 wird zum Default.
"contentModel": "v1"behält das erste Modell mindestens bis zum 15. April 2027. - Was sich verschiebt: welches Label eine Datei bekommt und mit welcher Konfidenz.
mixedändert seine Bedeutung: v2 sagtmixed, wenn ein Teil der Datei als Sprache und ein Teil als Musik gelesen wird, nicht bei Sprache über Musik (auch dasmixeddes ersten Modells erkannte das nicht, siehe den Status). Eine Datei unter 3 Sekunden bekommt kein v2-Urteil und behält die Antwort des ersten Modells.noisebedeutet gleichmäßiges Hintergrundrauschen; was weder Stimme noch Musik noch gleichmäßiges Rauschen ist, liest sich alsunknown. - Was sich nicht verschiebt: die Feldnamen und Typen, jede andere Messgröße und die anderen Routen.
Der Sprachdetektor wechselt am 15. Januar 2027 auf K2
Ein Detektor entscheidet, welche Frames einer Aufnahme Sprache sind. Er bestimmt speechRatio, speechSec, silenceSec, longSilences und die segments, und die Messgrößen, die die Pausen lesen, hängen von ihm ab. Der erste Detektor (v1) ist das, was die API heute liefert; er zählt nur die lauteren Teile einer Phrase. Ein zweiter Detektor (K2) lässt eine Phrase in ihre leisen Wortanfänge und -enden auslaufen, um höchstens 100 ms auf jeder Seite. Er war in unseren Tests bei neuen Sprechern besser (Frame-F1 von 0,88 auf 0,94 bei sauberem Audio und bei Rauschen mit 20 und 10 dB, siehe den Status von voice.speechRatio auf /lenses), und die Website nutzt ihn bereits. Er erreicht für diese Messgrößen nicht die ursprüngliche Latte, deshalb ändert keine von ihnen ihren Status. Weil er die Zahlen verschiebt, folgt er der Regel oben: zuerst hinter einem Opt-in, erst nach der Ankündigung der Default.
- Jetzt: Füge einer Anfrage an
voicelab/qa,voicelab/segmentsoderanalyze/profile"speechDetector": "k2"hinzu (speechDetector="k2"als Keyword im Python-Client). Die Antwort hat dieselben Schlüssel und Typen; nur die Werte unterscheiden sich. - 15. Januar 2027: K2 wird zum Default.
"speechDetector": "v1"behält den ersten Detektor mindestens bis zum 15. April 2027. - Was sich verschiebt (durchschnittliche Verschiebung pro Aufnahme an 680 Testmischungen vorgelesener Sprache, je etwa 50 Sekunden, in 17 Rauschbedingungen):
speechRatioliest sich 5 bis 14 Punkte höher,speechSec2,6 bis 6,9 Sekunden höher undsilenceSecentsprechend niedriger,longSilences0,15 bis 0,73 niedriger, und die Segmente sind weniger und länger, weil benachbarte manchmal verschmelzen. Alles, was die Sprach-Frames oder die Pausen liest, verschiebt sich mit, aber weniger (gemessen an 136 dieser Mischungen):averageSpeechRmsDbliest sich bei sauberem Audio 0,5 dB niedriger und bei Rauschen bis zu 1,4 dB niedriger,segmentalSnrDb,segmentalSnrSpreadDbundworstPhraseSnrDbverschieben sich um etwa 1 dB in die eine oder andere Richtung,gapLevelDbliest sich 0,4 bis 2,6 dB niedriger,speechToBackgroundDbbei sauberem Audio 1,3 dB höher und bei Rauschen bis zu 1,4 dB niedriger, die Szenen-Messgrößen verschieben sich um einige Hundertstel, und das LabelsceneBackgroundändert sich bei etwa 8 Prozent der Mischungen. - Das Signal-Rausch-Verhältnis wird unter 16 dB korrigiert (SNR-3, einmal getestet an 520 Mischungen von 40 neuen Sprechern in drei Umgebungen, die in keinem früheren Test vorkamen): Mit K2 liest sich
signalToNoiseDbbei sauberem Audio und bei 20 dB 0,5 dB niedriger und bei 10, 5 und 0 dB Rauschen etwa 4 bis 5 dB niedriger (durchschnittliche Verschiebung pro Aufnahme an 136 Testmischungen: 4,3, 5,0 und 4,9 dB), weil die alte Messung dort zu hoch lag. Gegenüber dem wahren Verhältnis sank der durchschnittliche Fehler bei 5 dB von +6,0 auf +1,9 dB und bei 10 dB von +3,5 auf -0,2 dB; unter 5 dB liest er sich weiterhin zu hoch (+5,6 dB bei 0 dB). Siehe den Status vonvoice.snrauf /lenses. - Aufnahmen mit digitaler Stille zwischen den Phrasen (synthetische Stimmen, etwa die 12 Beispielaufnahmen der Website) verschieben sich deutlich stärker, weil die leisen Ausläufer der Phrasen nicht mehr als Pause zählen:
gapLevelDbliest sich 1 bis 15 dB niedriger,speechToBackgroundDb6 bis 47 dB höher undworstPhraseSnrDbbis zu 31 dB höher. Eine Messgröße, die eine Pause braucht, istnull, wenn kein Pausen-Frame übrig bleibt, was bei 2 der 12 vorkam, undspeakingRateLabeländerte sich bei 1 der 12. - Was sich nicht verschiebt: die Feldnamen und Typen,
peakDb,noiseFloorDb,brightness,sibilanceRisk,activeKind,activeVoiceShare,edgeStartDb,edgeEndDbund die anderen Routen.
Was heute veraltet ist
Die niederländischen Feldnamen
Einige Antworten tragen neben dem englischen Namen noch einen niederländischen Feldnamen. Der englische Name trägt denselben Wert, und der niederländische behält seinen alten Wert und seine alte Form bis zum Sunset. Sie bleiben bis zum 31. Januar 2027 (der Sunset-Header sagt Sun, 31 Jan 2027 23:59:59 GMT). Ab dem 1. Februar 2027 stehen nur noch die englischen Namen in den Antworten.
| Veralteter Name | Stattdessen verwenden |
|---|---|
bron | source |
meetVerschil | measurementCaveat |
bewijs | sourceUrl |
gecontroleerd | verifiedOn |
aanvalSterkte | attackStrength |
maten | bars |
tempoSterkte | tempoStrength |
keuzeMarge | candidateMargin |
bpmRuw | bpmRaw |
octaven | octaveCandidates |
naadVerhouding | seamRatio |
randStilte | edgeSilence |
voorMs | startMs |
naMs | endMs |
alles | all |
Die Explain-Route akzeptiert bis zum selben Datum außerdem vraag neben question.
Von den drei Routen im Vergleich von Voice-Agent- und TTS-Anbietern ist nur mixlab/analyze betroffen: platformNormalisation[] trägt bron und meetVerschil neben source und measurementCaveat. Nichts in diesem Leitfaden liest sie. Die Antworten von voicelab/qa und signallab tragen keinen veralteten Namen.
Zurückgezogene Messgrößen bleiben in der Antwort
Eine Messgröße, deren Behauptung ihren Test nicht bestanden hat, wird als Zurückgezogen markiert, und ihr Feld bleibt in der Antwort, damit nichts bricht. Heute ist das roomEchoScore, das keine Nachhall-Messgröße ist. Sollte ein zurückgezogenes Feld jemals entfernt werden, folgt das der Ankündigung oben.
Mach deine Integration robust
- Lies Felder nach Namen, nie nach Position, und ignoriere Schlüssel, die du nicht kennst.
- Verzweige auf
error.code, mit einem Default. - Logge die Header
DeprecationundSunset, wenn dein Client sie sieht. Sie sind die früheste Warnung. - Fordere
measureStatusan und beobachte die Status der Messgrößen, die du nutzt. Eine Messgröße, die von Proxy auf Validiert wechselt oder umgekehrt, zeigt es dort zuerst. - Halte einen kleinen eigenen Test bereit: Ruf die drei Routen mit einer kurzen Datei auf und vergleiche die Feldnamen und Typen mit dem, was du heute liest.
Letzte Änderungen
- 20 October 2026. The chain profile now also returns the echo and slapback measure. Eintrag lesen.
- 13 October 2026. Three new profiles: room (reverberation from a clap), chain (lost packets) and pitch (where a voice sits and how clean it is). Eintrag lesen.
- 13 October 2026. A new speech detector: try it with "speechDetector": "k2" now, it becomes the default on 15 January 2027. Eintrag lesen.
- 13 October 2026. A new content-type model: try it with "contentModel": "v2" now, it becomes the default on 15 January 2027. Eintrag lesen.
- 12 October 2026. GET /v1/usage, a Python client, ready calls in the spec, a reference you can try, and two new guides. Eintrag lesen.
- 12 October 2026. Errors have codes and links, two opt-in options, and the Dutch field names stay until 31 January 2027. Eintrag lesen.
Fragen
Schreib an support@audiolab.tools und nenne, worauf du aufbaust und welche Route du aufrufst. Wenn dich eine Änderung treffen würde, sag es vor dem Datum in der Ankündigung.
More in General docs
- Practical
Voice-Agent- und TTS-Anbieter vergleichen und Gesprächsaudio prüfen
Drei API-Aufrufe, zehn Zahlen und wie weit du jeder trauen kannst: ein Leitfaden für QA-Teams, die Voice-Agent-, Text-to-Speech- oder Voice-Isolation-Anbieter vergleichen.
- Practical
Audioqualität in der CI prüfen: einen Build scheitern lassen, wenn eine Datei deine Regeln bricht
Ein kurzes Python-Skript und ein GitHub-Workflow, die jede Audiodatei mit der AudioLab-API messen, die Zahlen mit deinen Limits vergleichen und den Build mit einer Meldung scheitern lassen, die sagt, warum.
- Practical
Einen Datensatz mit Gesprächen prüfen: woher das Audio wirklich stammt
Miss einen Ordner mit Anruf-, Voice-Agent- oder Text-to-Speech-Aufnahmen auf verlustbehaftete Quellen, Upsampling, Schnittstellen, getarntes Mono, Clipping und Bittiefe, 20 Dateien auf einmal, und wisse, wann das Audio hochgeladen wird und wann nicht.
- Intro
Eine Antwort lesen: was jedes Feld bedeutet und wie weit du ihm trauen kannst
Eine echte Antwort der API, Feld für Feld: was sie sagt, ihr Status und ihre Marge und was du daraus schließen darfst und was nicht.
- Intro
Was AudioLab nicht tut
Die Grenzen der Analyse, offen benannt: Es transkribiert nicht, sagt keine Erkennungsfehler voraus, bewertet keine Natürlichkeit, identifiziert keine Sprecher und misst keine Latenz, und seine Hintergrund-Hinweise sind Vermutungen.