Zum Inhalt
HALOWERK

Audiowerk

duck

Takes a voice recording and a music bed and returns one mixed file in which the music is pulled down by the voice through an ffmpeg sidechain compressor. Threshold, ratio, attack and release are all settable and all reported back with the result, because they are the difference between a mix that breathes and one that pumps: a release under 100 ms makes the bed audibly flutter between words, above 1500 ms it never returns between sentences. The bed is looped or cut to the length of the voice.

POST https://audio.halowerk.com/duck

Eingaben

Felder des veröffentlichten Eingabeschemas
FeldTypPflichtBeschreibung
voiceobjectJaThe voice track. Either url or content_base64.
musicobjectJaThe music bed. Either url or content_base64.
music_gain_dbnumberNeinLevel of the bed before ducking, relative to its own level.
threshold_dbnumberNeinVoice level above which the bed starts to be pulled down.
rationumberNeinHow hard the bed is pulled down once the threshold is crossed.
attack_msintegerNeinHow fast the bed ducks when the voice starts. Short values can clip the first syllable.
release_msintegerNeinHow fast the bed returns between words. Under 100 ms the bed audibly flutters.
loop_musicbooleanNeinLoop a bed shorter than the voice track. Off, the mix ends when the bed does.
output_formatstringNeinFormat of the mixed file.
Vollständiges Eingabeschema anzeigen
{
  "type": "object",
  "required": [
    "voice",
    "music"
  ],
  "additionalProperties": false,
  "properties": {
    "voice": {
      "type": "object",
      "additionalProperties": false,
      "description": "The voice track. Either url or content_base64.",
      "properties": {
        "url": {
          "type": "string",
          "maxLength": 2048,
          "description": "Public http(s) URL."
        },
        "content_base64": {
          "type": "string",
          "maxLength": 12000000,
          "description": "The file inline, base64."
        }
      }
    },
    "music": {
      "type": "object",
      "additionalProperties": false,
      "description": "The music bed. Either url or content_base64.",
      "properties": {
        "url": {
          "type": "string",
          "maxLength": 2048,
          "description": "Public http(s) URL."
        },
        "content_base64": {
          "type": "string",
          "maxLength": 12000000,
          "description": "The file inline, base64."
        }
      }
    },
    "music_gain_db": {
      "type": "number",
      "minimum": -40,
      "maximum": 6,
      "default": -8,
      "description": "Level of the bed before ducking, relative to its own level."
    },
    "threshold_db": {
      "type": "number",
      "minimum": -60,
      "maximum": -6,
      "default": -30,
      "description": "Voice level above which the bed starts to be pulled down."
    },
    "ratio": {
      "type": "number",
      "minimum": 1.5,
      "maximum": 20,
      "default": 8,
      "description": "How hard the bed is pulled down once the threshold is crossed."
    },
    "attack_ms": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "default": 20,
      "description": "How fast the bed ducks when the voice starts. Short values can clip the first syllable."
    },
    "release_ms": {
      "type": "integer",
      "minimum": 50,
      "maximum": 3000,
      "default": 400,
      "description": "How fast the bed returns between words. Under 100 ms the bed audibly flutters."
    },
    "loop_music": {
      "type": "boolean",
      "default": true,
      "description": "Loop a bed shorter than the voice track. Off, the mix ends when the bed does."
    },
    "output_format": {
      "type": "string",
      "enum": [
        "mp3",
        "wav",
        "flac",
        "opus"
      ],
      "default": "mp3",
      "description": "Format of the mixed file."
    }
  }
}

Originalschema öffnen

Veröffentlichtes Eingabebeispiel

{
  "voice": {
    "url": "https://audio.halowerk.com/examples/voice.wav"
  },
  "music": {
    "url": "https://audio.halowerk.com/examples/voice.wav"
  }
}

Ergebnis & Dokumentation

Maschinenlesbare Dokumentation dieses Hubs

Quelle dieser Seite: der veröffentlichte HALOWERK-Katalog. Stand: 2026-11-01, 15:19 UTC.

Weitere Endpunkte dieses Hubs

Alle Endpunkte dieses Hubs →