From: Clemens Ladisch <clemens@ladisch.de>
To: Rolf Anderegg <rolf.anderegg@weiss.ch>
Cc: Uli Franke <Uli.Franke@weiss.ch>,
Brian Karr <briank@tctechnologies.tc>,
alsa-devel@alsa-project.org, ffado-devel@lists.sourceforge.net
Subject: Re: ALSA firewire kernel branch: snd_dice enhancements
Date: Fri, 04 Nov 2011 09:17:50 +0100 [thread overview]
Message-ID: <4EB39FAE.40309@ladisch.de> (raw)
In-Reply-To: <4EB3346A.1030704@weiss.ch>
Rolf Anderegg wrote:
> On 02.11.2011, at 21:19, Clemens Ladisch <clemens@ladisch.de> wrote:
>> On the DICE, the playback and capture streams must use a common rate, so
>> I thought I'd avoid handling this in the driver and just use whatever
>> was configured.
>
> Isn't common rate for playback & capture stream often required?
Yes (but not on consumer chips, where it's normal to have independent
clocks for all I/Os).
> This could be guaranteed by adapting the pcm rate constraints when
> acquiring one or the other stream.
Yes, and many ALSA drivers already do this. I just wanted to be lazy
and put the sample rate selection into a control panel, where other
similar settings already have to be handled.
Putting rate and clock selection in the driver also has the benefit of
making it mostly usable even without a control panel.
>> The timing of the stream from the computer to the DICE is synthesized
>> according to the rules in the AMDTP spec (I hope); this was originally
>> written for devices based on the OXFW970 chip. (It's synchronized to
>> the FireWire bus clock.)
This parenthesis is very misleading; what I should have said is that the
driver computes the SYT timestamps so that the stream's sample clock is
effectively synchronized to the bus clock. These OXFW970-based devices
are playback-only and work the same as DICEs with AVS-SYT clock source,
i.e., they should also be able to be synchronized to any other device.
>> ARX1 appears to work fine with my DesktopKonnekt6, but I've never looked
>> at the error counters.
>
> Right, hmm, having scanned the AMDTP (IEC 61883-6) in detail raises some
> confusion now. Up till now I was under the impression that using AVS-SYT
> as DICE's clock source is only an option to sync firewire bus slave
> devices to a clock master device on the same bus.
And this clock master could be either another device that generates SYT
timestamps based on its own internal clock, or a computer that just
computes the SYTs. (AFAICT the Windows/OSX DICE drivers don't implement
the second case. An 'invented' clock isn't useful except for the
playback-only devices mentioned above where there just isn't any other
clock.)
Regards,
Clemens
next prev parent reply other threads:[~2011-11-04 8:16 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <9C332D0B-5292-498F-B0EE-2A753C36C989@weiss.ch>
2011-11-04 0:40 ` ALSA firewire kernel branch: snd_dice enhancements Rolf Anderegg
2011-11-04 8:17 ` Clemens Ladisch [this message]
[not found] <FC670913-F529-4E9B-8BB8-151227FA463E@weiss.ch>
2011-11-02 18:52 ` Rolf Anderegg
2011-11-02 20:19 ` Clemens Ladisch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EB39FAE.40309@ladisch.de \
--to=clemens@ladisch.de \
--cc=Uli.Franke@weiss.ch \
--cc=alsa-devel@alsa-project.org \
--cc=briank@tctechnologies.tc \
--cc=ffado-devel@lists.sourceforge.net \
--cc=rolf.anderegg@weiss.ch \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.