Audiodauer nach dem Entfernen von Stille berechnen
Schätzen Sie die endgültige Laufzeit einer Aufnahme, bevor Sie sie bearbeiten. Geben Sie die Gesamtdauer des Clips sowie Anfang und Ende jedes erkannten Stilleabschnitts an.
Im Browser ausführen – kostenlos
Der Rechner prüft die Zeitleiste, vereinigt überlappende oder direkt aneinandergrenzende Intervalle und zieht jede tatsächlich stille Zeit nur einmal ab. Sie erhalten die ursprüngliche Dauer, die entfernbare Stille, die geschätzte Restdauer und hilfreiche Segmentzahlen. Damit planen Sie Podcasts, Sprachaufnahmen, Vorlesungen und Medienverarbeitung in Stapeln, ohne die Audiodatei hochzuladen oder zu decodieren.
Bereiten Sie eine verlässliche Zeitleiste vor
Beginnen Sie mit der Gesamtdauer des Clips in Sekunden. Tragen Sie anschließend für jedes erkannte Stilleintervall Start und Ende ein, jeweils vom Anfang derselben Datei aus gemessen. Dezimalwerte sind erlaubt, sodass Sie etwa ein Detektionsergebnis von 12.375 bis 14.8 Sekunden direkt übernehmen können. Verwenden Sie durchgehend dieselbe Zeitskala und vermischen Sie keine Samples, Millisekunden, Timecodes oder Werte aus bereits geschnittenen Fassungen. Ein Intervall darf bei null beginnen oder genau an der Gesamtdauer enden. Ein Segment ohne Länge ist gültig, entfernt jedoch keine Zeit. Negative Grenzen und rückwärts laufende Intervalle werden abgelehnt. Endet ein Segment nach dem Clip, erhalten Sie eine Fehlermeldung statt einer irreführenden Schätzung. So fällt ein häufiger Stapelfehler auf, bei dem Erkennungsdaten einer Datei mit der Dauer einer anderen kombiniert wurden. Der Rechner benötigt ausschließlich Ihre Zeitangaben, nicht die Audiodatei.
Verstehen Sie den überschneidungssicheren Abzug
Stilleerkennungen können sich überlappen, ineinander liegen oder dieselbe Grenze teilen. Würden alle Segmentlängen einfach addiert, würde gemeinsame Zeit mehrfach gezählt und die prognostizierte Ausgabe zu kurz. Der Rechner sortiert deshalb die Intervalle und vereinigt ihre abgedeckten Bereiche vor dem Abzug. Stille von 10 bis 15 Sekunden und von 14 bis 18 Sekunden umfasst beispielsweise acht eindeutige Sekunden, nicht neun. Ein vollständig in einem größeren Bereich liegendes Intervall fügt keine weitere Schnittzeit hinzu. Unmittelbar benachbarte Bereiche wie 20–22 und 22–24 werden ebenfalls vereinigt, weil dazwischen kein Audio erhalten bleibt. Die gekürzte Dauer entspricht somit der Vereinigungsmenge aller nicht leeren Stillebereiche. Die Restdauer ist die ursprüngliche Gesamtdauer minus dieser Menge. Die Eingabeanzahl nennt Ihre Datensätze; die vereinigte Anzahl nennt die verbleibenden getrennten Bereiche. Beide Werte erklären Abweichungen von einer einfachen Summe.
Nutzen Sie die Schätzung im Schnittablauf
Betrachten Sie das Ergebnis als Schätzung für eine klare Regel: Jedes angegebene Stilleintervall wird vollständig entfernt, ohne einen Rand um Sprache zu bewahren. Wenn Ihr Schnittprogramm Puffer stehen lässt, Überblendungen anwendet, eine Mindestdauer verlangt oder Grenzen zum Erhalt von Atemgeräuschen verschiebt, passen Sie die Intervalle vorher an oder rechnen Sie mit einem abweichenden Render-Ergebnis. Die Berechnung ist besonders vor aufwendiger Medienverarbeitung nützlich. Sie können eine Podcastlänge planen, den verbleibenden Transkriptionsumfang abschätzen oder ein Veröffentlichungslimit prüfen. Speichern Sie ursprüngliche Dauer und Detektoreinstellungen zusammen mit der Anfrage, damit die Schätzung nachvollziehbar bleibt. Der Algorithmus ist deterministisch: Gleiche Zahlen liefern stets dasselbe Ergebnis. Er führt weder Netzwerkzugriffe noch Decodierung, Resampling oder akustische Analyse aus. Eine API-Anfrage kostet $0.002; alle Ergebnisse sind Sekundenwerte, die Ihre Anwendung als Timecode anzeigen kann.
Anwendungsfälle
Podcast-Schnitt planen
Schätzen Sie die Episodenlänge ohne erkannte Pausen, bevor das vollständige Rendering beginnt.
Transkriptionsumfang prognostizieren
Berechnen Sie, wie viel zeitlich erfasstes Audio nach Ausschluss der Stille in einem Sprachstapel bleibt.
Zeitvorgabe kontrollieren
Prüfen Sie, ob eine bereinigte Vorlesung, ein Interview oder eine Aufnahme das Veröffentlichungslimit einhält.
Häufige Fragen
Was kostet eine Anfrage?
Jede API-Anfrage kostet $0.002.
Welche Einheit soll ich verwenden?
Verwenden Sie Sekunden für Gesamtdauer und Segmentgrenzen; Dezimalsekunden sind zulässig.
Was geschieht bei überlappender Stille?
Überlappende, verschachtelte und angrenzende Intervalle werden vereinigt, damit dieselbe Audiozeit nie doppelt abgezogen wird.
Erkennt diese Funktion Stille in einer Datei?
Nein. Sie rechnet mit bereits erkannten Segmenten und lädt, decodiert oder analysiert kein Audio.
Was geschieht, wenn ein Segment den Clip überschreitet?
Die Anfrage liefert einen Eingabefehler, sobald ein Endwert größer als total_duration ist.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/audio/audio-silence-trim-estimate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_duration":120,"silence_segments":[{"start":0,"end":3.5},{"start":42,"end":47.25},{"start":110,"end":120}]}'const res = await fetch("https://api.kit.forhosting.com/audio/audio-silence-trim-estimate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_duration": 120,
"silence_segments": [
{
"start": 0,
"end": 3.5
},
{
"start": 42,
"end": 47.25
},
{
"start": 110,
"end": 120
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/audio-silence-trim-estimate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_duration": 120,
"silence_segments": [
{
"start": 0,
"end": 3.5
},
{
"start": 42,
"end": 47.25
},
{
"start": 110,
"end": 120
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/audio-silence-trim-estimate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_duration":120,"silence_segments":[{"start":0,"end":3.5},{"start":42,"end":47.25},{"start":110,"end":120}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_duration":120,"silence_segments":[{"start":0,"end":3.5},{"start":42,"end":47.25},{"start":110,"end":120}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/audio-silence-trim-estimate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"total_duration": 120,
"silence_segments": [
{
"start": 0,
"end": 3.5
},
{
"start": 42,
"end": 47.25
},
{
"start": 110,
"end": 120
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.audio_silence_trim_estimate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 200 |
max_minutes | 180 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |