Re: AudioQuest DragonFly v1.0 DAC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Adam, list,

My info way below...


On Sun, Aug 3, 2014 at 11:45 PM, chris hermansen <clhermansen@xxxxxxxxx> wrote:

Hi Adam and list,

On Aug 3, 2014 11:11 PM, "Adam Khan" <trinsnet@xxxxxxxxx> wrote:
>
>
> On Sat, 2 Aug 2014 23:59:18 -0700
> chris hermansen <clhermansen@xxxxxxxxx> wrote:
>
> > Adam, list;
> >
> > On Aug 2, 2014 11:13 PM, "Adam Khan" <trinsnet@xxxxxxxxx> wrote:
> > >
> > > Hello,
> > >
> > > I'm trying to get an AudioQuest DragonFly v1.0 DAC to work from
> > > mplayer2
> > with ALSA.
> > >
> > > uname -srv
> > > Linux 3.14-2-amd64 #1 SMP Debian 3.14.13-2 (2014-07-24)
> > >
> > > dmesg after plugging in the device:
> > > [85853.148104] usb 4-2: new full-speed USB device number 9 using
> > > uhci_hcd [85853.542494] usb 4-2: New USB device found,
> > > idVendor=21b4,
> > idProduct=0081
> > > [85853.542505] usb 4-2: New USB device strings: Mfr=1, Product=2,
> > SerialNumber=3
> > > [85853.542513] usb 4-2: Product: AudioQuest DragonFly
> > > [85853.542519] usb 4-2: Manufacturer: AudioQuest inc.
> > > [85853.542525] usb 4-2: SerialNumber: (C) 2011 Wavelength Audio,
> > > ltd. [85853.567454] 9:1:1: cannot get freq at ep 0x1
> > >
> > > aplay -l
> > > card 1: DragonFly [AudioQuest DragonFly], device 0: USB Audio [USB
> > > Audio] Subdevices: 1/1
> > >   Subdevice #0: subdevice #0
> > >
> >
> > Adam, I use the AQ Dragonfly just fine with Ubuntu. It worked in
> > 13.04, 13.10 and 14.04.
> >
> > I use it with Guayadeque, which allows specifying the playback chain
> > to a reasonable degree.
> I looked a bit into Guayadeque, thanks. I took your other suggestion
> first and went back to basics with wave and aplay, see results below.
> >
> > The device I connect to is plughw, because as you note the Dragonfly
> > only accepts 24 bit data.
> >
> > I have never tried > 96kHz but it works fine at 44.1, 48, 88.2 and 96.
> >
> > I suggest you try the plughw device. Also you might try it with aplay
> > and some wav files before you jump into mplayer.
> I tested wave files with 'aplay -D plughw:DragonFly <file>.wav'
> 44.1 kHz, 16 bit signed LE - broken (silence)
> 48 kHz, 24 bit signed LE - works
> 88.2 kHz, 24 bit signed LE - broken (silence and intermittent static)
> >
> > If none of that works for you, I will carefully inspect my
> > configuration so that you can tell what is different.
> I created the file /etc/modprobe.d/alsa_index.conf and added two lines:
> options snd-usb-audio index=0
> options snd_hda_intel index=1
> I can issue aplay <file>.wav for any file and it works, but the DAC
> *always* uses 48 kHz, 24 bit regardless of the input format so
> something is resampling, which I do not want.
> >
> > Good luck!
> Thank you. Which kernel are you using? I can test with an Ubuntu Live
> USB instance to see if the DAC behaves any differently.
>
> Here is output from lsusb -v
> (it does list 4 sampling rates):
> Bus 004 Device 005: ID 21b4:0081
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               1.00
>   bDeviceClass            0 (Defined at Interface level)
>   bDeviceSubClass         0
>   bDeviceProtocol         0
>   bMaxPacketSize0         8
>   idVendor           0x21b4
>   idProduct          0x0081
>   bcdDevice            1.0c
>   iManufacturer           1 AudioQuest inc.
>   iProduct                2 AudioQuest DragonFly
>   iSerial                 3 (C) 2011 Wavelength Audio, ltd.
>   bNumConfigurations      1
>   Configuration Descriptor:
>     bLength                 9
>     bDescriptorType         2
>     wTotalLength          131
>     bNumInterfaces          2
>     bConfigurationValue     1
>     iConfiguration          0
>     bmAttributes         0x80
>       (Bus Powered)
>     MaxPower              200mA
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        0
>       bAlternateSetting       0
>       bNumEndpoints           0
>       bInterfaceClass         1 Audio
>       bInterfaceSubClass      1 Control Device
>       bInterfaceProtocol      0
>       iInterface              0
>       AudioControl Interface Descriptor:
>         bLength                 9
>         bDescriptorType        36
>         bDescriptorSubtype      1 (HEADER)
>         bcdADC               1.00
>         wTotalLength           43
>         bInCollection           1
>         baInterfaceNr( 0)       1
>       AudioControl Interface Descriptor:
>         bLength                12
>         bDescriptorType        36
>         bDescriptorSubtype      2 (INPUT_TERMINAL)
>         bTerminalID             5
>         wTerminalType      0x0101 USB Streaming
>         bAssocTerminal          0
>         bNrChannels             2
>         wChannelConfig     0x0003
>           Left Front (L)
>           Right Front (R)
>         iChannelNames           0
>         iTerminal               0
>       AudioControl Interface Descriptor:
>         bLength                13
>         bDescriptorType        36
>         bDescriptorSubtype      6 (FEATURE_UNIT)
>         bUnitID                 7
>         bSourceID               5
>         bControlSize            2
>         bmaControls( 0)      0x01
>         bmaControls( 0)      0x00
>           Mute Control
>         bmaControls( 1)      0x02
>         bmaControls( 1)      0x00
>           Volume Control
>         bmaControls( 2)      0x02
>         bmaControls( 2)      0x00
>           Volume Control
>         iFeature                0
>       AudioControl Interface Descriptor:
>         bLength                 9
>         bDescriptorType        36
>         bDescriptorSubtype      3 (OUTPUT_TERMINAL)
>         bTerminalID             8
>         wTerminalType      0x0301 Speaker
>         bAssocTerminal          0
>         bSourceID               7
>         iTerminal               0
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        1
>       bAlternateSetting       0
>       bNumEndpoints           0
>       bInterfaceClass         1 Audio
>       bInterfaceSubClass      2 Streaming
>       bInterfaceProtocol      0
>       iInterface              0
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        1
>       bAlternateSetting       1
>       bNumEndpoints           2
>       bInterfaceClass         1 Audio
>       bInterfaceSubClass      2 Streaming
>       bInterfaceProtocol      0
>       iInterface              0
>       AudioStreaming Interface Descriptor:
>         bLength                 7
>         bDescriptorType        36
>         bDescriptorSubtype      1 (AS_GENERAL)
>         bTerminalLink           5
>         bDelay                  1 frames
>         wFormatTag              1 PCM
>       AudioStreaming Interface Descriptor:
>         bLength                20
>         bDescriptorType        36
>         bDescriptorSubtype      1 (AS_GENERAL)
>         bTerminalLink           5
>         bDelay                  1 frames
>         wFormatTag              1 PCM
>       AudioStreaming Interface Descriptor:
>         bLength                20
>         bDescriptorType        36
>         bDescriptorSubtype      2 (FORMAT_TYPE)
>         bFormatType             1 (FORMAT_TYPE_I)
>         bNrChannels             2
>         bSubframeSize           3
>         bBitResolution         24
>         bSamFreqType            4 Discrete
>         tSamFreq[ 0]        44100
>         tSamFreq[ 1]        48000
>         tSamFreq[ 2]        88200
>         tSamFreq[ 3]        96000
>       Endpoint Descriptor:
>         bLength                 9
>         bDescriptorType         5
>         bEndpointAddress     0x01  EP 1 OUT
>         bmAttributes            5
>           Transfer Type            Isochronous
>           Synch Type               Asynchronous
>           Usage Type               Data
>         wMaxPacketSize     0x024c  1x 588 bytes
>         bInterval               1
>         bRefresh                0
>         bSynchAddress         131
>         AudioControl Endpoint Descriptor:
>           bLength                 7
>           bDescriptorType        37
>           bDescriptorSubtype      1 (EP_GENERAL)
>           bmAttributes         0x01
>             Sampling Frequency
>           bLockDelayUnits         0 Undefined
>           wLockDelay              0 Undefined
>       Endpoint Descriptor:
>         bLength                 9
>         bDescriptorType         5
>         bEndpointAddress     0x83  EP 3 IN
>         bmAttributes            1
>           Transfer Type            Isochronous
>           Synch Type               None
>           Usage Type               Data
>         wMaxPacketSize     0x0003  1x 3 bytes
>         bInterval               1
>         bRefresh                5
>         bSynchAddress           0
> Device Status:     0x0001
>   Self Powered

