Audio Upmixing
Convert stereo audio to 5.1/7.1 surround sound during video transcoding.
Give your content cinema-quality audio. Rad TV's audio upmixing converts stereo tracks to 5.1 or 7.1 surround sound — ideal for viewers on home theaters, gaming headsets, VR, and immersive playback devices.
Upmixing runs automatically alongside AI video upscaling when enhance: true is set.
Audio upmixing requires an active Creator+ subscription ($29.99/month). It is always bundled with AI upscaling — the same enhance: true flag triggers both.
How It Works
- During transcoding with
enhance: true, the audio track is analyzed - Stereo channels are spatially mapped to surround sound positions
- The output includes both the original stereo and the upmixed surround audio
- Playback devices automatically select the best audio track (stereo for phones, surround for home theater)
Triggering Upmixing
Audio upmixing uses the same enhance: true flag as video upscaling. There is no separate toggle — when you enhance, you get both.
With publishVideo
mutation {
publishVideo(input: {
title: "Concert Recording"
sourceUrl: "https://example.com/concert.mp4"
contentType: "landscape"
enhance: true
publish: true
}) {
content { id }
job { id status }
}
}With submitContentForProcessing
mutation {
submitContentForProcessing(
id: "did:rad.live:content/feature/123"
input: {
assetName: "concert.mp4"
layout: LANDSCAPE
enhance: true
}
) {
job { id status }
}
}Accessing Audio Output
After transcoding completes, the audio download is available via outputAssets:
curl -X POST https://api.rad.live/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"query": "{ me { channel { features(first: 1) { edges { node { metadata { title } outputAssets { encoderType audio { download } video { hls } } } } } } } }"
}'const response = await fetch('https://api.rad.live/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY',
},
body: JSON.stringify({
query: `{
me {
channel {
features(first: 1) {
edges {
node {
metadata { title }
outputAssets {
encoderType
audio { download }
video { hls }
}
}
}
}
}
}
}`,
}),
});
const { data } = await response.json();
const feature = data.me.channel.features.edges[0].node;
console.log(feature.outputAssets.audio.download);import requests
response = requests.post(
"https://api.rad.live/graphql",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
json={
"query": """
{
me {
channel {
features(first: 1) {
edges {
node {
metadata { title }
outputAssets {
encoderType
audio { download }
video { hls }
}
}
}
}
}
}
}
"""
},
)
feature = response.json()["data"]["me"]["channel"]["features"]["edges"][0]["node"]
print(feature["outputAssets"]["audio"]["download"])Output Format
The OutputAudioAssets type contains:
| Field | Type | Description |
|---|---|---|
download | URL | Direct download URL for the audio file |
The HLS streaming manifest (video.hls) also includes the surround audio track as an alternate stream, allowing adaptive playback clients to select stereo or surround based on device capability.
Next steps
- AI Upscaling — The video enhancement that runs alongside upmixing
- Output Assets — Complete guide to all generated outputs