Bug 94482 - Incoming/recording sound volume much too soft/low when routed through USB audio
Summary: Incoming/recording sound volume much too soft/low when routed through USB audio
Status: RESOLVED MOVED
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: alsa (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-10 18:41 UTC by Susan Cragin
Modified: 2018-07-30 10:37 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
lsusb -vvvv with pulseaudio running and pureaudio usb attached (32.23 KB, text/plain)
2016-03-11 12:55 UTC, Susan Cragin
Details
lsusb after running arecord (35.53 KB, text/plain)
2016-03-13 14:07 UTC, Susan Cragin
Details
dmesg (57.07 KB, text/plain)
2016-05-02 12:33 UTC, Susan Cragin
Details

Description Susan Cragin 2016-03-10 18:41:41 UTC
I have a half-dozen USB audio cards, which I use primarily for speech recognition applications and video chat. They all behave about the same. 
The volume I hear from the other end is fine.
But the incoming volume, the volume of my voice, is set much too low. I have to speak loudly in a telephone conversation, and talk to my speech recognition as if it were across the room.
Google's speech recognition application is particularly problematic. 
If I use NaturallySpeaking running under wine, things are a bit better because the program compensates more. 
But the incoming speech recognition should be much more sensitive than it is, since users using voice/speech recognition do not want to strain their voices when using the product over a long period of time. 
Plus, it is rude to the other people in the room if I have to yell. 
It appears that the incoming sound level is set to record a garage band or the like, and not the human voice. 

Curiously, I get better recognition through a bluetooth telephone headset than I do through a wired (and expensive) Andrea Pureaudio USB and Speechware Fleximike. 

??
Comment 1 Raymond 2016-03-11 07:17:21 UTC
Can you post output of alsa-info.sh

lsusb -vvvv


Seem PCM capture source is not used by pulseaudio


https://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/src/modules/alsa/mixer/paths

USB Mixer: usb_id=0x08a8000d, ctrlif=0, ctlerr=0 Card: Andrea Electronics Andrea PureAudio USB-SA Headset at usb-0000:00:1d.0-1.4, ful 
Unit: 8 Control: name="PCM Capture Source", index=0 Info: id=8, control=0, cmask=0x0, channels=1, type="U8" Volume: min=1, max=3, dBmin=0, dBmax=0 
Unit: 9 Control: name="Loudness", index=0 Info: id=9, control=10, cmask=0x0, channels=1, type="BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 
Unit: 9 Control: name="PCM Playback Volume", index=0 Info: id=9, control=2, cmask=0x3, channels=2, type="S16" Volume: min=-9472, max=0, dBmin=-3700, dBmax=0 
Unit: 9 Control: name="PCM Playback Switch", index=0 Info: id=9, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 
Unit: 10 Control: name="Mic Capture Volume", index=0 Info: id=10, control=2, cmask=0x3, channels=2, type="S16" Volume: min=-4096, max=2816, dBmin=-1600, dBmax=1100 
Unit: 10 Control: name="Mic Capture Switch", index=0 Info: id=10, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 Unit: 11 Control: name="Line Capture Volume", index=0 Info: id=11, control=2, cmask=0x3, channels=2, type="S16" Volume: min=-4096, max=2816, dBmin=-1600, dBmax=1100 Unit: 11 Control: name="Line Capture Switch", index=0 Info: id=11, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 Unit: 12 Control: name="IEC958 In Capture Switch", index=0 Info: id=12, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0
Comment 2 Susan Cragin 2016-03-11 12:55:49 UTC
Created attachment 122221 [details]
lsusb -vvvv with pulseaudio running and pureaudio usb attached
Comment 3 Susan Cragin 2016-03-11 13:00:15 UTC
More information. 

I have .asoundrc set to show my USB card as default. 

I can also test with the following: 

Xonar U3
SpeechMatic USB MultiAdapter (This is supposed to be the gold standard in speech recognition, producing a clear and loud sound even from a very low voice.)

I also have a Logitech H800 wireless headset, which is not considered a good quality microphone for speech rec but seems to work as well as anything.
Comment 4 Raymond 2016-03-12 01:10:43 UTC
AudioControl Interface Descriptor: 
bLength 12 
bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) 
bTerminalID 2 
wTerminalType 0x0205 Microphone Array 
bAssocTerminal 0 
bNrChannels 2