I will get you details in my morning about 9 hours hence.

Stay tuned...


As far as I can tell, my lsusb -v is the same as yours, but here it is anyway

Bus 003 Device 002: ID 21b4:0081 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x21b4
  idProduct          0x0081
  bcdDevice            1.0c
  iManufacturer           1 AudioQuest inc.
  iProduct                2 AudioQuest DragonFly
  iSerial                 3 (C) 2011 Wavelength Audio, ltd.
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          131
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0
      iInterface              0
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           43
        bInCollection           1
        baInterfaceNr( 0)       1
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             5
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0
        iTerminal               0
      AudioControl Interface Descriptor:
        bLength                13
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                 7
        bSourceID               5
        bControlSize            2
        bmaControls( 0)      0x01
        bmaControls( 0)      0x00
          Mute Control
        bmaControls( 1)      0x02
        bmaControls( 1)      0x00
          Volume Control
        bmaControls( 2)      0x02
        bmaControls( 2)      0x00
          Volume Control
        iFeature                0
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             8
        wTerminalType      0x0301 Speaker
        bAssocTerminal          0
        bSourceID               7
        iTerminal               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0
      iInterface              0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0
      iInterface              0
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           5
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                20
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           3
        bBitResolution         24
        bSamFreqType            4 Discrete
        tSamFreq[ 0]        44100
        tSamFreq[ 1]        48000
        tSamFreq[ 2]        88200
        tSamFreq[ 3]        96000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x024c  1x 588 bytes
        bInterval               1
        bRefresh                0
        bSynchAddress         131
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0003  1x 3 bytes
        bInterval               1
        bRefresh                5
        bSynchAddress           0
