From: Adrian K. <ad...@dr...> - 2010-11-03 17:17:35
|
On Wed, Nov 03, 2010 at 04:27:25PM +0000, Matthew Robbetts wrote: > > When the device is used at 48K (or less) the system setup reports 17 In > > and Out devices. > > 8 Analog, 8 Digital and 1 MIDI = 17 Ports. > > > > However when it is used at 96K it reports less devices for In and Out. > > 8 Analog, 4 Digital and 1 MIDI = 13 Ports. > > <snip> > > I'm unsure about the rest, but for this point, might it not be that > because its an ADAT connection, at 96kHz there actually *are* half the > number of channels? I believe the RME PCI cards' firmware/ALSA drivers > behave this way also: at double- and quad-rate samplerates, the cards > literally have less channels of I/O. Sure, that's SMUX, two ADAT channels are combined into one. Given that the audio interface does the de-muxing, it will only return 13 instead of 17 channels (four are "missing"). If the channels are delivered as is, the driver would need to demux it. But in this case, every other sample on each non-combined channel would be useless. Euan could tell for sure if he applies his hack and checks the input of an ADAT channel (loopback would probably be sufficient if he doesn't own an ADAT converter). If it's sane, then packets->dbs should be 13 instead of 17. If not, then the echo firmware might be right and dbs is really 17. Euan: What if you tweak m_dimension to be 17 in both cases? This is probably done in dice_avdevice.cpp, the nb_channels argument in line 845. Though ADAT output might still be crippled and an incorrect number of channels would be reported to jackd, it might give you transparently working sample rates. If you'd still hit the failing assertion, then it's probably more sane to propagate a dbs parameter to the stream processor and sanitize packet->dbs in AmdtpReceiveStreamProcessor::processPacketHeader. According to Pieter, this AM824 streaming is implemented in hardware, it's a chip. So I tend to say that the CIP is correct and it's all about special-casing the physical amount of channels, let's say 17 on the wire, but some of the ADAT channels not being used. (I had something similar with the Alesis io14, the device announced more ARX than really used) Cheerio PS: I have no idea what I'm talking about. The last time I looked at AM824 streaming dates back several years. -- mail: ad...@th... http://adi.thur.de PGP/GPG: key via keyserver |