[LAD] RME TCO option
adi at drcomp.erfurt.thur.de
Sun Aug 25 20:33:08 UTC 2013
On Fri, Aug 23, 2013 at 12:48:22PM +0100, Chris Goddard wrote:
> Hi Adrian
Let me CC Robin and LAD on this one.
> Hope you don't mind me contacting you directly, but I have a
> question regarding the RME TCO option and how it is supposed to
> work. I saw your name on some ALSA commits relating to the TCO
> recently and thought you would at least be the right person to start
> by asking.
> The TCO can read ltc, but once it has done that how does it
> communicate that time information tothe user space ? If I was, say,
> running Ardour and wanted it to chase this ltc what would Ardour
> need to do to make use of it ?
To be honest: I don't know, I've only fixed the kernel side of it. ;)
There are 1.5 ways to read the TCO's LTC output from userspace:
1. Via ioctl. Needs currently unreleased alsa-lib containing my
commit 4b169b05b48f4ea0196879b62b8c3fa5b050e806 and newest driver,
Takashi's sound-2.6 is fine.
Then, use SNDRV_HDSPM_IOCTL_GET_LTC. To the best of my knowledge,
that's the proper way to read the LTC and it's what I've fixed.
2. If the TCO is present, we create a MIDI output port sending the
MTC. At least I think it's MTC. Since the data is directly
generated by the TCO, the driver has no influence on it. No idea
if it helps in your case if you set this port as the MTC input
port in Ardour.
So it looks like for proper LTC support, we either need some converter
(maybe there already is one?) or ardour needs to be augmented. I have
absolutely no idea what the preferred approach is, but I'm sure Robin or
Maybe it's easiest to add another input path to one of Robin's LTC libs
that just runs the appropriate ioctl and parses the output. Since the
LTC is already decoded by the TCO, it should be pretty straight-forward.
Oh, and last not least: I don't own a TCO, so I cannot really test
anything. Fortunately, the ioctl is purely software, so a mockup should
do the trick.
mail: adi at thur.de http://adi.thur.de PGP/GPG: key via keyserver
More information about the Linux-audio-dev