Launch-Aktion: Die Pläne Creator und Business sind für begrenzte Zeit rabattiert. Preise ansehen

Hochgeladenes Audio für zuverlässige Wiedergabe standardisieren

AudioDN ist eine API für Audioverarbeitung und -auslieferung. Sie nimmt inkonsistentes, unterstütztes Quell-Audio — eine Telefonaufnahme, einen Studio-Export, die merkwürdige Codec-Wahl eines Podcast-Hosts — und erzeugt eine vorhersehbare, wiedergabebereite Variante, die dann über signierte URLs ausgeliefert wird. Konfiguriere die Ausgabe einmal (dieses Beispiel nutzt AAC mit 128 kbps), und AudioDN wendet dieses Rezept automatisch auf neue Uploads an. Deine Anwendung lädt nur die Quelle hoch, wartet auf den Abschluss der Verarbeitung und fordert die Variante per Name an. Du betreibst weder FFmpeg, Transcoding-Queues noch Delivery-Infrastruktur.

Was normalize hier bedeutet

In diesem Beispiel bedeutet normalize Formatstandardisierung: ein konsistenter Ausgabe-Codec, Bitrate und Kanalkonfiguration sowie optionales Entfernen von Metadaten und Cover-Art, ausgeliefert als eine benannte Variante. Es bedeutet nicht Loudness-Normalisierung — AudioDN führt in diesem Workflow kein LUFS-Targeting, True-Peak-Limiting, Gain-Anpassung oder Dynamikbearbeitung durch.

Auf einen Blick

ProblemHochgeladenes Audio kommt in inkonsistenten Formaten, Codecs und Qualitäten an.
EingabeJedes von AudioDN unterstützte Quell-Audio (zum Beispiel WAV, FLAC, MP3).
AusgabeEine konsistent benannte Wiedergabevariante — hier aac mit 128 kbps, ausgeliefert als audio/aac.
KonfiguriertEinmal, als organisationsweites Varianten-Rezept (oder pro Spur über die API).
Deine Anwendung übernimmtUpload der Quelle und Integration der Wiedergabe.
AudioDN übernimmtVerarbeitung, Transcoding, Speicherung und sichere Auslieferung.

So fügt sich der Workflow zusammen

Ein unterstützter Upload wird in vier verwalteten Schritten zu einer konsistenten, abspielbaren Datei. Die Verarbeitung muss vor der Wiedergabe abgeschlossen sein, daher wartet deine Anwendung, bis die Spur ready ist, und fordert dann die Variante per Name an.

Ablauf auf hoher Ebene
Unterstütztes Quell-Audio (WAV, FLAC, MP3, ...)
        |
        v
Zu AudioDN hochladen
        |
        v
AudioDN verarbeitet die Spur       (track_status_id: processing)
        |
        v
Konfigurierte Variante erzeugt     (track_status_id: ready)
        |
        v
Dieselbe benannte Variante auf Web, Mobil oder Server abspielen

1. Zuerst die Ausgabe konfigurieren

Die Transcode-Variante ist das Feature, um das es in diesem Beispiel wirklich geht. Eine Variante ist ein wiederverwendbares Rezept, das AudioDN sagt, wie jeder unterstützte Upload in eine bestimmte Ausgabe umgewandelt wird. Einmal konfiguriert, erzeugt AudioDN automatisch dieselbe benannte Variante für neue Uploads — dein Code muss den Quell-Codec nie erkennen oder besonders behandeln und fordert das Ergebnis immer unter demselben Namen an.

Eine aac-Transcode-Variante im Dashboard konfigurieren

  1. Melde dich im AudioDN-Dashboard an und öffne Variants.

  2. Klicke auf Add Variant und wähle den Typ Transcode.
  3. Setze den Index auf aac, den Codec auf AAC und die Bitrate auf 128. Stereo eingeschaltet lassen und Strip Tags sowie Strip Cover Art aktivieren, um Metadaten zu standardisieren.

  4. Speichern. Neue Uploads werden automatisch in diese aac-Variante transcodiert.