Device Status:     0x0001
  Self Powered

As to the version of my kernel etc here is my uname -a

Linux avignon 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

I tried my Dragonfly just now on several different bit rates and word depths (using Guayadeque), and I can confirm it's working on 44.1/16, 48/24, 88.2/24 and 96/24.  Here is the output from "cat /proc/asound/Dragonfly/stream0 for the various files:

Playing 44.1/16 file

AudioQuest inc. AudioQuest DragonFly at usb-0000:00:14.0-2, full speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 336
    Momentary freq = 44100 Hz (0x2c.1998)
    Feedback Format = 10.14
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 OUT (ASYNC)
    Rates: 44100, 48000, 88200, 96000

Playing 96/24 file

AudioQuest inc. AudioQuest DragonFly at usb-0000:00:14.0-2, full speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 588
    Momentary freq = 96000 Hz (0x60.0000)
    Feedback Format = 10.14
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 OUT (ASYNC)
    Rates: 44100, 48000, 88200, 96000

Playing 88.2/24 file

AudioQuest inc. AudioQuest DragonFly at usb-0000:00:14.0-2, full speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 588
    Momentary freq = 88250 Hz (0x58.4000)
    Feedback Format = 10.14
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 OUT (ASYNC)
    Rates: 44100, 48000, 88200, 96000

Playing 48/24 file

AudioQuest inc. AudioQuest DragonFly at usb-0000:00:14.0-2, full speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 365
    Momentary freq = 48000 Hz (0x30.0000)
    Feedback Format = 10.14
  Interface 1
    Altset 1
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 OUT (ASYNC)
    Rates: 44100, 48000, 88200, 96000

You will note the 44.1/16 file shows up as S24_3LE due to the use of plughw.

Here is the device string I use in Guayadeque

plughw:CARD=DragonFly,DEV=0

There is one problem I have using the DragonFly on my System76 laptop (a late model Acer in disguise) - it does not work properly when hooked up to the USB-2 port, but works fine hooked up to either of the USB-3 ports.

When I say "does not work properly" I mean that 44.1/16 plays fine but higher rates don't - I get nasty static buzzing instead of music.

I don't know why this is, but I spent a long time trying to figure out what was "wrong" with my configuration, the kernel, the Alsa driver, etc etc when I finally in desperation plugged the card into one of the other USB ports and POOF all worked fine.

So, if you have a different set of USB ports or a different machine to try, you might want to give that a go first.

Beyond that, I have a completely vanilla configuration (no messing with Alsa configuration files).  I continue to let Pulse Audio live on my system, and the default sound card is the Intel stuff delivered with the machine.  So all alerts and system audio go through that subsystem, and only Guayadeque uses the Dragonfly.

Also, generally I plug in the Dragonfly after the machine is booted, so all other audio configuration is probably pretty stable and configured by the time that happens.

I don't know if you're running Pulse but if so it may be part of your problem, in conjunction with your reconfiguration of Alsa.  If you are running Pulse, you may want to make it stop while you are testing.  Also, if you intend to run Pulse to control your DragonFly, remember that it resamples to a target bit rate / depth for any file not already in that format (ie you can't use it for a music collection that contains different bit rates and depths) - AFAIK.

Let me know if you want me to collect any more data for you from my end.

--
Chris Hermansen · clhermansen "at" gmail "dot" com

C'est ma façon de parler.
------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user

[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux