Eranol LogoEranol
BlogCommunityDocumentationPricingSign In

General

OverviewGet Started

Universal

Add IntroAdd OutroAudio to VideoBackground AudioCaptions ApiComposeConcatConvert a video file to MP4Convert Audio to Mp3Convert Audio to wavConvert to JPGConvert to WebMConvert to WebPDenoiseEnhanceExtract audio track from a videoExtract images from a videoGenerate a GIF from a videoHighlightsImage TestMergeNotifyOverlayProgress BarReframeRemove SilenceThumbnailTikTokTrimVerifyWatermarkZoom

General

DeleteImage StatusStatusTikTok StatusFFmpeg Results

Need help?

Contact Support

Enhance

POST

Enhance your audio

Overview

Studio-quality voice enhancement using DeepFilterNet, a trained ML model that removes broadband noise underneath speech.

After noise removal it applies an optional EQ voice profile and loudness normalization, then encodes the result. Video inputs are muxed back onto the original (copied, not re-encoded) video track and returned as MP4; audio-only inputs return audio.

This is an async job: POST to create a job, then poll the status_url until it completes.

Endpoint

POST https://eranol.com/api/v1/ffmpeg/audio/enhance

Request Body

{
  "url": "https://cdn.example.com/raw.mp4",
  "voice_profile": "bright",
  "loudness_target": -16,
  "post_filter": true,
  "atten_limit_db": 100,
  "keep_video": true,
  "output_format": "mp3"
}

Response Example

{
  "job_id": "9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status": "pending",
  "message": "Job created. Poll status_url for progress.",
  "job_type": "enhance",
  "result_url": "https://eranol.com/api/v1/ffmpeg/result/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status_url": "https://eranol.com/api/v1/ffmpeg/status/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d"
}

Use Cases

1. Studio-quality voice enhancement

Enhance raw audio or video with a "bright" EQ profile (default) and standard Spotify/Apple loudness normalization (-16 LUFS).

Request Body

{
  "url": "https://cdn.example.com/raw.mp4",
  "voice_profile": "bright",
  "loudness_target": -16,
  "post_filter": true,
  "atten_limit_db": 100,
  "keep_video": true
}

Response

{
  "job_id": "9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status": "pending",
  "message": "Job created. Poll status_url for progress.",
  "result_url": "https://eranol.com/api/v1/ffmpeg/result/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status_url": "https://eranol.com/api/v1/ffmpeg/status/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d"
}

2. Denoising for YouTube upload

Enhance voice with a natural voice profile and -14 LUFS loudness target for YouTube.

Request Body

{
  "url": "https://cdn.example.com/podcast.wav",
  "voice_profile": "natural",
  "loudness_target": -14,
  "post_filter": true,
  "atten_limit_db": 100,
  "keep_video": false,
  "output_format": "mp3"
}

Response

{
  "job_id": "9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status": "pending",
  "message": "Job created. Poll status_url for progress.",
  "result_url": "https://eranol.com/api/v1/ffmpeg/result/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status_url": "https://eranol.com/api/v1/ffmpeg/status/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d"
}

3. Extracting enhanced audio from a video source

Enhance a video file, but output only a lossless WAV audio file (discards video track).

Request Body

{
  "url": "https://cdn.example.com/interview.mov",
  "keep_video": false,
  "output_format": "wav"
}

Response

{
  "job_id": "9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status": "pending",
  "message": "Job created. Poll status_url for progress.",
  "result_url": "https://eranol.com/api/v1/ffmpeg/result/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d",
  "status_url": "https://eranol.com/api/v1/ffmpeg/status/9f8b2c1a-7d4e-4a2b-b1c3-0e5f6a7b8c9d"
}

Error Codes

CodeMeaning
401Missing or invalid API key
402Insufficient credits
422Validation error — check your request body
429Rate limit exceeded — slow down requests
500Internal server error — try again or contact support