{
  "title": "Audio chapter splitter",
  "human_url": "https://happytails.ai/en/media-tools/audio-chapter-splitter/",
  "agent_url": "https://happytails.ai/agents/en/media-tools/audio-chapter-splitter/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/media-tools/audio-chapter-splitter.md",
  "content": "Audio chapter splitter\nSplit one long recording into separate WAV files from your own list of chapter start times, with gaps and overlaps flagged.\nHow to use Audio chapter splitter\nChoose the recording to split.\nPaste one chapter per line: a start time, an optional end time and a title.\nSplit the audio and check the report for gaps, overlaps or times past the end.\nDownload the ZIP of chapter files and the CSV chapter list.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nUseful next steps\nTrim audio\nMerge audio\nAudio fade editor\nChapter list\nWrite one chapter per line, such as 0 Intro or 1:02:03.5 Part two. Times can be seconds, minutes and seconds or hours, minutes and seconds. An optional end time can follow the start, as in 0 1:30 Intro. CSV lines such as 0,90,Intro also work. Lines starting with # are ignored.\nChecks\nStart times must increase. A chapter without an end time runs to the next start, and the last one runs to the end of the audio. The report flags a gap when a chapter ends before the next one starts, an overlap when it ends after, and a leading gap when the first chapter does not start at 0. A chapter outside the audio stops the split.\nFiles\nEach chapter becomes a WAV named with its number and title, stored uncompressed in a ZIP file. Cuts are made at the nearest sample, and the source format is kept when the sample format is set to match.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Trim audio",
      "url": "https://happytails.ai/en/media-tools/trim-audio/"
    },
    {
      "name": "Merge audio",
      "url": "https://happytails.ai/en/media-tools/merge-audio/"
    },
    {
      "name": "Audio fade editor",
      "url": "https://happytails.ai/en/media-tools/audio-fade-editor/"
    }
  ],
  "tool": {
    "id": "audio-chapter-splitter",
    "category": "media-tools",
    "built": true,
    "requirements": "One recording up to 256 MiB and 10 minutes, at most 999 chapters and 100,000 characters of chapter list. 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: ZIP of WAV files, a JSON report and a CSV chapter list.",
    "implementation": {
      "fields": [
        {
          "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": 100000,
      "inputErrorCode": "AUDIO_DSP_EDIT_TOO_LONG_CHAPTERS",
      "note": "Runs locally in your browser. Splits one recording up to 10 minutes into at most 999 chapters.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 100000,
        "inputMode": "text",
        "label": "Chapter list",
        "placeholder": "0 Intro",
        "help": "One chapter per line: a start time, an optional end time and a title. Up to 100,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"
    }
  },
  "markdown": "# Audio chapter splitter\n\n- Human page: https://happytails.ai/en/media-tools/audio-chapter-splitter/\n- Markdown: https://happytails.ai/en/media-tools/audio-chapter-splitter.md\n- Structured JSON: https://happytails.ai/agents/en/media-tools/audio-chapter-splitter/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `audio-chapter-splitter` |\n| Category | media-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nRuns locally in your browser. Splits one recording up to 10 minutes into at most 999 chapters.\n\n### Inputs and settings\n\nText input: Chapter list.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\n0 Intro\n```\n\nOne chapter per line: a start time, an optional end time and a title. Up to 100,000 characters. Review the settings before running.\n\nAccepted browser files: `.wav,.mp3,.m4a,.aac,.flac,.ogg,.oga,.opus,.webm,audio/*`. Choose one file.\n\nBrowser file-input limit: 268435456 bytes in total. HTTP limits can differ.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `encoding` | WAV sample format | select | \"match\" | Allowed: match, pcm16, pcm24, float32 |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nOne recording up to 256 MiB and 10 minutes, at most 999 chapters and 100,000 characters of chapter list. 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: ZIP of WAV files, a JSON report and a CSV chapter list.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"audio-chapter-splitter\",\n  \"category\": \"media-tools\",\n  \"built\": true,\n  \"requirements\": \"One recording up to 256 MiB and 10 minutes, at most 999 chapters and 100,000 characters of chapter list. 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: ZIP of WAV files, a JSON report and a CSV chapter list.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"encoding\",\n        \"label\": \"WAV sample format\",\n        \"value\": \"match\",\n        \"type\": \"select\",\n        \"values\": [\n          \"match\",\n          \"pcm16\",\n          \"pcm24\",\n          \"float32\"\n        ],\n        \"labels\": {\n          \"match\": \"Match source sample format\"\n        }\n      }\n    ],\n    \"registrationFamily\": \"audio-dsp-edit\",\n    \"presentation\": \"metrics\",\n    \"files\": true,\n    \"accept\": \".wav,.mp3,.m4a,.aac,.flac,.ogg,.oga,.opus,.webm,audio/*\",\n    \"maxFileBytes\": 268435456,\n    \"inputMaxLength\": 100000,\n    \"inputErrorCode\": \"AUDIO_DSP_EDIT_TOO_LONG_CHAPTERS\",\n    \"note\": \"Runs locally in your browser. Splits one recording up to 10 minutes into at most 999 chapters.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 100000,\n      \"inputMode\": \"text\",\n      \"label\": \"Chapter list\",\n      \"placeholder\": \"0 Intro\",\n      \"help\": \"One chapter per line: a start time, an optional end time and a title. Up to 100,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nSplit one long recording into separate WAV files from your own list of chapter start times, with gaps and overlaps flagged.\n\n### How to use Audio chapter splitter\n\n1. Choose the recording to split.\n2. Paste one chapter per line: a start time, an optional end time and a title.\n3. Split the audio and check the report for gaps, overlaps or times past the end.\n4. Download the ZIP of chapter files and the CSV chapter list.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n## Useful next steps\n\n- [Trim audio](https://happytails.ai/en/media-tools/trim-audio/) ([Markdown](https://happytails.ai/en/media-tools/trim-audio.md))\n\n- [Merge audio](https://happytails.ai/en/media-tools/merge-audio/) ([Markdown](https://happytails.ai/en/media-tools/merge-audio.md))\n\n- [Audio fade editor](https://happytails.ai/en/media-tools/audio-fade-editor/) ([Markdown](https://happytails.ai/en/media-tools/audio-fade-editor.md))\n\n## Chapter list\n\nWrite one chapter per line, such as 0 Intro or 1:02:03.5 Part two. Times can be seconds, minutes and seconds or hours, minutes and seconds. An optional end time can follow the start, as in 0 1:30 Intro. CSV lines such as 0,90,Intro also work. Lines starting with # are ignored.\n\n### Checks\n\nStart times must increase. A chapter without an end time runs to the next start, and the last one runs to the end of the audio. The report flags a gap when a chapter ends before the next one starts, an overlap when it ends after, and a leading gap when the first chapter does not start at 0. A chapter outside the audio stops the split.\n\n### Files\n\nEach chapter becomes a WAV named with its number and title, stored uncompressed in a ZIP file. Cuts are made at the nearest sample, and the source format is kept when the sample format is set to match.\n"
}