Die Variante zu einer bestehenden Spur hinzufügen

Organisationsweite Rezepte gelten für neue Uploads. Um dieselbe Ausgabe zu einer einzelnen Spur hinzuzufügen, die bereits ready ist, hänge eine spur-spezifische Variante mit POST /v1/track/:track_id/variant an (Codec und Bitrate standardmäßig aac bei 128). Vollständige Feldreferenz: Variants API.

Warum AAC mit 128 kbps

AAC ist ein praktischer Standard für allgemeine Web- und App-Wiedergabe: Es wird von modernen Browsern, mobilen Betriebssystemen und Mediaplayern breit unterstützt, und 128 kbps bietet ein nützliches Gleichgewicht aus Qualität, Dateigröße und Streaming-Performance für typisches Hören. AudioDN liefert diese Variante mit dem Content-Type audio/aac aus. Wenn dein Produkt andere Kompromisse braucht, konfiguriere einen anderen Codec oder eine andere Bitrate oder füge weitere Varianten hinzu — siehe Variant Types.

2. Die Quelle hochladen

Es spielt keine Rolle, wie die Datei ankommt — ein verlustfreies Studio-Master, eine komprimierte Sprachnotiz oder was das Telefon eines Hörers erzeugt hat. Der Upload ist eine kurze, explizite Sequenz: Session erstellen (optional mit verschachteltem Track, um die erste Spur sofort anzulegen), weitere Spuren anlegen, Bytes per PUT an die Upload-URL der Spur senden, dann warten, bis die Spur ready ist.

Upload-Sequenz (konzeptionell)
POST /v1/upload_session                       -> upload_session_id
  (optionales verschachteltes track-Objekt)    -> auch track_id + track_upload.upload_url
POST /v1/upload/{upload_session_id}/track     -> track_upload.upload_url  (pro zusätzlicher Datei)
PUT  {track_upload.upload_url}                  (Quell-Bytes senden)
GET  /v1/track/{track_id}                       (pollen, bis track_status_id = ready)
Konfigurierte Variante anfordern               (z. B. variants="aac")

Optionaler verschachtelter Track

Standardmäßig gibt eine Upload-Session nur eine upload_session_id zurück. Füge ein verschachteltes track-Objekt bei POST /v1/upload_session hinzu, um auch track_upload.upload_url in dieser Antwort zu erhalten (weitere Spuren kannst du später hinzufügen). Andernfalls erstelle jede Spur mit POST /v1/upload/{upload_session_id}/track.

Polle dann GET /v1/track/:track_id, bis track_status_id ready ist, oder höre auf einen Track-Webhook, bevor du die Wiedergabe startest.

Vollständiges Upload-Beispiel (API und Uploader-Komponente)Anzeigen

Option A — Upload über die API

Dein Server (oder Client mit einem Client-Side-Upload-Schlüssel) steuert den Upload direkt.

Upload-Session erstellen

Beispielanfrage

# COLLECTION_ID: uuid of the collection to upload into
curl -X POST "https://api.audiodelivery.net/v1/upload_session" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "collection_id": "COLLECTION_ID",
  "expires_in": 7200
}'

Spur in der Session erstellen

Beispielanfrage

# SESSION_ID: upload_session_id returned by the previous call
curl -X POST "https://api.audiodelivery.net/v1/upload/SESSION_ID/track" \
  -H "Content-Type: application/json" \
  -d '{
  "file_name": "track.wav"
}'

Datei-Bytes hochladen

PUT track_upload.upload_url
# Nachdem create-track track_upload.upload_url zurückgibt, PUT der Quell-Bytes.
# Jedes unterstützte Quellformat funktioniert — unabhängig von ursprünglicher Qualität oder Codec.
curl -X PUT "$UPLOAD_URL" \
  --data-binary @track.wav \
  -H "Content-Type: audio/wav"

Option B — Upload über die Uploader-Komponente

