POST
/
v1
/
voice
/
denoise
curl --request POST \
  --url https://geoff.ai/api/v1/voice/denoise \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "audio_url": "https://files.geoff.ai/audio/field_recording.wav",
    "strength": 0.65,
    "format": "wav"
  }'
{
  "data": {
    "audio_url": "https://files.geoff.ai/output/denoised_abc123.wav",
    "audio_b64": "...",
    "format": "wav",
    "sample_rate": 24000,
    "duration_s": 14.2
  },
  "trace_id": "04ede0ab069fb1ba8be5156a24b1e081"
}
Remove background noise, room tone, breath, hiss, and hum from a speech recording. Recommended pre-processing step before voice clone when the reference is a noisy field recording — noisy references produce noisy clones.

Authorization

Authorization
string
required
Bearer token. Bearer API_key.

Request Body

audio_url
string
required
Source audio URL (any common codec).
strength
number
Denoise aggressiveness. Range: 0 to 1. Default: 0.7. 1.0 is most aggressive — can introduce artifacts on very clean sources, so sweep down from the default when the result sounds thinned out.
format
string
Output audio format. Options: wav, mp3. Default: wav.
curl --request POST \
  --url https://geoff.ai/api/v1/voice/denoise \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "audio_url": "https://files.geoff.ai/audio/field_recording.wav",
    "strength": 0.65,
    "format": "wav"
  }'
{
  "data": {
    "audio_url": "https://files.geoff.ai/output/denoised_abc123.wav",
    "audio_b64": "...",
    "format": "wav",
    "sample_rate": 24000,
    "duration_s": 14.2
  },
  "trace_id": "04ede0ab069fb1ba8be5156a24b1e081"
}

Pipeline patterns

field_recording.wav → voice_denoise → voice_clone → t2a
song.mp3           → voice_isolate → voice_denoise → voice_convert