Re: [linux-audio-dev] Random thought on HDR latency compensation

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

Subject: Re: [linux-audio-dev] Random thought on HDR latency compensation
From: Kai Vehmanen (kaiv_AT_wakkanet.fi)
Date: Tue Apr 25 2000 - 15:14:15 EEST


On Wed, 19 Apr 2000, Paul Winkler wrote:

> Maybe those of you (Paul, Kai, others?) working on projects that
> provide hard-disk recording have already solved this problem, but
> this just occurred to me (I have a habit of having irrelevant ideas

Hmm, a few weeks ago I made some improvements to ecasound's
multitrack-sync functionality, so this is indeed an interesting subject.
From ecasound's point of view, synchronation needed in multitrack
recording is something extra. It doesn't fit in to the basic design (read
from N inputs, mix to M chains, process M chains, mix to T outputs, write
to T outputs), and thus is has to be dealt as a special case.

In current dev-versions, ecasound uses two realtime devices as
sync-masters. After processing the first buffer fragment, ecasound uses
these sync-masters to measure the difference between realtime output
(monitoring) and input (the recorded signal). This value is used (together
with the latency caused by buffering) to adjust the position of output
files (=recorded material). Current position is measured either with
gettimeofday() or driver-level info.

User can choose whether to monitor the recorded signal or use
hw-monitoring. In either case, recorded material will be in sync.

> The method is basically to discard an amount of data from the input
> equal to the size of the output buffer. If the input buffer has the

Yep, this is basicly what ecasound does now.

-- 
Kai Vehmanen <k_AT_eca.cx> ---------------- CS, University of Turku .
 . audio software for linux ...	http://www.eca.cx 		 .
 . armchair-tunes mp3/wav/ra .. http://www.wakkanet.fi/sculpcave .


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

This archive was generated by hypermail 2b28 : Tue Apr 25 2000 - 20:19:12 EEST