happytails.ai

Audio channel router

Open Audio channel router on Happytails.ai. This view has the same page content and links, with explicit tool capabilities. Read the processing notes before using a tool.

Tool capabilities

{
  "id": "audio-channel-router",
  "category": "media-tools",
  "built": true,
  "requirements": "One recording up to 256 MiB, 10 minutes and 8 channels; routing text up to 10,000 characters and 8 output lines. WAV is read with every sample intact; other formats are decoded by your browser at 48 kHz. Everything is processed on your device and nothing is uploaded. Download: WAV, or a ZIP of mono WAV files in split mode, and a JSON report.",
  "implementation": {
    "fields": [
      {
        "key": "mode",
        "label": "Mode",
        "value": "matrix",
        "type": "select",
        "values": [
          "matrix",
          "split",
          "swap",
          "duplicate"
        ]
      },
      {
        "key": "encoding",
        "label": "WAV sample format",
        "value": "match",
        "type": "select",
        "values": [
          "match",
          "pcm16",
          "pcm24",
          "float32"
        ],
        "labels": {
          "match": "Match source sample format"
        }
      }
    ],
    "registrationFamily": "audio-dsp-edit",
    "presentation": "metrics",
    "files": true,
    "accept": ".wav,.mp3,.m4a,.aac,.flac,.ogg,.oga,.opus,.webm,audio/*",
    "maxFileBytes": 268435456,
    "inputMaxLength": 10000,
    "inputErrorCode": "AUDIO_DSP_EDIT_TOO_LONG_ROUTING",
    "note": "Runs locally in your browser. Routes up to 8 channels of one recording up to 10 minutes; routing lines are used in matrix mode only.",
    "experience": {
      "automatic": false,
      "single": false,
      "inputMaxLength": 10000,
      "inputMode": "text",
      "label": "Routing (matrix mode)",
      "placeholder": "out1 = in2",
      "help": "One output per line, for example out2 = 0.5*in1 + 0.5*in2. Up to 10,000 characters. Review the settings before running.",
      "helpParts": [
        "One output per line, for example out2 = 0.5*in1 + 0.5*in2.",
        "Up to 10,000 characters.",
        "Review the settings before running."
      ],
      "action": null
    },
    "mode": "explicit",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}

Page guide

Remap, swap, duplicate or split the channels of a recording, using simple routing lines such as out1 = in2.

How to use Audio channel router
  1. Choose the recording whose channels you want to change.
  2. Pick a mode: matrix, split, swap or duplicate.
  3. In matrix mode, write one routing line per output channel, such as out2 = 0.5*in1 + 0.5*in2.
  4. Route the channels and download the WAV, or the ZIP of single-channel files in split mode.

Useful next steps

Routing lines

Each line defines one output channel, numbered from 1 in order: out1 = in2 copies input channel 2 to output 1. Terms can be added or subtracted and scaled by a number up to 4, as in out3 = 0.5*in1 - 0.5*in2. Lines starting with # are ignored. At most 8 output channels.

Other modes

Split writes each channel as its own mono WAV inside a ZIP file. Swap exchanges left and right of a stereo file. Duplicate turns a mono file into stereo with the same signal on both sides. Routing lines are only read in matrix mode.

Exact copies

A channel that is copied without scaling keeps every sample. With the sample format set to match, a 16-bit or 24-bit source is written in its own format, so copied channels are bit for bit identical. Mixed channels can go above full scale and are then clipped in 16-bit and 24-bit files, so keep the sizes of the coefficients on each line adding up to 1 or less.