Metronome accuracy

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Metronome accuracy
From: Nolan J. Darilek (nolan_AT_thewordnerd.info)
Date: Mon Oct 06 2003 - 07:53:43 EEST


As part of my command line ecasound interface project I'm working on
tempo maps. Basically, tempo maps allow you to use measures atop an
unstructured audio stream. They also start and stop ecasound at the
apropriate points and, someday, will handle tempo changes.

Having a bit of a problem with metronome accuracy, though, and I'm not
completely sure what it is, though I have my suspicions. My test is 16
measures of 4/4 time at 120 BPM. My main thread starts ecasound, then
stops it 32 seconds later. The problem, however, seems to be that the
thread isn't starting concurrently with ecasound, resulting in only
15.5 measures of click despite the fact that the elapsed time is just
over 32 seconds.

Has anyone done any testing wrt ecasound's metronome accuracy? It
seems fine to me, but as my code is stopping ecasound about a second
before it should, the differences may be too small for me to notice. I
have a chainsetup class which does the starting/stopping of the setup,
and I'm trying to break these methods into smaller, atomic commands
which, I hope, will make starting a bit more accurate. For instance,
starting the chainsetup also connects it, as the auto-connection was
throwing off the start time a bit. I'm also trying to call
engine-launch first, hoping to do as much of the work as possible
before calling start . . . but this still hasn't improved accuracy.

Is there anything else I might do, or is it not possible to guarantee
that processing will start as soon as the start command returns? Or is
ecasound's metronome only intended as a basic guide, and not
completely accurate for this degree of precise timing?


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Oct 06 2003 - 07:51:35 EEST