Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have an audio recording in which 1 kHz tones divide its segments. There are so many segments that it would take a while to use Audacity to manually split the file. Is there an automatic plug-in or program to do this?

share|improve this question
    
It may not be a practical suggestion, but find the binary code for that tone, and split by it. –  soandos Jun 9 '11 at 17:20

2 Answers 2

up vote 4 down vote accepted

This is actually possible using Audacity's Beat Finder analysis plug-in when combined with a bandpass filter.

  1. Duplicate your mono audio track.
  2. Find the tone's exact frequency.
    1. Select the tone you want Audacity to detect and choose Analyze → Plot Spectrum.
    2. Set the size to 16384.
    3. Move the mouse pointer over the highest peak.
    4. Look for the "peak" frequency.
  3. Use a bandpass filter to remove everything but the tone.
    1. Select the entire tone detection track and choose Effects → Nyquist Prompt.
    2. Type (reson s 1000 1 1) into the box.
    3. Replace 1000 with the frequency you got from Step 2.
    4. Click OK.
  4. Optionally, apply the Amplify effect, setting New Peak Amplitude to zero.
  5. Use Analyze → Beat Finder. Start with Threshold Percentage equal to 100; reduce that percentage until Audacity successfully detects the tone.
  6. Use File → Export Multiple to actually save the marked segments as separate files.
share|improve this answer

Hmm, how's your lisp? Audacity multi-export, as described http://wiki.audacityteam.org/wiki/Splitting_recordings_into_separate_tracks does what you want, given appropriate labels.

Seems it'd be possible to combine the auto-label-silence script from there (named SilenceMarker.ny) with the simple spectral processing example from http://audacity-forum.de/download/edgar/nyquist/nyquist-doc/examples/rbd/03-fft-tutorial.htm to do labeling based on freq. If I had to do it, I'd give it a try, but lisp isn't one of my languages.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.