3

I've found quite a few programs to divide audio files, but none allow for batch splitting an audio file using arguments. I have several 5 hour and longer audio files (mostly MP3, but I could just as easily convert them) that are accompanied by track listings (time and title). Are there any programs or methods that could allow for splitting audio files based on a list of times, with an accompanying file name (e.g. "00:00 name" then "05:35 name")? Even something like a command line utility that could allow for arguments for the output file name and time would work, in my case.

2 Answers 2

2

FFmpeg does this.

ffmpeg -ss <start time secs> -t <duration secs> -i <input file> <output file>

That will take the slice of the input file starting at the start time, go for the duration specified, and put that into the output file.

1
  • The question specified splitting audio files "based on a list of times" Jul 5, 2021 at 23:23
2

You could try AviSynth but just audio.

From http://forum.doom9.org/showthread.php?t=131713 it seems you can either:

  1. Use Blankclip() to make a clip the same length as the sound
  2. Use AudioDub() to dub your sound onto the blank clip.
  3. Use trim() to cut of 30s worth of frames.

or

Directshowsource("clip.avi", video=false, audio=true)

trim(x,y)

As you can create user defined functions you could perhaps write a function that takes your arguments, trims the file to that size and outputs it. Then call this function for as many times as required. Or write an AviSynth to output one file, and call it multiple times from a bash script.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .