I am using openSUSE wit KDE and I would like to activate a headphone button on Kmix, because right now I can not use headphones,
Can someone helpme on how to ad an extra switch/button to the Kmix ??
Many Thanks
Vasco
KDE4? The mixer (kmix) has a menu option for adding extra controls. I am in KDE-3.5.10 right now and I can’t remember precisely, but it might be called channel ?
Thanks oldcpu for helping out! and sorry for taking so long to reply;
you are right: on KDE4 Kmix “settings/configure channels” there are many other options but unfortunately not the one for headphones… Maybe a driver issue?
For long time I thought it was an incompatibility between Linux and my notebook ( Asus A6v ), until recently out of curiosity I installed Mepis live CD ( KDE 34.5x ) and to my surprise the headphones work perfectly well, with the Kmix showing the headphones channel and all… so I assume its just a sound configuration problem. And I Love openSUSE, I dont want to change Distro!
I will need to do some more research. Any help would bee very much appreciated!!
Thanks
Well, you could investigate your configuration more. Try the following …
with Mepis live CD running, copy and paste the following into a Mepis live CD konsole:
wget -O alsa-info.sh http://www.alsa-project.org/alsa-info.sh && bash alsa-info.sh
That will give you a URL after it completes. Post that URL (only the URL) here, with a note that it comes from the Mepis live CD.
Now do the same from openSUSE. If running openSUSE-11.0 or earlier, send the same wget line. If running openSUSE-11.1, as user root send the line:
/usr/sbin/alsa-info.shyou may need to send that twice (the 1st time to update, the 2nd time to run). Post here the output URL that provides, with a note that it comes from openSUSE-11.1 (or 11.0, 10.3 … etc … what ever your openSUSE version).
Then also from openSUSE, copy and paste the following into a konsole one line at a time, and then post here the output, so we can see what you have installed: rpm -qa | grep alsa
rpm -qa | grep pulse
rpm -q libasound2
uname -a
cat /etc/modprobe.d/sound
How!lots of information!! so here it is:
output from the Mepis live CD Linux:
http://www.alsa-project.org/db/?f=b4ae6745ba1e04080e249341b0ce8a16aa900019
Output from opensuse 11.1 :
http://www.alsa-project.org/db/?f=e561f5711caf5c7074ec19615aa1d2f863401674
rpm -qa | grep alsa :
alsa-utils-1.0.18-6.4
alsa-plugins-pulse-1.0.18-6.12
alsa-firmware-1.0.17-1.42
alsa-oss-1.0.17-1.37
alsa-1.0.18-8
rpm -qa | grep pulse :
pulseaudio-module-zeroconf-0.9.12-9.6
libpulsecore4-0.9.12-9.6
pulseaudio-utils-0.9.12-9.6
pulseaudio-module-jack-0.9.12-9.6
libpulse0-0.9.12-9.6
libpulse-mainloop-glib0-0.9.12-9.6
alsa-plugins-pulse-1.0.18-6.12
pulseaudio-module-lirc-0.9.12-9.6
pulseaudio-0.9.12-9.6
pulseaudio-module-bluetooth-0.9.12-9.6
libpulse-browse0-0.9.12-9.6
pulseaudio-esound-compat-0.9.12-9.6
libxine1-pulse-1.1.15-20.8
pulseaudio-module-x11-0.9.12-9.6
rpm -q libasound2 :
libasound2-1.0.18-8.7
uname -a:
Linux linux-1mcb 2.6.27.7-9-default #1 SMP 2008-12-04 18:10:04 +0100 i686 i686 i386 GNU/Linux
cat /etc/modprobe.d/sound :
options snd slots=snd-hda-intel
# u1Nb.Iok8MET6hsF:Asus A6VC
alias snd-card-0 snd-hda-intel
thanks a lot
Vasco
Some of the obvious differences are openSUSE has a newer version of alsa (1.0.18 vs 1.0.16 of Mepis). With 1.0.18 openSUSE has more mixer controls (18 vs 16) than Mepis, although I understand it does not the “headphone” control that you like. openSUSE has both Pulseaudio and ESound Daemon installed, while Mepis has the aRts server installed.
I note Mepis has applied a model option (auto) while openSUSE has installed none. Mepis has also installed a position_fix=2 while openSUSE has installed none. Both Mepis and openSUSE have bdl_pos_adj=1. Reference position_fix=2, the HD-Audio.txt file has this to say:
DMA-Position Problem
The most common problem of the controller is the inaccurate DMA pointer reporting. The DMA pointer for playback and capture can be read in two ways, either via a LPIB register or via a position-buffer map. As default the driver tries to read from the io-mapped position-buffer, and falls back to LPIB if the position-buffer appears dead. However, this detection isn't perfect on some devices. In such a case, you can change the default method via `position_fix` option.
position_fix=1
means to use LPIB method explicitly.
position_fix=2
means to use the position-buffer. 0 is the default value, the automatic check and fallback to LPIB as described in the above. If you get a problem of repeated sounds, this option might help.
In addition to that, every controller is known to be broken regarding the wake-up timing. It wakes up a few samples before actually processing the data on the buffer. This caused a lot of problems, for example, with ALSA dmix or JACK. Since 2.6.27 kernel, the driver puts an artificial delay to the wake up timing. This delay is controlled via
bdl_pos_adj
option.
When
bdl_pos_adj
is a negative value (as default), it’s assigned to an appropriate value depending on the controller chip. For Intel chips, it’d be 1 while it’d be 32 for others. Usually this works. Only in case it doesn’t work and you get warning messages, you should change this parameter to other values.
Reference the ALC880 that your PC has, I note the following options for an ALC880 (in 1.0.18a of alsa):
Model name Description
---------- -----------
ALC880
3stack 3-jack in back and a headphone out
3stack-digout 3-jack in back, a HP out and a SPDIF out
5stack 5-jack in back, 2-jack in front
5stack-digout 5-jack in back, 2-jack in front, a SPDIF out
6stack 6-jack in back, 2-jack in front
6stack-digout 6-jack with a SPDIF out
w810 3-jack
z71v 3-jack (HP shared SPDIF)
asus 3-jack (ASUS Mobo)
asus-w1v ASUS W1V
asus-dig ASUS with SPDIF out
asus-dig2 ASUS with SPDIF out (using GPIO2)
uniwill 3-jack
fujitsu Fujitsu Laptops (Pi1536)
F1734 2-jack
lg LG laptop (m1 express dual)
lg-lw LG LW20/LW25 laptop
tcl TCL S700
clevo Clevo laptops (m520G, m665n)
medion Medion Rim 2150
test for testing/debugging purpose, almost all controls can be
adjusted. Appearing only when compiled with
$CONFIG_SND_DEBUG=y
auto auto-config reading BIOS (default)
You can see that Mepis has applied the “auto” option from that list. (note only one item from that list should be applied at a time).
You could try applying the position_fix and/or a model option, to duplicate in part what has been done on Mepis. It may help, or it may make things worse (in which case simply remove the options).
So to apply an option (lets try ‘auto’), change your /etc/modprobe.d/sound file to the following:
options snd slots=snd-hda-intel
options snd-hda-intel model=auto
# u1Nb.Iok8MET6hsF:Asus A6VC
alias snd-card-0 snd-hda-intel
Restart your PC and test your audio.
To try both … “auto” and “postion_fix=2” try:
options snd slots=snd-hda-intel
options snd-hda-intel model=auto position_fix=2
# u1Nb.Iok8MET6hsF:Asus A6VC
alias snd-card-0 snd-hda-intel
Restart your PC and test your audio.
To try 3stack-digout from that list, try:
options snd slots=snd-hda-intel
options snd-hda-intel model=3stack-digout
# u1Nb.Iok8MET6hsF:Asus A6VC
alias snd-card-0 snd-hda-intel
Restart your PC and test your audio … (ie just replace “auto” with “3stack-digout” ) .
You could try all the options that way. Some will break your sound, … some will appear the same. Maybe one will be better.
Thanks oldcpu , without your tips I would never find the solution…but now it works fine!!
I tryed different ways on the /etc/modprobe.d/sound file and now it looks like this:
options snd slots=snd-hda-intel
options snd-hda-intel model=auto position_fix=2
u1Nb.Iok8MET6hsF:Asus A6VC
alias snd-card-0 snd-hda-intel
Thanks again,
regards
vasco
Congratulations!
Interesting that it works best with the Mepis solution.
I think i have the same problem, i also don’t have the headphone option in kmix… here’s my output and what’s interesting is that i don’t seem to have /etc/modprobe.d/sound
Output:
http://www.alsa-project.org/db/?f=b3dc199381b4bc03e57bc22035291ab942c7ffd7
queenz@linux-o401:~> rpm -qa | grep alsa
alsa-utils-1.0.21-3.1.i586
alsa-oss-1.0.17-25.2.i586
alsa-1.0.21-3.2.i586
alsa-plugins-1.0.21-3.3.i586
queenz@linux-o401:~> rpm -qa | grep pulse
libxine1-pulse-1.1.16.1-7.6.i586
libpulse0-0.9.19-2.3.i586
**queenz@linux-o401:~> rpm -q libasound2 **
libasound2-1.0.21-3.2.i586
**queenz@linux-o401:~> uname -a **
Linux linux-o401 2.6.31.5-0.1-default #1 SMP 2009-10-26 15:49:03 +0100 i686 i686 i386 GNU/Linux
**queenz@linux-o401:~> cat /etc/modprobe.d/sound **
cat: /etc/modprobe.d/sound: No such file or directory
The problem, with jumping on someone else’s thread from over 6 months ago, is they could be using a different openSUSE version with different hardware and different applications, which means the problem is different, and the thread can be confusing, as one wastes time reviewing someone else’s problem which is completely unrelated.
In this case they are using an older version of openSUSE, and there was a significant change in configuring for sound in openSUSE-11.2 (greatly improving openSUSE handling of sound).
The /etc/modprobe.d/sound file is no longer used in 11.2. Instead please provide the output of:
/etc/modprobe.d/50-sound.conf
… I’m now looking at the other information you provided.
queenz@linux-o401:~> sudo cat /etc/modprobe.d/50-sound.conf
options snd slots=snd-hda-intel
5Dex.T4yFbXb2JdA:IXP SB4x0 High Definition Audio Controller
alias snd-card-0 snd-hda-intel
queenz@linux-o401:~>
Are these USB or regular headphones?
According to the script, your PC has an ALC861.
If these are regular headphones, you could try forcing a different alsa configuration upon the loading of the alsa sound driver, by making custom edits to the /etc/modprobe.d/50-sound.conf file.
Note the list of possible options from the 1.0.21 HD-Audio-Models.txt file for the ALC861 are:
ALC861/660
==========
3stack 3-jack
3stack-dig 3-jack with SPDIF I/O
6stack-dig 6-jack with SPDIF I/O
3stack-660 3-jack (for ALC660)
uniwill-m31 Uniwill M31 laptop
toshiba Toshiba laptop support
asus Asus laptop support
asus-laptop ASUS F2/F3 laptops
auto auto-config reading BIOS (default)
I recommend you try EACH one of those in return (you can only do one at a time for it to function) and as soon as you find one that works, you stop.
You can do that by making an edit to the /etc/modprobe.d/50-sound.conf file by adding a line to the start of that file. Lets say you wanted to try the model option “toshiba”. You would do so by changing that file to:
options snd-hda-intel model=toshiba
options snd slots=snd-hda-intel
# 5Dex.T4yFbXb2JdA:IXP SB4x0 High Definition Audio Controller
alias snd-card-0 snd-hda-intel
save the change, then restart your alsa sound driver by typing su -c ‘rcalsasound restart’ and enter root password when prompted, and then restart your mixer and test your sound and headphones.
If “toshiba” does not work, then select another model option from the list I provided, and change “toshiba” for that option in the /etc/modprobe.d/50-sound.conf file, and restart alsa, restart, mixer, and test …
Do that for each option, stopping when you find one that works.
No matter if you succeed or fail, you should still write a bug report on this problem, where there is guidance here for writing bug reports: Submitting Bug Reports - openSUSE
model=toshiba didn’t work but model=auto did work!!! although i read that it’s the default but without that option it wasn’t working. Now my sound on my headphones is very loud!!
THANK YOU SO MUCH oldcpu!! I love you man! :D:D
Congratulations. Glad to read its working.
If you get the chance, can you write a bug report on openSUSE-11.2 component “sound” ? Guidance is here: Submitting Bug Reports - openSUSE
The bug report should say the upon boot autoprobe of alsa failed to correctly configure your sound card for headphones. Note the solution you applied to /etc/modprobe.d/50-sound.conf to fix your sound for headphones. Also, with your mixer correctly configured run:
/usr/sbin/alsa-info.sh --no-upload
and then go to /tmp/alsa-info.txt and include that text file as an attachment to your bug report.
If you are able to do that, the difficulty you had will then come to the attention of the Novell/SuSE-GmbH sound packager, who is also an alsa developer. He will then likely fix the autoprobe in alsa, and send the fix upstream so that all Linux users will benefit from your efforts/experience.
Thanks!