Workflows

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

  1. During transcoding with enhance: true, the audio track is analyzed
  2. Stereo channels are spatially mapped to surround sound positions
  3. The output includes both the original stereo and the upmixed surround audio
  4. 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:

FieldTypeDescription
downloadURLDirect 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

On this page