Ziehe einen Drag-and-Drop-Uploader in deine Seite; mit einem Client-Side-Upload-Schlüssel ist kein Backend nötig.

Abhängigkeit

npm install @audiodn/components

Verwendung

<script type="module">
import '@audiodn/components/uploader';
</script>

<audiodn-uploader
api-key="YOUR_UPLOAD_API_KEY"
collection-id="COLLECTION_ID"
></audiodn-uploader>

Die Komponente übernimmt Drag-and-Drop, Fortschritt pro Datei und Retries für dich. Vollständige Attributreferenz: Uploader component docs.

Vollständige Feld-für-Feld-Referenz: Upload Sessions API.

3. Die Variante abspielen

Sobald die Spur ready ist, fordert jede Oberfläche, die dein Produkt ausliefert, exakt dieselbe Variante per Name an und erhält exakt dieselbe vorhersehbare Datei — ohne Format-Erkennung, ohne plattformspezifische Sonderfälle. Der schnellste Weg im Web ist die Komponente <audiodn-player> mit einem Client-Side-Player-Schlüssel:

Abhängigkeit

npm install @audiodn/components

Verwendung

<script type="module">
  import '@audiodn/components/player';
</script>

<audiodn-player
  api-key="YOUR_PLAYER_API_KEY"
  scope="track"
  id="TRACK_ID"
  variants="aac"
  size="regular"
></audiodn-player>

Live-Demo

Die Hero-Spur der Homepage, hier aus ihrer einzigen standardisierten aac-Variante abgespielt.

Musik von Nyktrn

Dieselbe Variante überall anfordern

Der Player ist optional. Eigene Web-, Mobil-, Flutter-, Native- und Server-Anwendungen können eine Play-Session erstellen und die zurückgegebene signierte URL für dieselbe benannte Variante streamen oder Delivery-URLs direkt für Backend-Wiedergabe signieren.

  • Website / eigener Player<audiodn-player> einbetten oder die Datei für deine eigene UI anfordern. Siehe den Leitfaden Web Integration.

  • Mobile App — eine Play-Session erstellen, die die aac-Variante aus Swift, Kotlin oder Flutter anfordert, dann die signierte URL mit jedem Plattform-Audioplayer streamen. Siehe Mobile Integration.

  • Server / API — Delivery-URLs für Backend-zu-Backend-Wiedergabe oder Downloads signieren. Siehe Signed Delivery und die Variants API.

Weitere Player-Optionen (Themes, Größen, Playlists, Cover-Art): Player component docs.

Wann dieser Workflow passt

Greife darauf zurück, wann immer dein Produkt Audio akzeptiert, das du nicht kontrollierst, und es konsistent wiedergeben muss. Das umfasst Uploads von Nutzern, Künstlern, Telefonen, Browsern, Aufnahmegeräten, Bearbeitungssoftware, externen Systemen und mehreren Produktionswerkzeugen gleichzeitig.

Es passt zu Musikplattformen, Podcasts, Sprachaufnahmen, Social Audio, Bildungsprodukten, Marktplätzen, Apps mit KI-generiertem Audio und anderen Produkten mit nutzergeneriertem Audio. In jedem Fall kann AudioDN die eigene Infrastruktur ersetzen, die du sonst betreiben würdest: Upload-Speicher, Verarbeitungsqueues, FFmpeg-Worker, Ausgabespeicher, Delivery-Signing und Wiedergabe-Auslieferung.

Was dieses Beispiel nicht abdeckt

Dieses Beispiel konzentriert sich darauf, aus inkonsistenten Uploads ein einheitliches Wiedergabeformat zu erzeugen. Folgendes sind verwandte, aber separate Fähigkeiten und nicht Teil dieses Workflows:

  • Preview-Clips — kurze, seek-beschränkte Ausschnitte. Siehe Preview clip player.
  • Waveforms — Waveform-Bild- oder Video-Varianten. Siehe Variant Types.
  • Zusätzliche Varianten — weitere Bitraten oder Codecs neben aac für Multi-Quality-Delivery.
  • Verlustfreie Downloads — FLAC- oder WAV-Downloads aus demselben Upload anbieten.
  • Loudness-Normalisierung — AudioDN führt kein LUFS-Targeting oder Gain-Anpassung durch; dieser Workflow standardisiert das Format, nicht die Lautheit.