It is microphone array with two channels, you need to record stereo using audacity with alsa hw device to find out whether left and right channels are out of phase
Comment 5 Raymond 2016-03-12 01:30:01 UTC
Most voice communcation application use mono to reduce the network /bandwidth, you will get low signal when just add left and right channels when they are out of phase
Comment 6 Susan Cragin 2016-03-12 14:10:34 UTC
I don't quite understand. 
All my recording devices are for speech so they are all mono, and they only have one channel. 
Only one channel shows up on Audacity. 
On alsamixer, I have the following: 
PCM 84<>84
Mic 94 (only one channel)
Auto gain Control 00

Does this mean I need a stereo microphone?
Comment 7 Raymond 2016-03-12 14:13:19 UTC
   AudioStreaming Interface Descriptor:
        bLength                29
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             2
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            7 Discrete
        tSamFreq[ 0]         8000
        tSamFreq[ 1]        11025
        tSamFreq[ 2]        16000
        tSamFreq[ 3]        22050
        tSamFreq[ 4]        32000
        tSamFreq[ 5]        44100
        tSamFreq[ 6]        48000


try

arecord -Dhw:0,0 --dump-hw-params test.wav
Comment 8 Raymond 2016-03-12 14:15:31 UTC
post output of 

alsa-info.sh
Comment 9 Susan Cragin 2016-03-13 14:05:21 UTC
~$ arecord --dump-hw-params test.wav
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
HW Params of device "default":
--------------------
ACCESS:  RW_INTERLEAVED
FORMAT:  U8 S16_LE S16_BE S24_LE S24_BE S32_LE S32_BE FLOAT_LE FLOAT_BE MU_LAW A_LAW S24_3LE S24_3BE
SUBFORMAT:  STD
SAMPLE_BITS: [8 32]
FRAME_BITS: [8 1024]
CHANNELS: [1 32]
RATE: [1 192000]
PERIOD_TIME: (5 4294967295)
PERIOD_SIZE: [1 1398102)
PERIOD_BYTES: [128 1398102)
PERIODS: [3 1024]
BUFFER_TIME: (15 4294967295]
BUFFER_SIZE: [3 4194304]
BUFFER_BYTES: [384 4194304]
TICK_TIME: ALL

(The options Dhw:0,0 or D=hw:0,0 did not work)
Comment 10 Susan Cragin 2016-03-13 14:07:43 UTC
Created attachment 122265 [details]
lsusb after running arecord

I ran arecord --dump-hw-params test.wav and then ran lsusb -vvvv. 
This is the output.
Comment 11 Susan Cragin 2016-03-13 14:11:50 UTC
Here is arecord -L
null
    Discard all samples (playback) or generate zero samples (capture)
pulse
    PulseAudio Sound Server
equal
default
sysdefault:CARD=PCH
    HDA Intel PCH, ALC286 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    Front speakers
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
dmix:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    Direct sample mixing device
dsnoop:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    Direct sample snooping device
hw:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    Direct hardware device without any conversions
plughw:CARD=PCH,DEV=0
    HDA Intel PCH, ALC286 Analog
    Hardware device with all software conversions
sysdefault:CARD=MultiAdapter
    SpeechMatic USB MultiAdapter, USB Audio
    Default Audio Device
front:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Front speakers
surround21:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Direct sample mixing device
dsnoop:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Direct sample snooping device
hw:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Direct hardware device without any conversions
plughw:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Hardware device with all software conversions
Comment 12 Raymond 2016-03-14 02:47:54 UTC
(In reply to Susan Cragin from comment #9)
> ~$ arecord --dump-hw-params test.wav
> Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
> HW Params of device "default":
> --------------------
> ACCESS:  RW_INTERLEAVED
> FORMAT:  U8 S16_LE S16_BE S24_LE S24_BE S32_LE S32_BE FLOAT_LE FLOAT_BE
> MU_LAW A_LAW S24_3LE S24_3BE
> SUBFORMAT:  STD
> SAMPLE_BITS: [8 32]
> FRAME_BITS: [8 1024]
> CHANNELS: [1 32]
> RATE: [1 192000]
> PERIOD_TIME: (5 4294967295)
> PERIOD_SIZE: [1 1398102)
> PERIOD_BYTES: [128 1398102)
> PERIODS: [3 1024]
> BUFFER_TIME: (15 4294967295]
> BUFFER_SIZE: [3 4194304]
> BUFFER_BYTES: [384 4194304]
> TICK_TIME: ALL
> 
> (The options Dhw:0,0 or D=hw:0,0 did not work)

you have to specify correct card number instead of default if card 0 is not your usb audio

-D hw:0,0     for card 0
-D hw:1,0     for card 1
Comment 13 Raymond 2016-03-14 02:49:04 UTC
or 

-D hw:CARD=MultiAdapter
Comment 14 Raymond 2016-03-14 02:50:11 UTC
default device support mono S8 but yours don't
Comment 15 Raymond 2016-03-14 02:52:19 UTC
hw:CARD=MultiAdapter,DEV=0
    SpeechMatic USB MultiAdapter, USB Audio
    Direct hardware device without any conversions
Comment 16 Raymond 2016-03-14 03:09:34 UTC
you have to post output of alsa-info.sh



https://www.raspberrypi.org/forums/viewtopic.php?t=108185&p=744443


numid=8,iface=MIXER,name='Mic Capture Volume'
; type=INTEGER,access=rw---R--,values=1,min=0,max=16,step=0
: values=11
| dBminmax-min=0.00dB,max=23.81dB
numid=9,iface=MIXER,name='Auto Gain Control'
; type=BOOLEAN,access=rw------,values=1
: values=off
Comment 17 Susan Cragin 2016-03-14 11:17:52 UTC
Sorry for mistakes. Thought command was either -Dhw or -D=hw

 arecord -D hw:2,0 --dump-hw-params test.wav
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
HW Params of device "hw:2,0":
--------------------
ACCESS:  MMAP_INTERLEAVED RW_INTERLEAVED
FORMAT:  S16_LE
SUBFORMAT:  STD
SAMPLE_BITS: 16
FRAME_BITS: 16
CHANNELS: 1
RATE: [44100 48000]
PERIOD_TIME: [1000 5944309)
PERIOD_SIZE: [45 262144]
PERIOD_BYTES: [90 524288]
PERIODS: [2 1024]
BUFFER_TIME: [1875 11888617)
BUFFER_SIZE: [90 524288]
BUFFER_BYTES: [180 1048576]
TICK_TIME: ALL
--------------------
arecord: set_params:1233: Sample format non available
Available formats:
- S16_LE
susan@susan:~$ amixer -c1 contents
numid=16,iface=CARD,name='Headphone Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
numid=15,iface=CARD,name='Internal Mic Phantom Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=14,iface=CARD,name='Mic Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
numid=17,iface=CARD,name='Speaker Phantom Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=13,iface=MIXER,name='Master Playback Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=12,iface=MIXER,name='Master Playback Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=127,step=0
  : values=92
  | dBscale-min=-63.50dB,step=0.50dB,mute=0
numid=2,iface=MIXER,name='Headphone Playback Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=1,iface=MIXER,name='Headphone Playback Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=0,0
  | dBscale-min=-63.50dB,step=0.50dB,mute=0
numid=20,iface=MIXER,name='PCM Playback Volume'
  ; type=INTEGER,access=rw---RW-,values=2,min=0,max=255,step=0
  : values=237,237
  | dBscale-min=-51.00dB,step=0.20dB,mute=0
numid=10,iface=MIXER,name='Mic Boost Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
  : values=3,3
  | dBscale-min=0.00dB,step=10.00dB,mute=0
numid=6,iface=MIXER,name='Mic Playback Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=on,on
numid=5,iface=MIXER,name='Mic Playback Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=31,31
  | dBscale-min=-34.50dB,step=1.50dB,mute=0
numid=9,iface=MIXER,name='Capture Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=8,iface=MIXER,name='Capture Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=127,127
  | dBscale-min=-33.50dB,step=0.50dB,mute=0
numid=7,iface=MIXER,name='Auto-Mute Mode'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'Disabled'
  ; Item #1 'Enabled'
  : values=1
numid=11,iface=MIXER,name='Internal Mic Boost Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
  : values=3,3
  | dBscale-min=0.00dB,step=10.00dB,mute=0
numid=4,iface=MIXER,name='Speaker Playback Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=on,on
numid=3,iface=MIXER,name='Speaker Playback Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=120,120
  | dBscale-min=-63.50dB,step=0.50dB,mute=0
numid=19,iface=PCM,name='Capture Channel Map'
  ; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR

numid=18,iface=PCM,name='Playback Channel Map'
  ; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR
Comment 18 Raymond 2016-03-14 15:51:17 UTC
(In reply to Susan Cragin from comment #17)
> Sorry for mistakes. Thought command was either -Dhw or -D=hw
> 
>  arecord -D hw:2,0 --dump-hw-params test.wav
> Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
> HW Params of device "hw:2,0":
> --------------------
> ACCESS:  MMAP_INTERLEAVED RW_INTERLEAVED
> FORMAT:  S16_LE
> SUBFORMAT:  STD
> SAMPLE_BITS: 16
> FRAME_BITS: 16
> CHANNELS: 1
> RATE: [44100 48000]
> PERIOD_TIME: [1000 5944309)
> PERIOD_SIZE: [45 262144]
> PERIOD_BYTES: [90 524288]
> PERIODS: [2 1024]
> BUFFER_TIME: [1875 11888617)
> BUFFER_SIZE: [90 524288]
> BUFFER_BYTES: [180 1048576]
> TICK_TIME: ALL
> --------------------
> arecord: set_params:1233: Sample format non available
> Available formats:
> - S16_LE
> susan@susan:~$ amixer -c1 contents
> numid=16,iface=CARD,name='Headphone Jack'
>   ; type=BOOLEAN,access=r-------,values=1
>   : values=off
> numid=15,iface=CARD,name='Internal Mic Phantom Jack'
>   ; type=BOOLEAN,access=r-------,values=1
>   : values=on
> numid=14,iface=CARD,name='Mic Jack'
>   ; type=BOOLEAN,access=r-------,values=1
>   : values=off
> numid=17,iface=CARD,name='Speaker Phantom Jack'
>   ; type=BOOLEAN,access=r-------,values=1
>   : values=on
> numid=13,iface=MIXER,name='Master Playback Switch'
>   ; type=BOOLEAN,access=rw------,values=1
>   : values=on
> numid=12,iface=MIXER,name='Master Playback Volume'
>   ; type=INTEGER,access=rw---R--,values=1,min=0,max=127,step=0
>   : values=92
>   | dBscale-min=-63.50dB,step=0.50dB,mute=0
> numid=2,iface=MIXER,name='Headphone Playback Switch'
>   ; type=BOOLEAN,access=rw------,values=2
>   : values=off,off
> numid=1,iface=MIXER,name='Headphone Playback Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
>   : values=0,0
>   | dBscale-min=-63.50dB,step=0.50dB,mute=0
> numid=20,iface=MIXER,name='PCM Playback Volume'
>   ; type=INTEGER,access=rw---RW-,values=2,min=0,max=255,step=0
>   : values=237,237
>   | dBscale-min=-51.00dB,step=0.20dB,mute=0
> numid=10,iface=MIXER,name='Mic Boost Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
>   : values=3,3
>   | dBscale-min=0.00dB,step=10.00dB,mute=0
> numid=6,iface=MIXER,name='Mic Playback Switch'
>   ; type=BOOLEAN,access=rw------,values=2
>   : values=on,on
> numid=5,iface=MIXER,name='Mic Playback Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
>   : values=31,31
>   | dBscale-min=-34.50dB,step=1.50dB,mute=0
> numid=9,iface=MIXER,name='Capture Switch'
>   ; type=BOOLEAN,access=rw------,values=2
>   : values=off,off
> numid=8,iface=MIXER,name='Capture Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
>   : values=127,127
>   | dBscale-min=-33.50dB,step=0.50dB,mute=0
> numid=7,iface=MIXER,name='Auto-Mute Mode'
>   ; type=ENUMERATED,access=rw------,values=1,items=2
>   ; Item #0 'Disabled'
>   ; Item #1 'Enabled'
>   : values=1
> numid=11,iface=MIXER,name='Internal Mic Boost Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0
>   : values=3,3
>   | dBscale-min=0.00dB,step=10.00dB,mute=0
> numid=4,iface=MIXER,name='Speaker Playback Switch'
>   ; type=BOOLEAN,access=rw------,values=2
>   : values=on,on
> numid=3,iface=MIXER,name='Speaker Playback Volume'
>   ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
>   : values=120,120
>   | dBscale-min=-63.50dB,step=0.50dB,mute=0
> numid=19,iface=PCM,name='Capture Channel Map'
>   ; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
>   : values=0,0
>   | container
>     | chmap-fixed=FL,FR
> 
> numid=18,iface=PCM,name='Playback Channel Map'
>   ; type=INTEGER,access=r----R--,values=2,min=0,max=36,step=0
>   : values=0,0
>   | container
>     | chmap-fixed=FL,FR

It seem card 2 is usb audio but card 1 is onboard hda audio which is the only sound driver which has internal speaker phantom jack


You have to post the output of alsa-imfo.sh
Comment 19 Susan Cragin 2016-03-23 13:14:54 UTC
I think it's pretty clear that I am doing the wrong thing and don't know the correct method to get alsa-info.sh. 
I thought lsusb -vvvv would do it, but apparently I'm wrong. 
If you would give me the commands, I would follow them to the letter.
Comment 20 Raymond 2016-03-24 02:08:55 UTC
https://wiki.ubuntu.com/Audio/AlsaInfo
Comment 21 Susan Cragin 2016-03-24 15:56:55 UTC
http://www.alsa-project.org/db/?f=c5caa11349987e4c1e125b6ab4e356754ca1bea6

Here it is! This is with pulseaudio running and my SpeechMatic USB MultiAdapter attached to a usb port. 
I also have my .asoundrc set to accept Card 2 as the default. 

I will also send another without pulseaudio running, in case that makes a difference.
Comment 22 Susan Cragin 2016-03-24 16:00:13 UTC
http://www.alsa-project.org/db/?f=44f3ad94c24455357a3f54878ccbf4921049ad0a

Here it is without pulseaudio running.
Comment 23 Raymond 2016-03-25 02:35:30 UTC
52.439208] Modules linked in: ctr ccm nls_utf8 nls_cp437 vfat fat fuse appletalk ax25 ipx p8023 p8022 psnap llc bnep iTCO_wdt iTCO_vendor_support hid_sensor_als hid_sensor_rotation hid_sensor_incl_3d hid_sensor_accel_3d hid_sensor_gyro_3d hid_sensor_magn_3d hid_sensor_trigger hid_sensor_iio_common industrialio_triggered_buffer msi_wmi sparse_keymap tpm_infineon intel_rapl iosf_mbi x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul arc4 sha256_ssse3 sha256_generic hmac drbg ansi_cprng aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd iwlmvm mac80211 joydev pcspkr serio_raw sg i2c_i801 iwlwifi lpc_ich rtsx_pci_ms memstick cfg80211 hid_sensor_hub uvcvideo shpchp videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core v4l2_common [ 52.439251] hid_multitouch videodev media btusb btrtl snd_usb_audio btbcm btintel snd_hda_codec_hdmi snd_usbmidi_lib bluetooth snd_hda_codec_realtek snd_rawmidi snd_seq_device snd_hda_codec_generic rfkill mei_me snd_hda_intel snd_hda_codec mei snd_hda_core snd_hwdep binfmt_misc ac battery snd_soc_rt5640 snd_soc_rl6231 snd_soc_core snd_pcm_oss dw_dmac snd_mixer_oss dw_dmac_core snd_soc_sst_acpi snd_pcm elan_i2c snd_timer snd soundcore regmap_i2c i2c_designware_platform i2c_designware_core intel_smartconnect acpi_pad evdev tpm_tis tpm processor acpi_als kfifo_buf industrialio parport_pc ppdev lp parport autofs4 ext4 crc16 mbcache jbd2 sd_mod mmc_block hid_generic usbhid rtsx_pci_sdmmc crc32c_intel ahci libahci ehci_pci ehci_hcd xhci_pci psmouse libata xhci_hcd i915 i2c_algo_bit scsi_mod drm_kms_helper [ 52.439296] rtsx_pci mfd_core usbcore drm usb_common fan thermal wmi video sdhci_acpi sdhci mmc_core i2c_hid hid fjes button

Check your system log,  seem there is oops 


dmesg


Look for "call trace" or "cut here"
Comment 24 Susan Cragin 2016-05-02 12:31:42 UTC
http://www.alsa-project.org/db/?f=527690049f7cf922f8fe1514dc9efd9cc74e7fcd

I ran the test again with a new microphone. I now have the best USB-bluetooth mike for speech recognition currently made, a Sennheiser MB Pro 2. And incoming sound is still very low. 

This is with pulseaudio disabled. 

I tried speech recognition with pulseaudio enabled and the sound volume turned up to 150%, but that produces inferior speech recognition, probably because of distortion. 

Also attaching call trace.
Comment 25 Susan Cragin 2016-05-02 12:33:17 UTC
Created attachment 123408 [details]
dmesg

[  137.116837] Call Trace:
[  137.116838]  <IRQ>  [<ffffffff81307b65>] ? dump_stack+0x5c/0x77
[  137.116847]  [<ffffffff8107905d>] ? warn_slowpath_common+0x7d/0xb0
[  137.116850]  [<ffffffff810790ec>] ? warn_slowpath_fmt+0x5c/0x80
[  137.116871]  [<ffffffffc0352115>] ? hsw_unclaimed_reg_debug+0x65/0x80 [i915]
[  137.116892]  [<ffffffffc035588b>] ? gen6_read32+0x8b/0x1e0 [i915]
[  137.116913]  [<ffffffffc0348a14>] ? intel_lrc_irq_handler+0xc4/0x230 [i915]
[  137.116930]  [<ffffffffc03059ab>] ? gen8_gt_irq_handler+0x1cb/0x240 [i915]
[  137.116946]  [<ffffffffc0305ad1>] ? gen8_irq_handler+0xb1/0x6a0 [i915]
[  137.116950]  [<ffffffff810cc6c8>] ? handle_irq_event_percpu+0x78/0x1b0
[  137.116953]  [<ffffffff810cc839>] ? handle_irq_event+0x39/0x60
[  137.116955]  [<ffffffff810cfcab>] ? handle_edge_irq+0x7b/0x140
[  137.116958]  [<ffffffff81018f39>] ? handle_irq+0x19/0x30
[  137.116961]  [<ffffffff815b9456>] ? do_IRQ+0x46/0xd0
[  137.116964]  [<ffffffff815b7582>] ? common_interrupt+0x82/0x82
[  137.116965]  <EOI> 
[  137.116967] ---[ end trace c0bf51fe68226cc1 ]---
Comment 26 Alexander E. Patrakov 2016-05-02 13:29:56 UTC
The dmesg trace is definitely not related to this low-volume bug.

The low-volume bug might be related to the fact that the card by default records in stereo or as a multi-channel input, but puts the microphone signal only in one channel, and puts silence in other channels. PulseAudio just averages it out.

Can you confirm whether it is the case, by attempting to record a stereo file in Audacity?
Comment 27 Susan Cragin 2016-05-02 14:30:43 UTC
(In reply to Alexander E. Patrakov from comment #26)
> Can you confirm whether it is the case, by attempting to record a stereo
> file in Audacity?

You are correct. I attempted to record in Audacity and it recorded on only one channel. Audacity shows it recording the "left" channel only.
Comment 28 Alexander E. Patrakov 2016-05-02 14:50:16 UTC
Assuming that all your USB sound cards are always connected to the PC, you can work around the bug using module-remap-source. Here is how.

First, figure out the original source name by running "pactl list short sources". It is in the second column. You need the row that corresponds to module-alsa-card.c, has "usb" in its name, and does not have "monitor". Hopefully there is only one such row for each of your USB soundcards.

Then, run this command once for each USB soundcard:

pacmd load-module module-remap-source master=... master_channel_map=front-left channel_map=mono

with the original source name instead of "...".

Then, use pavucontrol to mark the new source as a fallback, and move all programs' capture streams to it.

To make the change permanent, add this to the end of /etc/pulse/default.pa:

.nofail
load-module module-remap-source master=... master_channel_map=front-left channel_map=mono
.fail

But of course, pulseaudio should provide hotplug-aware means to split a multichannel USB soundcard into a set of mono sources. That's why this bug should stay open even if the instructions above help.
Comment 29 Alexander E. Patrakov 2016-05-02 14:51:36 UTC
In the above comment, some lines wrapped. Both instances of "channel_map=mono" belong to the end of the previous line.
Comment 30 Susan Cragin 2016-05-03 12:28:43 UTC
Here are my short sources and the command, which shows that pulseaudio daemon is not running as "session daemon."
I have tried sudo and not sudo. 
A quick Google search shows a suggestion, which I have included at the bottom.

Any suggestions?

:~$ pactl list short sources
0	alsa_output.usb-1395_Sennheiser_BTD_800_USB-00.analog-stereo.monitor	module-alsa-card.c	s16le 2ch 48000Hz	SUSPENDED
1	alsa_input.usb-1395_Sennheiser_BTD_800_USB-00.analog-mono	module-alsa-card.c	s16le 1ch 16000Hz	SUSPENDED
susan@susan:~$ pactl list short sources
0	alsa_output.usb-1395_Sennheiser_BTD_800_USB-00.analog-stereo.monitor	module-alsa-card.c	s16le 2ch 48000Hz	SUSPENDED
1	alsa_input.usb-1395_Sennheiser_BTD_800_USB-00.analog-mono	module-alsa-card.c	s16le 1ch 16000Hz	SUSPENDED

:~$ sudo pacmd load-module module-remap-source master=alsa_input.usb-1395_Sennheiser_BTD_800_USB-00.analog-mono master_channel_map=front-left channel_map=mono
No PulseAudio daemon running, or not running as session daemon.

Here is the Google'd suggestion. I'd try it but I don't know how to set your_uid. Is that my system password?
"
PulseAudio uses some environment variables and X11 properties on the root window. You probably need a way to fake these. One has to set the variable:
export PULSE_RUNTIME_PATH="/run/your_username/your_uid/pulse/"
and then one can connect with pacmd to the server via:
sudo -u your_username -E pacmd <your_command>
"
Comment 31 Alexander E. Patrakov 2016-05-03 12:42:40 UTC
You should not use sudo. Otherwise, the command is correct. However, I would expect this "left channel only" problem only on professional sound cards with XLR inputs, not on a Sennheiser headset.
Comment 32 Alexander E. Patrakov 2016-05-03 12:44:21 UTC
Also, the headset is already mono, so it doesn't have the front-left channel and does not need this workaround. If it is recording too quietly, then it's another problem.
Comment 33 Raymond 2016-05-03 13:10:28 UTC
http://git.alsa-project.org/?p=alsa-lib.git;a=blob_plain;f=test/chmap.c;hb=HEAD


./chnmap -s capture -D hw:CARD=MultiAdapter query
Comment 34 Raymond 2016-05-04 01:51:34 UTC
https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/sound/usb?id=04324ccc75f96b3ed7aad1c866d1b7925e977bdf


channel map of snd-usb-audio follow usb audio specifcation

is your capture channel map use LEFT instead of MONO
Comment 35 Alexander E. Patrakov 2016-05-04 12:15:25 UTC
Raymond, why are you asking for this information? How can it be related to a too-low volume?
Comment 36 Susan Cragin 2016-08-28 11:07:51 UTC
Any progress on this? Anything else I can do?
Comment 37 GitLab Migration User 2018-07-30 10:37:27 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/535.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.