On 07/07/14 07:31, Clemens Ladisch wrote: > David W. wrote: >> On 06/07/14 20:48, Clemens Ladisch wrote: >>> David W. wrote: >>>> arecord -D hw:1,0 -f S32_LE -c14 -r96000 -t wav test.wav >>>> Recording WAVE 'test.wav' : Signed 32 bit Little Endian, Rate 96000 Hz, Channels 14 >>>> arecord: pcm_read:2031: read error: Input/output error >>> >>> Immediately or after 10 seconds? >> >> After about 13 seconds. > > This means that the device did not return any error, but did not > transfer any samples either. > > Apparently, this device needs some vendor-specific magic to enable > recording. > I finally got round to examining some USB packets for this device. Hopefully the information to patch sound/usb/quirks-table.h with the necessary vendor-specific magic to enable recording and playback is somewhere below. I need some help for the actual patching of sound/usb/quirks-table.h though! amidi -l Dir Device Name IO hw:0,0,0 USB X-Session MIDI 1 I hw:0,0,1 USB X-Session MIDI 2 IO hw:2,0,0 TR-8 MIDI 1 # this device IO hw:2,0,1 TR-8 MIDI 2 # this device aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Pro [FastTrack Pro], device 0: USB Audio [USB Audio] Subdevices: 0/1 Subdevice #0: subdevice #0 card 0: Pro [FastTrack Pro], device 1: USB Audio [USB Audio #1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: TR8 [TR-8], device 0: USB Audio [USB Audio] # this device Subdevices: 1/1 Subdevice #0: subdevice #0 ./alsacap -d hw:2,0 *** Exploring configuration space of device 'hw:1,0' for playback *** 4 channels Sampling rate 96000 Hz Sample formats: S32_LE Significant bits: 32 Bus 002 Device 005: ID 0582:017c Roland Corp. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 0 bDeviceProtocol 255 bMaxPacketSize0 64 idVendor 0x0582 Roland Corp. idProduct 0x017c bcdDevice 1.00 iManufacturer 1 Roland iProduct 2 TR-8 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 176 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 0mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 0 iInterface 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 2 iInterface 0 # <06 24 F1 02 <inputs> <outputs>> from patch comment by Clemens Ladisch ** UNRECOGNIZED: 06 24 f1 01 00 00 # Audio OUT 4 channels? Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 2 iInterface 0 # seen in other Roland devices # http://ubuntuforums.org/archive/index.php/t-1905531.html ** UNRECOGNIZED: 07 24 01 01 00 01 00 ** UNRECOGNIZED: 0b 24 02 01 04 04 18 01 00 77 01 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x0d EP 13 OUT bmAttributes 5 Transfer Type Isochronous # audio Synch Type Asynchronous Usage Type Data # 4x 24-bit 96kHz == 56 bytes per 4 channels (or 32-bit?) wMaxPacketSize 0x00e0 1x 224 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 1 iInterface 0 # Audio IN: 14 channels? Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 2 bInterfaceProtocol 1 iInterface 0 ** UNRECOGNIZED: 07 24 01 07 00 01 00 ** UNRECOGNIZED: 0b 24 02 01 0e 04 18 01 00 77 01 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x8e EP 14 IN bmAttributes 37 Transfer Type Isochronous Synch Type Asynchronous Usage Type Implicit feedback Data # 14 channels x 56 bytes per transfer 96kHz, 24-bit? wMaxPacketSize 0x0310 1x 784 bytes bInterval 1 # MIDI? Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 3 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 3 bInterfaceProtocol 0 iInterface 0 # <06 24 F1 02 <inputs> <outputs>> 2 in 2 out ** UNRECOGNIZED: 06 24 f1 02 02 02 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 # MIDI: same endpoints needs Bulk AND Interrupt packet types? Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 3 bAlternateSetting 1 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 3 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x85 EP 5 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 1 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 0 bDeviceProtocol 255 bMaxPacketSize0 64 bNumConfigurations 1 can't get debug descriptor: Resource temporarily unavailable Device Status: 0x0001 Self Powered A summary of some USB packets during idle, start playback, stop playback, start recording, stop recording. Playback and record was probably only using a pair of stereo channels IIRC (maybe even one mono channel). I could do the same with all channels if that would be of any use. - at all times, polling seems to be 'Bulk or Interrupt Transfer' to Device Object FFFFFA800BBF1C00h (00000094) with I/O Request Packet FFFFFA800B97B830h - start playback: 'Select Interface', 'Ifc 1 / Alt 1' and 'Ifc 2 / Alt 1', Device Object: FFFFFA800BBF1C00h, I/O Request Packet: FFFFFA800778E780h 1x 'Create' using I/O Request Packet: FFFFFA800C7A2480h to Device Objects: FFFFFA800C060C20h (00000095) and FFFFFA800BE30600h (00000096) - during playback: lots of 'Isoch Transfer' to FFFFFA800BBF1C00h with nine different I/O Request Packets - stop playback: 'Select Interface', 'Ifc 1 / Alt 0' and 'Ifc 1 / Alt 0', Device Object: FFFFFA800BBF1C00h; I/O Request Packet: FFFFFA8007552810h 1x 'Close' using I/O Request Packet: FFFFFA800C7A2480h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h; some 'Cleanups' that return 'Invalid Device Request' - start recording: 'Select Interface', 'Ifc 1 / Alt 1' and 'Ifc 2 / Alt 1', Device Object: FFFFFA800BBF1C00h, I/O Request Packet: FFFFFA800778E780h 5x 'Create' using I/O Request Packet: FFFFFA800C0E9C60h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h 2x 'Create' using I/O Request Packet: FFFFFA800C60A010h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h 1x 'Create' using I/O Request Packet: FFFFFA800754F010h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h 2x 'Close' using I/O Request Packet: FFFFFA800C0E9C60h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h - during recording: lots of 'Isoch Transfer' to FFFFFA800BBF1C00h with nine different I/O Request Packets - stop recording: 'Select Interface', 'Ifc 1 / Alt 0' and 'Ifc 1 / Alt 0', Device Object: FFFFFA800BBF1C00h; I/O Request Packet: FFFFFA8007552810h 4x 'Close' using I/O Request Packet: FFFFFA8007543C60h to Device Objects: FFFFFA800C060C20h and FFFFFA800BE30600h many thanks to the devs! David W. ------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user