FAQ

Wie normalisiere ich von Nutzern hochgeladenes Audio für die Web-Wiedergabe?

Lade die Quelle zu AudioDN hoch, warte, bis track_status_id der Spur ready ist, und fordere dann deine konfigurierte Transcode-Variante an (zum Beispiel AAC mit 128 kbps). AudioDN standardisiert Codec, Bitrate und Kanallayout, sodass jeder Upload als dieselbe vorhersehbare Datei wiedergegeben wird.

Kann AudioDN unterschiedliche Audioformate in ein einheitliches Format konvertieren?

Ja. AudioDN akzeptiert unterstützte Quellformate wie WAV, FLAC und MP3 und transcodiert sie in eine einzige konfigurierte Ausgabevariante, sodass dein Player immer dieselbe konsistente Datei anfordert — unabhängig davon, was hochgeladen wurde.

Muss ich FFmpeg selbst betreiben?

Nein. AudioDN betreibt die Transcoding-Pipeline für dich. Du lädst die Quelle hoch und forderst die fertige Variante an; du betreibst weder FFmpeg-Worker, Verarbeitungsqueues noch eigene Ausgabespeicherung.

Normalisiert AudioDN die Lautheit (Loudness)?

Nein. Dieser Workflow führt Formatstandardisierung durch (Codec, Bitrate, Kanalkonfiguration und Metadatenbehandlung), keine Loudness-Normalisierung, kein LUFS-Targeting, kein True-Peak-Limiting und keine Gain-Anpassung.

Wann ist die Wiedergabevariante verfügbar?

Nachdem die Verarbeitung abgeschlossen ist. Polle GET /v1/track/{track_id}, bis track_status_id ready ist, oder höre auf einen Track-Webhook. Starte die Wiedergabe erst, wenn die Spur ready ist.

Kann ich meinen eigenen Audioplayer verwenden?

Ja. Die Webkomponente audiodn-player ist optional. Jeder Web-, Mobil- oder Server-Client kann eine Play-Session erstellen und die zurückgegebene signierte URL für dieselbe benannte Variante streamen.

Kann dieselbe Variante in einer mobilen App verwendet werden?

Ja. Native iOS-, Android- und Flutter-Apps fordern dieselbe Variante per Name über eine Play-Session an und spielen die zurückgegebene signierte URL mit dem Plattform-Audioplayer ab.

Gibt das Erstellen einer Upload-Session die Upload-URL zurück?

Standardmäßig nein — das Erstellen einer Upload-Session gibt nur eine upload_session_id zurück. Optional kannst du ein verschachteltes track-Objekt bei POST /v1/upload_session mitschicken, um auch track_upload.upload_url in dieser Antwort zu erhalten (weitere Spuren kannst du später hinzufügen). Andernfalls erstelle eine Spur mit POST /v1/upload/{upload_session_id}/track; diese Antwort enthält die spur-spezifische Upload-URL.

Checkliste

  • Ein aac-Transcode-Varianten-Rezept existiert mit 128 kbps (einmal im Dashboard konfiguriert oder zu einer einzelnen Spur per POST /v1/track/:track_id/variant hinzugefügt).
  • Eine unterstützte Quelldatei wurde hochgeladen — über die API oder die Komponente <audiodn-uploader> — und hat track_status_id ready erreicht.
  • Der Player ist auf die Spur gescoped und fordert die aac-Variante mit einem Client-Side-Player-Schlüssel an.
  • Dieselbe aac-Variante wird konsistent über Web-, Mobil- und Server-Integrationen angefordert.

Veröffentlicht