Recording audio with LC

stephen barncard stephenREVOLUTION2 at
Thu Feb 24 12:57:35 EST 2011

As one who archives audio and video all the time, I can pass along some
pointers for this task.

 I don't think you can expect Livecode to handle recording that many audio
streams, and there is no reliable way to 'monitor' the audio stream to
detect level thresholds in Livecode. I've tried it. Audio in Livecode is
primitive at best, and timers to stop the recording will fail eventually -
some cassettes are 30, 60, 90, 120 minutes long.

But beyond that, and much more important, is that you have the problem with
*quality control and verification*. Attempts to copy vast amounts of audio
unattended will probably fail, just due to the nature of cassettes and
audio, and that you have to expect the unexpected.  This project can turn
into a nightmare if you expect automation to do all the work. Doing all that
in parallel exacerbates the problem, because if one stops, they all stop and
there's a mess to clean up, and some are going to be longer than others and
you'll be wasting disk space on empty sections.

There is no free lunch here. Even if this stuff is totally boring and
repetitive to you, you client expects every bleep, squawk and fart to be
transferred with some level of quality without omissions. Stuff that could
go wrong:  Tapes jamming, ending early, stereo  or mono?, low level,
excessive level, and sticky-shed syndrome. Archiving is serious business,
wether it's CSN or boring lectures by a long-dead executive.

Also consider that you will be expected to describe what is on each tape and
attach that metadata to the file, hopefully either through a database or
(preferably) a meta file, and that takes *MUCH* more time than you would
think. Keeping all that info straight and attached to the file in question
is a full time job. You just can't walk away from it and 'let it run'.
Transferring one at a time is the only way to do it reliably, or use two
workstations, and you will have to tend this project by hand in a lot of

The best tool for the job I've seen is a little $80 Mac app called  *Sound
Studio 4 <>*.  It's apple-scriptable, works totally in
RAM, has threshold detection for stopping and starting, and can 'spit by
markers' if needed.   After each capture, you can see the waveform and can
trim top and tail, and name and spot check the file before final save.

I am automating the capture of my collection of over 1000 DAT tapes to a
hard drive, but I had previously put indexes on each DAT tape over many
years and devised a way to detect those indexes and put markers in the audio
file to indicate selection, using a rare piece of hardware called the BIT
BOX.  I am expecting this to take some time, and I am doing these one at a
time for the above mentioned reasons.

Archiving is a full-time task that must be managed by an attentive person,
and doing something else while doing this (besides watching TV or surfing
the web) is not really conducive to getting the job done correctly. Consider
hiring an intern or other person to do this if you don't have the time, but
ultimately you are the one responsible.  Don't underestimate the time it
takes to do this. Considering the time it takes to create and debug an app
in Livecode to to do something it wasn't designed to do might be better
spent just getting down to work and archiving the old-fashioned way.

1. capture audio
2. while capturing , enter metadata
3. after capture clean top and tail and spot check
4. save to file

hey- it's TONS of overtime, and if they don't want to pay, you can get them
to drop the idea if you have better stuff to do. But I guarantee that
promising an automated solution that you haven't tested or tried yet and
then have to deliver will turn into a nightmare for you. Been there, done

my 2 cents


On 24 February 2011 07:57, Tim Selander <selander at> wrote:

> I have hundreds, maybe thousands, of cassette tapes my company wants to
> archive on hard disk. (OSX, Mac)
> I bought a 16 input USB audio interface and 8 cassette decks. This way I
> can record 8 tapes at a time to disk. Tested and working in a 'normal' sound
> app -- Cubase.
> But I have to baby-sit the machine in order to stop recording.
> I'd like to program LC to automate the process a bit -- stop recording
> after 60 minutes, name resulting files, move to appropriate folders, etc.
> I'm sure I've read on the list about people using LC/Rev to record audio,
> but can find no reference to it in the manual.
> Can LC record audio under script control? Can it properly select the Core
> Audio input to record from? Any pointers to documentation or sample code
> snippets appreciated!
> Tim Selander
> Tokyo, Japan
> _______________________________________________
> use-livecode mailing list
> use-livecode at
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:


Stephen Barncard
San Francisco Ca. USA

more about sqb  <>

More information about the Use-livecode mailing list