Re: [alsa-devel] snd_usb_audio - siberia elite prism soundcard issues
numid=11,iface=MIXER,name='Speaker Playback Volume' ;
type=INTEGER,access=rw---R--,values=8,min=0,max=74,step=0 : values=54,54,54,54,54,54,54,54 | dBminmax-min=-74.00dB,max=0.00dB
You need workaround since pulseaudio don't like volume control with
more than two channels
https://bugs.freedesktop.org/show_bug.cgi?id=84983#c35
Can you post output of your usb audio device ?
lsusb -vvvv
Certainly!
Here it is:
Bus 001 Device 003: ID 1038:1225 Ideazon, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x1038 Ideazon, Inc. idProduct 0x1225 bcdDevice 0.03 iManufacturer 1 SteelSeries iProduct 2 SteelSeries Siberia Elite iSerial 3 000000000000 bNumConfigurations 1
AudioControl Interface Descriptor: bLength 13 bDescriptorType 36 bDescriptorSubtype 4 (MIXER_UNIT) Warning: Descriptor too short
https://github.com/gregkh/usbutils/blob/master/lsusb.c
Seem no warning for descriptor too short for uac2 and can dump those
uac2 specific variables
bUnitID 10 bNrInPins 2 baSourceID( 0) 9 baSourceID( 1) 1 bNrChannels 8 wChannelConfig 0x063f Left Front (L) Right Front (R) Center Front (C) Low Freqency Enhancement (LFE) Left Surround (LS) Right Surround (RS) Side Left (SL) Side Right (SR) iChannelNames 0 bmControls 0x00 bmControls 0x00 iMixer 33 (error)
Maybe it's the language barrier, but I am not sure if you wanted me to do
something. I, out of curiosity, tried to compile that lsusb but I'm missing headers such as config.h.
Should you need any more feedback from me about this device, please do
not hesitate asking through mailing list or directly, just consider I'm not dev! :)
Do you mean there is no sound using alsa hw device since pulseaudio does not support the multichannel speaker playback volume comtrol ?
speaker-test -c8 -t wav -D hw:CARD=Elite
speaker-test -c2 -t wav -D hw:CARD=Elite
You need to know how to compile alsa driver for you running kernel if you want to fix the problem
> amixer: Control hw:2 element read error: Invalid argument
If alsamixer or amixer cannot set the speaker playback volume
Try skip the problematic PCM Volume controls by adding
if (state->chip->usb_id == USB_ID(0x1038,0x1225)) if(unitid == 10) ich_has_control = 0;
If the driver really need this mixer unit for the playback path, you need to fix those controls
bUnitID 10 bNrInPins 2 baSourceID( 0) 9 microphone baSourceID( 1) 1 usb streaming
This look like the first four problematic controls related to microphone and the last control related to streaming
numid=5,iface=MIXER,name='PCM Volume' ; type=INTEGER,access=rw------,values=2,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=6,iface=MIXER,name='PCM Volume',index=1 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=7,iface=MIXER,name='PCM Volume',index=2 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=8,iface=MIXER,name='PCM Volume',index=3 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=9,iface=MIXER,name='PCM Volume',index=4 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
2015-03-24 2:35 GMT+01:00 Raymond Yau superquad.vortex2@gmail.com:
numid=11,iface=MIXER,name='Speaker Playback Volume' ;
type=INTEGER,access=rw---R--,values=8,min=0,max=74,step=0 : values=54,54,54,54,54,54,54,54 | dBminmax-min=-74.00dB,max=0.00dB
You need workaround since pulseaudio don't like volume control with
more than two channels
https://bugs.freedesktop.org/show_bug.cgi?id=84983#c35
Can you post output of your usb audio device ?
lsusb -vvvv
Certainly!
Here it is:
Bus 001 Device 003: ID 1038:1225 Ideazon, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x1038 Ideazon, Inc. idProduct 0x1225 bcdDevice 0.03 iManufacturer 1 SteelSeries iProduct 2 SteelSeries Siberia Elite iSerial 3 000000000000 bNumConfigurations 1
AudioControl Interface Descriptor: bLength 13 bDescriptorType 36 bDescriptorSubtype 4 (MIXER_UNIT) Warning: Descriptor too short
https://github.com/gregkh/usbutils/blob/master/lsusb.c
Seem no warning for descriptor too short for uac2 and can dump those
uac2 specific variables
bUnitID 10 bNrInPins 2 baSourceID( 0) 9 baSourceID( 1) 1 bNrChannels 8 wChannelConfig 0x063f Left Front (L) Right Front (R) Center Front (C) Low Freqency Enhancement (LFE) Left Surround (LS) Right Surround (RS) Side Left (SL) Side Right (SR) iChannelNames 0 bmControls 0x00 bmControls 0x00 iMixer 33 (error)
Maybe it's the language barrier, but I am not sure if you wanted me to
do something. I, out of curiosity, tried to compile that lsusb but I'm missing headers such as config.h.
Should you need any more feedback from me about this device, please do
not hesitate asking through mailing list or directly, just consider I'm not dev! :)
Do you mean there is no sound using alsa hw device since pulseaudio does not support the multichannel speaker playback volume comtrol ?
speaker-test -c8 -t wav -D hw:CARD=Elite
speaker-test -c2 -t wav -D hw:CARD=Elite
You need to know how to compile alsa driver for you running kernel if you want to fix the problem
> > amixer: Control hw:2 element read error: Invalid argument
If alsamixer or amixer cannot set the speaker playback volume
Try skip the problematic PCM Volume controls by adding
if (state->chip->usb_id == USB_ID(0x1038,0x1225)) if(unitid == 10) ich_has_control = 0;
If the driver really need this mixer unit for the playback path, you need to fix those controls
bUnitID 10 bNrInPins 2 baSourceID( 0) 9 microphone baSourceID( 1) 1 usb streaming
This look like the first four problematic controls related to microphone and the last control related to streaming
numid=5,iface=MIXER,name='PCM Volume' ; type=INTEGER,access=rw------,values=2,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=6,iface=MIXER,name='PCM Volume',index=1 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=7,iface=MIXER,name='PCM Volume',index=2 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=8,iface=MIXER,name='PCM Volume',index=3 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
numid=9,iface=MIXER,name='PCM Volume',index=4 ; type=INTEGER,access=rw------,values=1,min=0,max=1,step=0 amixer: Control hw:2 element read error: Invalid argument
Hello,
when I run the tests:
speaker-test -c8 -t wav -D hw:CARD=Elite
speaker-test -c2 -t wav -D hw:CARD=Elite
I only get sound from front left and front right channels.
About compiling the alsa driver in my running kernel or where to place the code you mention, well, as much as I have tried, my lack of experience has resulted in failing, although I'm still trying...
I have tried with latest kernel 3.18.10, and kernel 4.0-rc5.
Maybe I'm asking too much, can you provide a mixer.c or all the files I need to substitude in any kernel version you decide?, I'll just download the source for that kernel and merge with the file/s you attach and compile the whole thing, of that I'm sure I can do.
If it's too much I'm asking , don't worry, I'm still trying.
participants (2)
-
Daniel
-
Raymond Yau