Trim or merge audio
Cut an audio file down to a start-end range, or concatenate two or more audio files one after another. A packet-level copy with no decoding, so this runs in Node, the CLI and MCP as well as the browser. Output is always an MP4 audio file (.m4a).
Runs on your device. The file is never uploaded.
Trim or merge audio cuts one file to a startSec and endSec range, or joins several end to end into an .m4a. Mode defaults to trim; merge needs at least two inputs and writes merged.m4a. Since packets are copied rather than decoded, every file in a merge has to share one codec, or the run is refused.
Questions
How do I switch between trimming and merging?
With the mode option, which is trim by default. In trim mode only the first file is used and it is cut to the startSec and endSec range. In merge mode every file you dropped is concatenated in the order given, and at least two are required, otherwise you get "merge mode needs at least 2 files".
Does it re-encode the audio?
No. Packets are copied straight from the source into a new file with no decoding, so the sound is bit for bit what it was. That also means it runs in Node, on the command line and through MCP, not only in a browser tab, unlike Convert audio and Normalize audio volume.
Why does merging refuse my files?
Because a packet copy needs every input to already use the same audio codec. The error names the file, both codecs and points you at Convert audio to fix it first. A file with no audio track is refused by name too, since there is nothing to copy out of it.
What do I get back?
Always an MP4 audio file with an .m4a extension. Trim mode names it after your input with -trimmed.m4a on the end; merge mode always writes merged.m4a. The original codec is preserved inside the new container, so an AAC source stays AAC.
Why is my trim slightly off?
Because the cut starts at the nearest packet boundary at or before your start time, not at an exact sample. The kept range is then rebased to start at zero. If startSec sits at or past the end of the file, the tool refuses with "is at or past the end of the audio" instead of writing an empty clip. endSec has no default and must be greater than startSec.
Is anything uploaded?
No. Every file is read into memory on your device, the new file is built in memory beside it, and nothing is sent anywhere. Because all the inputs for a merge are held at once, a long list of long recordings is bounded by your own memory rather than by a rule in the tool.