[ardour-dev] exact sample sync

Robin Gareus robin at gareus.org
Fri Jun 16 10:14:33 PDT 2006

I recently played with the jack transport API, trying several
applications to play back the same audio file with inverted polarity.

As I did get flange effects instead of the expected silence (using
ardour and ecasound), I started investigation and in need for a third
opinion made a small player that does the trick. (source attached if you
want to reproduce this.)

empiric results:

ecasound v2.4.4: plays audio-frame starting @ jack-transport frame.

ardour 0.99.2 (libardour 0.906.1): the output is exactly one
jack-buffer-size ahead in time!

ardour2 svn-604: channel 1 (left) behaves like ardour 0.99.2
channel 2 (right) does not. (different volume, phase shift or panning? -
I couldn't get this one to superimpose to zero. )

That sounds like a bug in ardour (read-ahead feature ?!?) to me.

If I drop the file at the left-most position in the timeline: the
playback is always a jack-buffersize frames early!

The jadio player and ecasound behave according to the
jack_transport_query() doc.: "If called from the process thread, pos
corresponds to the first frame of the current cycle."

For testing I used a WAVE audio, Microsoft PCM, 16 bit, stereo 48000 Hz
file. - jadio can be configured to either play in sync with
ardour-0.99.2 (default) or ecasound (change jadio.c:58 to p_seekprev=0; )


PS.: using bitscope or meterbridge reveals that the annihilation of the
signal is not complete - turning up the amp I hear some random noise
which I attribute to dithering...

PPS. slightly off topic: are there other jack transport aware audio-file
-------------- next part --------------
A non-text attachment was scrubbed...
Name: simple-jadio.tgz
Type: application/x-compressed-tar
Size: 4003 bytes
Desc: not available
URL: <http://lists.ardour.org/pipermail/ardour-dev-ardour.org/attachments/20060616/592bb000/attachment.bin>

More information about the Ardour-Dev mailing list