I do not know (and forget) many things.
% arecord -l **** List of CAPTURE Hardware Devices **** card 0: MID [HDA Intel MID], device 0: ALC889 Analog [ALC889 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: MID [HDA Intel MID], device 2: ALC889 Alt Analog [ALC889 Alt Analog] Subdevices: 2/2 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 card 2: CODEC [USB Audio CODEC], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0
O.K. Now my device (IC-7410) is hw:2,0. (It depends on the sequence you power on your devices.)
% sprigmm /dev/ttyUSB1 hw:2,0 16000 1 hw:0,0 48000 2 <- note the bitrate
Run my program with the bitrate of hw:2,0 to be 16000bps.
% cat /proc/asound/card2/stream0 Burr-Brown from TI USB Audio CODEC at usb-0000:00:1a.0-1.3.1, full speed : USB Audio Playback: Status: Stop Interface 1 Altset 1 Format: S16_LE Channels: 2 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Interface 1 Altset 2 Format: S16_LE Channels: 1 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Interface 1 Altset 3 Format: S8 Channels: 2 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Interface 1 Altset 4 Format: S8 Channels: 1 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Interface 1 Altset 5 Format: U8 Channels: 2 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Interface 1 Altset 6 Format: U8 Channels: 1 Endpoint: 2 OUT (ADAPTIVE) Rates: 32000, 44100, 48000 Capture: Status: Running <- ### this is it! ### Interface = 2 Altset = 10 Packet Size = 34 Momentary freq = 16000 Hz (0x10.0000) Interface 2 Altset 1 Format: S16_LE Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 48000 Interface 2 Altset 2 Format: S16_LE Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 48000 Interface 2 Altset 3 Format: S16_LE Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 44100 Interface 2 Altset 4 Format: S16_LE Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 44100 Interface 2 Altset 5 Format: S16_LE Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 32000 Interface 2 Altset 6 Format: S16_LE Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 32000 Interface 2 Altset 7 Format: S16_LE Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 22050 Interface 2 Altset 8 Format: S16_LE Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 22050 Interface 2 Altset 9 Format: S16_LE Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 16000 Interface 2 Altset 10 Format: S16_LE Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 16000 Interface 2 Altset 11 Format: S8 Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 16000 Interface 2 Altset 12 Format: S8 Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 16000 Interface 2 Altset 13 Format: S8 Channels: 2 Endpoint: 4 IN (ASYNC) Rates: 8000 Interface 2 Altset 14 Format: S8 Channels: 1 Endpoint: 4 IN (ASYNC) Rates: 8000 Interface 2 Altset 15 Format: S16_LE Channels: 2 Endpoint: 4 IN (SYNC) Rates: 11025 Interface 2 Altset 16 Format: S16_LE Channels: 1 Endpoint: 4 IN (SYNC) Rates: 11025 Interface 2 Altset 17 Format: S8 Channels: 2 Endpoint: 4 IN (SYNC) Rates: 11025 Interface 2 Altset 18 Format: S8 Channels: 1 Endpoint: 4 IN (SYNC) Rates: 11025
http://alsa.opensrc.org/Proc_asound_documentation
See the first several lines after the “Capture:” line.