On Wed 17 October 2012 01:04:13 Daniel Mack wrote:
On Oct 16, 2012 11:29 PM, "Jeffrey Barish" <jeff_barish@xxxxxxxxxxxxx> wrote: > > On Fri 28 September 2012 10:37:01 Daniel Mack wrote: > > On 28.09.2012 04:55, Jeffrey Barish wrote: > > > On Fri 28 September 2012 03:06:22 Daniel Mack wrote: > > >> (adding back the mailing list - please don't drop it in replies) > > > > > > Oops. My bad. > > > > > >> On 28.09.2012 02:43, Jeffrey Barish wrote: > > >>> On Fri 28 September 2012 02:02:05 you wrote: > > >>>> On 28.09.2012 01:56, Jeffrey Barish wrote: > > >>>>> I am using a USB DAC (HRT Music Streamer II) which operates in > > >>>>> asynchronous mode. It works perfectly at sample rates up to 48 kHz. > > >>>>> > > >>>>> When I go to 88.2 or 96, it works perfectly sometimes. Most of the > > >>>>> > > >>>>> time I get ticks. When it starts playing without ticks, it will > > >>>>> continue to play without ticks to the end of the track. A different > > >>>>> USB > > >>>>> DAC that operates in isochronous mode is able to play at the high > > >>>>> sample > > >>>>> rates without problem. > > >>>> > > >>>> Which kernel are you on? And please post the output of 'lsusb -v'. > > >>> > > >>> I am on the latest kernel, 3.2.0-31-generic > > >> > > >> That is not the latest kernel - we're currently close to the final > > >> version of 3.6, and the snd-usb driver has seen major overhaul in the > > >> last versions. > > >> > > >> So it would be interesting to know whether you see these effects when > > >> > > >> running a kernel built from this git: > > >> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > > >> > > >> Daniel > > > > > > You seem to have me confused with someone who knows what he's doing. I > > > meant that 3.2.0-31-generic was the latest kernel available from Ubuntu. > > > You're proposing what sounds like a worthwhile experiment considering the > > > major overhaul to the snd-usb driver, but I've never upgraded a kernel > > > except from deb packages, so I'm quaking in my boots just thinking about > > > it. Ooh, and I bet you're telling me that I would have to make the > > > kernel. More quaking. > > You could as well just wait for the next ppa kernel and install that one > > form the package once it's there. > > > > http://kernel.ubuntu.com/~kernel-ppa/mainline/ > > > > There was unfortunately one small regression in the last versions that I > > just fixed, so be sure to wait for one more packaged release or even for > > 3.6-final. > > > > > Out of curiousity, are you aware of any specific characteristics of the > > > old > > > snd-usb driver that could account for what I am experiencing? > > > > No, but it would be way easier to have a look into that if it also > > happens with the current version :) > > > > > > Daniel > > Kernel 3.6.2-quantal does the same thing. > > When I interpose a USB hub between the computer and the USB DAC, the ticks go > away. Playback works perfectly at 96 kHz. However, at 88.2 kHz, I now get > occasional "blips" (instead of steady "ticks"). These symptoms point to > excessive delay in the control feedback loop, probably because of buffers in > the driver that are too big. If I wanted to take a look at the source code > for the driver to see whether I can find anything, where would I find it?
Here:
http://git.kernel.org/?p=linux/kernel/git/tiwai/sound.git;a=tree;f=sound/usb
Please don't hessitate to share any patches or questions.
I found something in the snd_usb_audio code (in endpoint.c) that could explain one of the problems I have observed (the ticks). I would normally test my theory by modifying the code. In this case, I would like to stick in a print statement to see what values are being assigned to certain variables. Unfortunately, I am too ignorant to do something even this trivial as I have never worked on kernel code. I think I am supposed to use printk, but beyond that I am lost. Can someone provide me with some directions? I need to know how to make the driver. To that end, I probably will have to install additional packages. After making the driver, I need to know how to install it over the existing driver.
Jeff |