Model API

Stable Audio 3 Medium Base

Stable Audio 3 Medium Base audio-to-audio is the foundational 1.4 billion parameter checkpoint that transforms input audio into new stereo variations up to 6 minutes guided by text prompts.

Model id

Use this in every request
stable-audio-3/medium/base/audio-to-audio

This model has other modes with their own ids: stable-audio-3/medium/base/text-to-audio, stable-audio-3/medium/base/audio-inpainting, stable-audio-3/medium/base/audio-outpainting.

Run it

Quote the input, start the generation with the quote, then poll the job. Set RAYWAKE_API_KEY first; see Authentication.

# 1. Price the exact input (quotes are valid for up to 10 minutes)
curl -s https://api.raywake.com/v1/quotes \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "stable-audio-3/medium/base/audio-to-audio",
  "input": {
    "prompt": "A red ceramic cup on a wooden table, soft morning light",
    "audio_url": "https://example.com/input.mp3"
  }
}'

# 2. Start the generation with the quote_id from step 1
curl -s https://api.raywake.com/v1/generate \
  -H "Authorization: Bearer $RAYWAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"model": "stable-audio-3/medium/base/audio-to-audio", "quote_id": "QUOTE_ID", "input": {"prompt":"A red ceramic cup on a wooden table, soft morning light","audio_url":"https://example.com/input.mp3"}}'

# 3. Poll until the status is terminal
curl -s https://api.raywake.com/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $RAYWAKE_API_KEY"

Input

Input fields for stable-audio-3/medium/base/audio-to-audio
NameTypeDescription
negative_promptstring
Text description of qualities to avoid in the output.
durationnumber
Duration of the generated audio in seconds. The medium model supports up to 380 seconds (~6m20s).

Default: 30

num_inference_stepsinteger
Number of sampling steps. Base (non-distilled) checkpoints typically need ~50 for good quality.

Default: 50

guidance_scalenumber
Classifier-free guidance scale. Higher values follow the prompt more strictly; ~7.0 is a good starting point for base checkpoints.

Default: 7

seedinteger
Random seed for reproducible outputs. Omit for a random seed.
enable_prompt_expansionboolean
If True, the prompt will be expanded using an LLM for more detailed and higher quality results.

Default: false

sync_modeboolean
If True, the audio is returned inline as a data URI and the result is not saved to the request history.

Default: false

output_formatstring (enum)
Container format for the generated audio output.

Default: mp3

One of: mp3, wav, flac, ogg, opus, m4a, aac

bitratestring
Audio bitrate for compressed output formats (e.g., mp3, aac, opus). Format e.g. '192k' or '320k'. Ignored for lossless formats (wav, flac).

Default: 192k

promptrequiredstring
Text description guiding how the source audio should be transformed.
audio_urlrequiredstring (URL)
Source audio to transform.
init_noise_levelnumber
How much noise to add to the source audio. 1.0 fully replaces the audio with noise (pure generation); 0.1 keeps the source close to the input. 0.5 sits halfway between.

Default: 0.9

Output

A succeeded job lists its results under outputs, stored on our side. See Jobs for every field.

Job excerpt
"outputs": [
  { "type": "audio", "url": "https://…", "mime_type": "audio/mpeg", "thumbnail_url": null }
]

Pricing

  • up to, default options$0.09/ run

The exact charge for your input comes from a quote. How charges settle