I have a Audient id44 audio interface connected by USB to an Ubuntu computer with low-latency kernel. It basically works (sound goes in and out), but is unusable because I'm getting lost samples in my output waveforms. There are perhaps three or so audible errors every ten seconds. I do not know if there are errors in the input yet. It's stock Ubuntu Studio, so should be optimised for sound, interrupt latencies and so on. The id44 generally gets pretty good reviews, here's Sound on Sound link
My question: does this look like some kind of buffer size parameter error which I could adjust? Or does this look like some kind of bug? My guess is this is somewhere in ALSA, I believe snd_usb_audio
, but I am grateful for any pointers for where to look more precisely and how to characterise the problem.
I have a lot of experience with Unix/Linux, including device drivers, but not really any experience with the sound system. Please let me know if the information below needs adding to in any way.
While playing a 440 Hz sinewave, these are what I was able to see on the oscilloscope:
aplay
, VLC
, or ardour
Bus 002 Device 003: ID 2708:0005 Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize0 64 idVendor 0x2708 idProduct 0x0005 bcdDevice 1.04 iManufacturer 1 Audient iProduct 3 Audient iD44 iSerial 0 bNumConfigurations 2 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 727 bNumInterfaces 5 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 0mA Interface Association: bLength 8 bDescriptorType 11 bFirstInterface 0 bInterfaceCount 3 bFunctionClass 1 Audio bFunctionSubClass 0 bFunctionProtocol 32 iFunction 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 32 iInterface 3 Audient iD44 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 1 (HEADER) bcdADC 2.00 bCategory 8 wTotalLength 502 bmControl 0x00 AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 41 bmAttributes 0x03 Internal programmable Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 9 Audient Internal Clock AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 44 bmAttributes 0x00 External Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 10 Audient Optical Input 1 Clock AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 45 bmAttributes 0x00 External Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 11 Audient Optical Input 2 Clock AudioControl Interface Descriptor: bLength 10 bDescriptorType 36 bDescriptorSubtype 11 (CLOCK_SELECTOR) bUnitID 40 bNrInPins 3 baCSourceID( 0) 41 baCSourceID( 1) 44 baCSourceID( 2) 45 bmControls 0x03 Clock Selector Control (read/write) iClockSelector 8 Audient Clock Selector AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 2 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bCSourceID 40 bNrChannels 24 bmChannelConfig 0x00000000 bmControls 0x0000 iChannelNames 13 Analogue 1 iTerminal 6 Audient iD44 AudioControl Interface Descriptor: bLength 106 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 10 bSourceID 51 bmaControls( 0) 0x00000000 bmaControls( 1) 0x00000000 bmaControls( 2) 0x00000000 bmaControls( 3) 0x00000000 bmaControls( 4) 0x00000000 bmaControls( 5) 0x00000000 bmaControls( 6) 0x00000000 bmaControls( 7) 0x00000000 bmaControls( 8) 0x00000000 bmaControls( 9) 0x00000000 bmaControls(10) 0x00000000 bmaControls(11) 0x00000000 bmaControls(12) 0x00000000 bmaControls(13) 0x00000000 bmaControls(14) 0x00000000 bmaControls(15) 0x00000000 bmaControls(16) 0x00000000 bmaControls(17) 0x00000000 bmaControls(18) 0x00000000 bmaControls(19) 0x00000000 bmaControls(20) 0x00000000 bmaControls(21) 0x00000000 bmaControls(22) 0x00000000 bmaControls(23) 0x00000000 bmaControls(24) 0x00000000 iFeature 0 AudioControl Interface Descriptor: bLength 12 bDescriptorType 36 bDescriptorSubtype 3 (OUTPUT_TERMINAL) bTerminalID 20 wTerminalType 0x0301 Speaker bAssocTerminal 0 bSourceID 10 bCSourceID 40 bmControls 0x0000 iTerminal 0 AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 1 wTerminalType 0x0201 Microphone bAssocTerminal 0 bCSourceID 40 bNrChannels 20 bmChannelConfig 0x00000000 bmControls 0x0000 iChannelNames 37 Analogue 1 iTerminal 0 AudioControl Interface Descriptor: bLength 21 bDescriptorType 36 bDescriptorSubtype 9 (EXTENSION_UNIT) Warning: Descriptor too short bUnitID 51 wExtensionCode 0 bNrPins 6 baSourceID( 0) 2 baSourceID( 1) 1 baSourceID( 2) 12 baSourceID( 3) 13 baSourceID( 4) 54 baSourceID( 5) 55 bNrChannels 24 wChannelConfig 0 iChannelNames 0 bmControls 0x00 iExtension 90 (error) AudioControl Interface Descriptor: bLength 90 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 11 bSourceID 1 bmaControls( 0) 0x00000000 bmaControls( 1) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 2) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 3) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 4) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 5) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 6) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 7) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 8) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls( 9) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(10) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(11) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(12) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(13) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(14) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(15) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(16) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(17) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(18) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(19) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) bmaControls(20) 0x03300000 Input gain Control (read/write) Phase inverter Control (read/write) iFeature 0 AudioControl Interface Descriptor: bLength 12 bDescriptorType 36 bDescriptorSubtype 3 (OUTPUT_TERMINAL) bTerminalID 22 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bSourceID 11 bCSourceID 40 bmControls 0x0000 iTerminal 7 Audient iD44 AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 9 (EXTENSION_UNIT) Warning: Descriptor too short bUnitID 50 wExtensionCode 0 bNrPins 2 baSourceID( 0) 2 baSourceID( 1) 1 bNrChannels 30 wChannelConfig 0 iChannelNames 0 bmControls 0x00 iExtension 44 ADAT-4 AudioControl Interface Descriptor: bLength 44 bDescriptorType 36 bDescriptorSubtype 4 (MIXER_UNIT) bUnitID 60 bNrPins 1 baSourceID( 0) 50 bNrChannels 8 bmChannelConfig 0x00000000 iChannelNames 57 Mix 1 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff bmControls 00 iMixer 0 AudioControl Interface Descriptor: bLength 22 bDescriptorType 36 bDescriptorSubtype 4 (MIXER_UNIT) bUnitID 61 bNrPins 1 baSourceID( 0) 50 bNrChannels 2 bmChannelConfig 0x00000000 iChannelNames 65 Mix 9 ff ff ff ff ff ff ff ff bmControls 00 iMixer 0 AudioControl Interface Descriptor: bLength 42 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 12 bSourceID 60 bmaControls( 0) 0x00000000 bmaControls( 1) 0x0000000c Volume Control (read/write) ... bmaControls( 8) 0x0000000c Volume Control (read/write) iFeature 0 AudioControl Interface Descriptor: bLength 18 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 13 bSourceID 61 bmaControls( 0) 0x00000000 bmaControls( 1) 0x0000000c Volume Control (read/write) bmaControls( 2) 0x0000000c Volume Control (read/write) iFeature 0 AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 9 (EXTENSION_UNIT) Warning: Descriptor too short bUnitID 55 wExtensionCode 2 bNrPins 2 baSourceID( 0) 12 baSourceID( 1) 13 bNrChannels 5 wChannelConfig 0 iChannelNames 0 bmControls 0x00 iExtension 17 Analogue 5 AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 9 (EXTENSION_UNIT) Warning: Descriptor too short bUnitID 54 wExtensionCode 1 bNrPins 2 baSourceID( 0) 12 baSourceID( 1) 13 bNrChannels 6 wChannelConfig 0 iChannelNames 0 bmControls 0x00 iExtension 8 Audient Clock Selector Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0006 1x 6 bytes bInterval 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 32 iInterface 4 Audient iD44 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 32 iInterface 4 Audient iD44 AudioStreaming Interface Descriptor: bLength 16 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 2 bmControls 0x00 bFormatType 1 bmFormats 0x00000001 PCM bNrChannels 24 bmChannelConfig 0x00000000 iChannelNames 13 Analogue 1 AudioStreaming Interface Descriptor: bLength 6 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bSubslotSize 3 bBitResolution 24 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 5 Transfer Type Isochronous Synch Type Asynchronous Usage Type Data wMaxPacketSize 0x03a8 1x 936 bytes bInterval 1 AudioControl Endpoint Descriptor: bLength 8 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x00 bmControls 0x00 bLockDelayUnits 2 Decoded PCM samples wLockDelay 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 2 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 32 iInterface 4 Audient iD44 AudioStreaming Interface Descriptor: bLength 16 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 2 bmControls 0x00 bFormatType 1 bmFormats 0x00000001 PCM bNrChannels 24 bmChannelConfig 0x00000000 iChannelNames 13 Analogue 1 AudioStreaming Interface Descriptor: bLength 6 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bSubslotSize 2 bBitResolution 16 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 5 Transfer Type Isochronous Synch Type Asynchronous Usage Type Data wMaxPacketSize 0x0270 1x 624 bytes bInterval 1 AudioControl Endpoint Descriptor: bLength 8 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x00 bmControls 0x00 bLockDelayUnits 2 Decoded PCM samples wLockDelay 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 32 iInterface 5 Audient iD44 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 32 iInterface 5 Audient iD44 AudioStreaming Interface Descriptor: bLength 16 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 22 bmControls 0x00 bFormatType 1 bmFormats 0x00000001 PCM bNrChannels 20 bmChannelConfig 0x00000000 iChannelNames 37 Analogue 1 AudioStreaming Interface Descriptor: bLength 6 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bSubslotSize 3 bBitResolution 24 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 37 Transfer Type Isochronous Synch Type Asynchronous Usage Type Implicit feedback Data wMaxPacketSize 0x030c 1x 780 bytes bInterval 1 AudioControl Endpoint Descriptor: bLength 8 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x00 bmControls 0x00 bLockDelayUnits 2 Decoded PCM samples wLockDelay 8 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 3 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 254 Application Specific Interface bInterfaceSubClass 1 Device Firmware Update bInterfaceProtocol 1 iInterface 12 Audient DFU Device Firmware Upgrade Interface Descriptor: bLength 9 bDescriptorType 33 bmAttributes 7 Will Not Detach Manifestation Tolerant Upload Supported Download Supported wDetachTimeout 250 milliseconds wTransferSize 64 bytes bcdDFUVersion 1.10 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 4 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 0 No Subclass bInterfaceProtocol 0 None iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.10 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 52 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 8 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 727 bNumInterfaces 5 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 0mA Interface Association: bLength 8 bDescriptorType 11 bFirstInterface 0 bInterfaceCount 3 bFunctionClass 1 Audio bFunctionSubClass 0 bFunctionProtocol 32 iFunction 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 32 iInterface 3 Audient iD44 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 1 (HEADER) bcdADC 2.00 bCategory 8 wTotalLength 502 bmControl 0x00 AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 41 bmAttributes 0x03 Internal programmable Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 9 Audient Internal Clock AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 44 bmAttributes 0x00 External Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 10 Audient Optical Input 1 Clock AudioControl Interface Descriptor: bLength 8 bDescriptorType 36 bDescriptorSubtype 10 (CLOCK_SOURCE) bClockID 45 bmAttributes 0x00 External Clock bmControls 0x07 Clock Frequency Control (read/write) Clock Validity Control (read-only) bAssocTerminal 0 iClockSource 11 Audient Optical Input 2 Clock AudioControl Interface Descriptor: bLength 10 bDescriptorType 36 bDescriptorSubtype 11 (CLOCK_SELECTOR) bUnitID 40 bNrInPins 3 baCSourceID( 0) 41 baCSourceID( 1) 44 baCSourceID( 2) 45 bmControls 0x03 Clock Selector Control (read/write) iClockSelector 8 Audient Clock Selector AudioControl Interface Descriptor: bLength 17 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 2 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bCSourceID 40 bNrChannels 24 bmChannelConfig 0x00000000 bmControls 0x0000 iChannelNames 13 Analogue 1 iTerminal 6 Audient iD44 AudioControl Interface Descriptor: bLength 106 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 10 bSourceID 51 bmaControls( 0) 0x00000000 ... truncated per stackoverflow limits
User contributions licensed under CC BY-SA 3.0