Bug 111152

Summary: kmix doesn't save master channel correctly - off by 3
Product: [Applications] kmix Reporter: Tim Hutt <tdhutt>
Component: Obsolete component. Do NOT use!!! (ex: KMix Panel Applet).Assignee: Christian Esken <esken>
Status: RESOLVED FIXED    
Severity: normal CC: aros, asraniel, bugs.kde.org, kdebugs-050220211414-96ad, krom, tom_rijeka
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Unlisted Binaries   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Screenshot, showing the wrong selected channel...
Output of "amixer -c 0"
~/.kde/share/config/kmixrc

Description Tim Hutt 2005-08-20 15:39:21 UTC
Version:            (using KDE KDE 3.4.2)
Installed from:    Unspecified Linux
OS:                Linux

I have 2 sound cards - onboard SiS one and an SB live.

I selected the *actual* master channel ('Wave') with r-click->select channel.

However if you restart kmix it changes this to 'Surround' - three channels before 'Wave'. Restart it again and it remains on 'Surround'.

If I select three channels after 'Wave' - 'Wave Surround' and restart then it changes to 'Wave'.

Selecting the second channel 'Headphone' and restarting means that no channel is selected and the volume is muted at -1%.

It works for my first soundcard (SiS).
Comment 1 Christian Esken 2005-08-22 01:23:50 UTC
Please create three attachments to your bug report. The first should countain your KMix configuration ( "~/.kde/share/config/kmixrc" ), the second your ALSA configuration ( Output of "amixer -c 0" and "amixer -c 1" ).
Comment 2 Tim Hutt 2005-08-22 19:18:58 UTC
Absolutement!

This is with 'Wave Surround' initially selected so that it changes to 'Wave' (the one I want - 3 channels previously).

Err, it appears the second card (-c 1) is my bttv TV card, so the sb live is my third card.

I presume the relevant line is: MasterMixerDevice=11
11 is 'Wave Surround' (assuming zero based numbering).
8 is 'Wave' (what is shown as being selected).

This suggests a loading bug rather than a saving one.

kmixrc:

------------------------8<------------------------

AllowDocking=true
Labels=true
MasterMixer=ALSA::Sound_Blaster_Live!:1
MasterMixerDevice=11
Menubar=true
Orientation=Vertical
Position=348,182
Size=739,806
Tickmarks=true
TrayVolumeControl=true
startkdeRestore=true

[0]
Mixer_Name_Key=SiS SI7012
View.Input.Devs=6
View.Output.Devs=8
View.Switches.Devs=14

[1]
Mixer_Name_Key=Brooktree Bt878
View.Input.Devs=0
View.Output.Devs=1
View.Switches.Devs=4

[2]
Mixer_Name_Key=Sound Blaster Live!
View.Input.Devs=15
View.Output.Devs=15
View.Switches.Devs=10

[Notification Messages]
systemtrayquitKMix=false

[View.Input.0.Dev10]
Show=true
Split=false

[View.Input.0.Dev11]
Show=true
Split=false

[View.Input.0.Dev15]
Show=true
Split=false

[View.Input.0.Dev19]
Show=true
Split=false

[View.Input.0.Dev20]
Show=true
Split=false

[View.Input.0.Dev9]
Show=true
Split=false

[View.Input.2.Dev11]
Show=true
Split=false

[View.Input.2.Dev15]
Show=true
Split=false

[View.Input.2.Dev16]
Show=true
Split=false

[View.Input.2.Dev17]
Show=true
Split=false

[View.Input.2.Dev18]
Show=true
Split=false

[View.Input.2.Dev19]
Show=true
Split=false

[View.Input.2.Dev20]
Show=true
Split=false

[View.Input.2.Dev23]
Show=true
Split=false

[View.Input.2.Dev24]
Show=true
Split=false

[View.Input.2.Dev25]
Show=true
Split=false

[View.Input.2.Dev26]
Show=true
Split=false

[View.Input.2.Dev28]
Show=true
Split=false

[View.Input.2.Dev30]
Show=true
Split=false

[View.Input.2.Dev31]
Show=true
Split=false

[View.Input.2.Dev8]
Show=true
Split=false

[View.Output.0.Dev0]
Show=true
Split=false

[View.Output.0.Dev1]
Show=true
Split=false

[View.Output.0.Dev17]
Show=true
Split=false

[View.Output.0.Dev2]
Show=true
Split=false

[View.Output.0.Dev3]
Show=true
Split=false

[View.Output.0.Dev4]
Show=true
Split=false

[View.Output.0.Dev6]
Show=true
Split=false

[View.Output.0.Dev8]
Show=true
Split=false

[View.Output.1.Dev2]
Show=true
Split=false

[View.Output.2.Dev0]
Show=true
Split=false

[View.Output.2.Dev10]
Show=true
Split=false

[View.Output.2.Dev12]
Show=true
Split=false

[View.Output.2.Dev13]
Show=true
Split=false

[View.Output.2.Dev14]
Show=true
Split=false

[View.Output.2.Dev2]
Show=true
Split=false

[View.Output.2.Dev29]
Show=true
Split=false

[View.Output.2.Dev34]
Show=true
Split=false

[View.Output.2.Dev35]
Show=true
Split=false

[View.Output.2.Dev5]
Show=true
Split=false

[View.Output.2.Dev6]
Show=true
Split=false

[View.Output.2.Dev67]
Show=true
Split=false

[View.Output.2.Dev7]
Show=true
Split=false

[View.Output.2.Dev9]
Show=true
Split=false

[View.Output.2.Dev99]
Show=true
Split=false

[View.Switches.0.Dev12]
Show=true
Split=true

[View.Switches.0.Dev13]
Show=true
Split=true

[View.Switches.0.Dev14]
Show=true
Split=true

[View.Switches.0.Dev16]
Show=true
Split=true

[View.Switches.0.Dev18]
Show=true
Split=true

[View.Switches.0.Dev21]
Show=true
Split=true

[View.Switches.0.Dev22]
Show=true
Split=true

[View.Switches.0.Dev23]
Show=true
Split=true

[View.Switches.0.Dev24]
Show=true
Split=true

[View.Switches.0.Dev25]
Show=true
Split=true

[View.Switches.0.Dev26]
Show=true
Split=true

[View.Switches.0.Dev27]
Show=true
Split=true

[View.Switches.0.Dev5]
Show=true
Split=true

[View.Switches.0.Dev7]
Show=true
Split=true

[View.Switches.1.Dev0]
Show=true
Split=true

[View.Switches.1.Dev1]
Show=true
Split=true

[View.Switches.1.Dev3]
Show=true
Split=true

[View.Switches.1.Dev4]
Show=true
Split=true

[View.Switches.2.Dev1]
Show=true
Split=true

[View.Switches.2.Dev131]
Show=true
Split=true

[View.Switches.2.Dev132]
Show=true
Split=true

[View.Switches.2.Dev21]
Show=true
Split=true

[View.Switches.2.Dev22]
Show=true
Split=true

[View.Switches.2.Dev27]
Show=true
Split=true

[View.Switches.2.Dev3]
Show=true
Split=true

[View.Switches.2.Dev32]
Show=true
Split=true

[View.Switches.2.Dev33]
Show=true
Split=true

[View.Switches.2.Dev4]
Show=true
Split=true


--------------------------8<------------------------

amixer -c 0:

---------------------------8<-----------------------

Simple mixer control 'Master',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 24 [77%] [on]
  Front Right: Playback 24 [77%] [on]
Simple mixer control 'Master Mono',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
Simple mixer control 'Master Surround',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off]
  Front Right: Playback 0 [0%] [off]
Simple mixer control 'PCM',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 31 [100%] [on]
  Front Right: Playback 31 [100%] [on]
Simple mixer control 'Surround',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off]
  Front Right: Playback 0 [0%] [off]
Simple mixer control 'Surround Jack as Input',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Center',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 31
  Mono: Playback 31 [100%] [off]
Simple mixer control 'Center/LFE Jack as Input',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'LFE',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
Simple mixer control 'Line',0
  Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off] Capture [off]
  Front Right: Playback 0 [0%] [off] Capture [off]
Simple mixer control 'CD',0
  Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 22 [71%] [on] Capture [off]
  Front Right: Playback 22 [71%] [on] Capture [off]
Simple mixer control 'Mic',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Mono
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
  Front Left: Capture [on]
  Front Right: Capture [on]
Simple mixer control 'Mic Boost (+20dB)',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Mic Select',0
  Capabilities:
  Mono:
Simple mixer control 'Video',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Front Left - Front Right
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'Phone',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Mono
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'IEC958',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'IEC958 Playback AC97-SPSA',0
  Capabilities: volume volume-joined
  Playback channels: Mono
  Limits: 0 - 3
  Mono: 3 [100%]
Simple mixer control 'IEC958 Playback Source',0
  Capabilities:
  Mono:
Simple mixer control 'Aux',0
  Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off] Capture [off]
  Front Right: Playback 0 [0%] [off] Capture [off]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 15
  Front Left: Capture 0 [0%] [on]
  Front Right: Capture 0 [0%] [on]
Simple mixer control 'Mix',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Front Left - Front Right
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'Mix Mono',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Front Left - Front Right
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'Downmix',0
  Capabilities:
  Mono:
Simple mixer control 'Exchange Front/Surround',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'External Amplifier',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'Spread Front to Surround and Center/LFE',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Stereo Mic',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]

-----------------------8<-----------------------

amixer -c 1:

-----------------------8<-----------------------

Simple mixer control 'FM',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Mono
  Mono: Capture [off]
Simple mixer control 'Mic/Line',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Mono
  Mono: Capture [off]
Simple mixer control 'Capture',0
  Capabilities: cvolume
  Capture channels: Mono
  Limits: Capture 0 - 15
  Mono: Capture 0 [0%]
Simple mixer control 'Capture Boost',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'TV Tuner',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Mono
  Mono: Capture [on]

--------------------------8<-----------------------

amixer -c 2:

---------------------------8<-----------------------

Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 12 [39%] [on]
  Front Right: Playback 12 [39%] [on]
Simple mixer control 'Headphone LFE',1
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Headphone',1
  Capabilities: pvolume
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 100
  Front Left: Playback 0 [0%]
  Front Right: Playback 0 [0%]
Simple mixer control 'Headphone Center',1
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Tone',0
  Capabilities: pswitch
  Playback channels: Front Left - Front Right
  Mono:
  Front Left: Playback [off]
  Front Right: Playback [off]
Simple mixer control 'Bass',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Limits: 0 - 40
  Mono: 20 [50%]
  Front Left:
  Front Right:
Simple mixer control 'Treble',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Limits: 0 - 40
  Mono: 24 [60%]
  Front Left:
  Front Right:
Simple mixer control 'PCM',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 17 [55%] [on]
  Front Right: Playback 17 [55%] [on]
Simple mixer control 'Surround',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 100 [100%] Capture 0 [0%] [off]
  Front Right: Playback 100 [100%] Capture 0 [0%] [off]
Simple mixer control 'Center',0
  Capabilities: pvolume pvolume-joined
  Playback channels: Mono
  Limits: Playback 0 - 100
  Mono: Playback 0 [0%]
Simple mixer control 'LFE',0
  Capabilities: pvolume pvolume-joined
  Playback channels: Mono
  Limits: Playback 0 - 100
  Mono: Playback 0 [0%]
Simple mixer control 'Wave',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 61 [61%] Capture 100 [100%] [off]
  Front Right: Playback 61 [61%] Capture 100 [100%] [off]
Simple mixer control 'Wave Center',0
  Capabilities: pvolume pvolume-joined
  Playback channels: Mono
  Limits: Playback 0 - 100
  Mono: Playback 0 [0%]
Simple mixer control 'Wave LFE',0
  Capabilities: pvolume pvolume-joined
  Playback channels: Mono
  Limits: Playback 0 - 100
  Mono: Playback 0 [0%]
Simple mixer control 'Wave Surround',0
  Capabilities: pvolume
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 100
  Front Left: Playback 0 [0%]
  Front Right: Playback 0 [0%]
Simple mixer control 'Music',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 100 [100%] Capture 100 [100%] [off]
  Front Right: Playback 100 [100%] Capture 100 [100%] [off]
Simple mixer control 'Line',0
  Capabilities: pvolume pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off] Capture [off]
  Front Right: Playback 0 [0%] [off] Capture [off]
Simple mixer control 'Line LiveDrive',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 0 [0%] Capture 0 [0%] [off]
  Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'Line2 LiveDrive',1
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 0 [0%] Capture 0 [0%] [off]
  Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'CD',0
  Capabilities: pvolume pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 22 [71%] [on] Capture [off]
  Front Right: Playback 22 [71%] [on] Capture [off]
Simple mixer control 'Mic',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Mono
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
  Front Left: Capture [on]
  Front Right: Capture [on]
Simple mixer control 'Mic Boost (+20dB)',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'Mic Select',0
  Capabilities:
  Mono:
Simple mixer control 'Video',0
  Capabilities: pvolume pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off] Capture [off]
  Front Right: Playback 0 [0%] [off] Capture [off]
Simple mixer control 'Phone',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Mono
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono: Playback 0 [0%] [off]
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'IEC958 Coaxial',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 0 [0%] Capture 0 [0%] [off]
  Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'IEC958 LiveDrive',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 0 [0%] Capture 0 [0%] [off]
  Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'IEC958 Optical Raw',0
  Capabilities: pswitch
  Playback channels: Front Left - Front Right
  Front Left: Playback [off]
  Front Right: Playback [off]
Simple mixer control 'IEC958 TTL',0
  Capabilities: pvolume cvolume cswitch
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 0 [0%] Capture 0 [0%] [off]
  Front Right: Playback 0 [0%] Capture 0 [0%] [off]
Simple mixer control 'PC Speaker',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 15
  Mono: Playback 0 [0%] [off]
Simple mixer control 'Aux',0
  Capabilities: pvolume pswitch pswitch-joined cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Front Left: Playback 0 [0%] [off] Capture [off]
  Front Right: Playback 0 [0%] [off] Capture [off]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch cswitch-joined
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 15
  Front Left: Capture 0 [0%] [on]
  Front Right: Capture 0 [0%] [on]
Simple mixer control 'Mix',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Front Left - Front Right
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'Mix Mono',0
  Capabilities: cswitch cswitch-joined cswitch-exclusive
  Capture exclusive group: 0
  Capture channels: Front Left - Front Right
  Front Left: Capture [off]
  Front Right: Capture [off]
Simple mixer control 'AC97',0
  Capabilities: pvolume cvolume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: Playback 0 - 100 Capture 0 - 100
  Front Left: Playback 48 [48%] Capture 100 [100%]
  Front Right: Playback 48 [48%] Capture 100 [100%]
Simple mixer control 'External Amplifier',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'SB Live Analog/Digital Output Jack',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]

---------------------------8<-----------------------
Comment 3 Prower 2005-10-23 01:31:25 UTC
I can confirm that this problem exists with the latest stable KDE packages in Ubuntu 5.10 (i386 release, KDE 3.4.3). My card is an SB Live! 5.1.
Comment 4 baum-im-wald 2005-11-04 21:21:34 UTC
Well, on my machine, the actual master is PCM, and KMix alway sets it back to Master Mono after restart.

Using KDE 3.5 beta2
Comment 5 Christian Esken 2005-11-16 12:22:36 UTC
Hello, I ams starting to suspect, what is going on. For this, I need to know, which soundcards/drivers are problematic. Could everybody please send this information:
1) The output of 
        cat /proc/asound/cards
2) The Soundcard names (product names, from the manufacturer)

Thanks for your support
Comment 6 Tim Hutt 2005-11-22 18:11:47 UTC
t@freddy:~$ cat /proc/asound/cards
0 [SI7012         ]: ICH - SiS SI7012
                     SiS SI7012 with AD1980 at 0xa400, irq 18
1 [Bt878          ]: Bt87x - Brooktree Bt878
                     Brooktree Bt878 at 0xde800000, irq 18
2 [Live           ]: EMU10K1 - SB Live [Unknown]
                     SB Live [Unknown] (rev.10, serial:0x80651102) at 0x9400, irq 17

The cards are:

0: On-board SiS of some form.
1: TV Tuner card (possibly WinTV - can't remember now)
2: Soundblaster live.

Let me know if you need more detailed information.
Comment 7 Christian Esken 2005-11-28 22:46:24 UTC
*** Bug 117170 has been marked as a duplicate of this bug. ***
Comment 8 Tim Hutt 2005-12-04 13:12:49 UTC
Ok, with KDE 3.5 it now forgets the card too and always goes to the first card, and one channel before the correct one.
Comment 9 Elias Probst 2005-12-30 11:59:45 UTC
Problem exists here too:

###########
cat /proc/asound/cards
0 [CMI8738MC6     ]: CMI8738-MC6 - C-Media PCI CMI8738-MC6
                     C-Media PCI CMI8738-MC6 (model 55) at 0xd000, irq 11
###########

Soundcard is onBoard (Soyo K7V Dragon plus Motherboard).

When setting the master to "PCM", it's set to "3D Switch" when restarting kmix.

A screenshot, the output of "amixer -c 0" and the kmixrc are in the attachments.
Comment 10 Elias Probst 2005-12-30 12:01:23 UTC
Created attachment 14076 [details]
Screenshot, showing the wrong selected channel...
Comment 11 Elias Probst 2005-12-30 12:02:04 UTC
Created attachment 14077 [details]
Output of "amixer -c 0"
Comment 12 Elias Probst 2005-12-30 12:05:28 UTC
Created attachment 14078 [details]
~/.kde/share/config/kmixrc

KDE-3.5.0, using a KDE user configuration created from scratch, so no old 3.4.x
entries will mess up my configuration files.
Comment 13 Christian Esken 2005-12-30 14:04:53 UTC
Thanks to everybody sending in information. I am now able to reproduce the bug, and the problem is NOT emu10k1 specific. Many soundcards might be affected, depending on which channel you choose.
After the first source code analysis everything looks be right, but obviously the wrong master control is being saved.
Accepting bug.
Comment 14 Christian Esken 2006-01-14 16:02:10 UTC
SVN commit 498015 by esken:

Bugfix: The wrong master channel was saved (if the channel was "after"
an "enum MDW" or a "switch-only MDW".
BUGS: 111152


 M  +1 -1      dialogselectmaster.cpp  
 M  +1 -1      dialogselectmaster.h  
 M  +3 -3      kmixdockwidget.cpp  
 M  +6 -3      kmixdockwidget.h  


--- branches/KDE/3.5/kdemultimedia/kmix/dialogselectmaster.cpp #498014:498015
@@ -188,7 +188,7 @@
      }
      else {
         mixer->setMasterDevice( m_mixerPKs[channel_id] );
-     	emit newMasterSelected(soundcard_id, channel_id);
+     	emit newMasterSelected(soundcard_id, m_mixerPKs[channel_id] );
      }
    }
 }
--- branches/KDE/3.5/kdemultimedia/kmix/dialogselectmaster.h #498014:498015
@@ -21,7 +21,7 @@
     ~DialogSelectMaster();
 
  signals:
-    void newMasterSelected(int, int);
+    void newMasterSelected(int, QString& );
 
  public slots:
     void apply();
--- branches/KDE/3.5/kdemultimedia/kmix/kmixdockwidget.cpp #498014:498015
@@ -130,13 +130,13 @@
 void KMixDockWidget::selectMaster()
 {
    DialogSelectMaster* dsm = new DialogSelectMaster(m_mixer);
-   connect ( dsm, SIGNAL(newMasterSelected(int, int)), SLOT( handleNewMaster(int,int) ) );
+   connect ( dsm, SIGNAL(newMasterSelected(int, QString&)), SLOT( handleNewMaster(int,QString&)) );
    dsm->show();
     // !! The dialog is modal. Does it delete itself?
 }
 
 
-void KMixDockWidget::handleNewMaster(int soundcard_id, int channel_id) // !! @todo rework parameters
+void KMixDockWidget::handleNewMaster(int soundcard_id, QString& channel_id) // !! @todo rework parameters
 {
   //kdDebug(67100) << "KMixDockWidget::handleNewMaster() soundcard_id=" << soundcard_id << " , channel_id=" << channel_id << endl;
   Mixer *mixer = Mixer::mixers().at(soundcard_id);
@@ -146,7 +146,7 @@
   }
   m_mixer = mixer;
   Mixer::setMasterCard(mixer->id()); // We must save this information "somewhere".
-  Mixer::setMasterCardDevice( (*mixer)[channel_id]->getPK());
+  Mixer::setMasterCardDevice( channel_id );
   createMasterVolWidget();
 }
 
--- branches/KDE/3.5/kdemultimedia/kmix/kmixdockwidget.h #498014:498015
@@ -23,15 +23,18 @@
 #ifndef KMIXDOCKWIDGET_H
 #define KMIXDOCKWIDGET_H
 
+class QFrame;
+class QString;
 #include <qwidget.h>
 #include <qvbox.h>
+
 #include <ksystemtray.h>
 
 class Mixer;
-class QFrame;
 class KAudioPlayer;
+class MixDeviceWidget;
+class Mixer;
 class ViewDockAreaPopup;
-class MixDeviceWidget;
 class Volume;
 
 class KMixDockWidget : public KSystemTray  {
@@ -73,7 +76,7 @@
  private slots:
    void dockMute();
    void selectMaster();
-   void handleNewMaster(int soundcard_id, int channel_id);
+   void handleNewMaster(int soundcard_id, QString& channel_id);
 };
 
 #endif
Comment 15 Christian Esken 2006-01-14 16:09:32 UTC
*** Bug 115045 has been marked as a duplicate of this bug. ***
Comment 16 Christian Esken 2006-01-21 12:30:16 UTC
*** Bug 120297 has been marked as a duplicate of this bug. ***
Comment 17 Christian Esken 2006-01-22 14:07:49 UTC
SVN commit 501149 by esken:

Backport of Bugfix 111152 to 3.4 branch (in case somebody cares to
recompile that branch): 'The wrong master channel was saved (if the
channel was "after" an "enum MDW" or a "switch-only MDW" '.
CCBUGS: 111152


 M  +1 -1      dialogselectmaster.cpp  
 M  +1 -1      dialogselectmaster.h  
 M  +3 -3      kmixdockwidget.cpp  
 M  +3 -1      kmixdockwidget.h  


--- branches/KDE/3.4/kdemultimedia/kmix/dialogselectmaster.cpp #501148:501149
@@ -188,7 +188,7 @@
      }
      else {
         mixer->setMasterDevice( m_mixerPKs[channel_id] );
-     	emit newMasterSelected(soundcard_id, channel_id);
+        emit newMasterSelected(soundcard_id, m_mixerPKs[channel_id] );
      }
    }
 }
--- branches/KDE/3.4/kdemultimedia/kmix/dialogselectmaster.h #501148:501149
@@ -21,7 +21,7 @@
     ~DialogSelectMaster();
 
  signals:
-    void newMasterSelected(int, int);
+    void newMasterSelected(int, QString& );
 
  public slots:
     void apply();
--- branches/KDE/3.4/kdemultimedia/kmix/kmixdockwidget.cpp #501148:501149
@@ -130,13 +130,13 @@
 void KMixDockWidget::selectMaster()
 {
    DialogSelectMaster* dsm = new DialogSelectMaster(m_mixer);
-   connect ( dsm, SIGNAL(newMasterSelected(int, int)), SLOT( handleNewMaster(int,int) ) );
+   connect ( dsm, SIGNAL(newMasterSelected(int, QString&)), SLOT( handleNewMaster(int,QString&)) ); 
    dsm->show();
     // !! The dialog is modal. Does it delete itself?
 }
 
 
-void KMixDockWidget::handleNewMaster(int soundcard_id, int channel_id) // !! @todo rework parameters
+void KMixDockWidget::handleNewMaster(int soundcard_id, QString& channel_id)
 {
   //kdDebug(67100) << "KMixDockWidget::handleNewMaster() soundcard_id=" << soundcard_id << " , channel_id=" << channel_id << endl;
   Mixer *mixer = Mixer::mixers().at(soundcard_id);
@@ -146,7 +146,7 @@
   }
   m_mixer = mixer;
   Mixer::setMasterCard(mixer->id()); // We must save this information "somewhere".
-  Mixer::setMasterCardDevice( (*mixer)[channel_id]->getPK());
+  Mixer::setMasterCardDevice( channel_id ); 
   createMasterVolWidget();
 }
 
--- branches/KDE/3.4/kdemultimedia/kmix/kmixdockwidget.h #501148:501149
@@ -23,8 +23,10 @@
 #ifndef KMIXDOCKWIDGET_H
 #define KMIXDOCKWIDGET_H
 
+class QString;
 #include <qwidget.h>
 #include <qvbox.h>
+
 #include <ksystemtray.h>
 
 class Mixer;
@@ -73,7 +75,7 @@
  private slots:
    void dockMute();
    void selectMaster();
-   void handleNewMaster(int soundcard_id, int channel_id);
+   void handleNewMaster(int soundcard_id, QString& channel_id);
 };
 
 #endif
Comment 18 Christian Esken 2006-01-29 23:20:44 UTC
The bugfix has now been forward ported to KDE4. 
Comment 19 Christian Esken 2006-02-21 22:17:28 UTC
*** Bug 119558 has been marked as a duplicate of this bug. ***
Comment 20 Christoph Burger-Scheidlin 2006-02-25 00:07:59 UTC
I experience a similar problem. The correct device number is selected, but not the correct device. In my case I have a SB Extigy which is the 3rd device (yet the default device for ALSA). The configuration file displays the correct device
MasterMixer=ALSA::Sound_Blaster_Extigy:1
MasterMixerDevice=1
yet when kmix starts up, it selects the first device (the internal intel card), yet with the correct control (in this case the second device which is useless).

Should I open a new bug report, or can this be reopened?
Comment 21 Christoph Burger-Scheidlin 2006-02-25 00:09:09 UTC
Sorry, I forgot to mention. This happens on Gentoo Linux with kmix 2.6
Comment 22 Christian Esken 2006-02-25 00:36:47 UTC
Christoph, please first test with KDE3.5.1 or newer. There is a chance that also your problem is fixed there.
If it is not fixed in KDE3.5.1, please open a new bug report.
Comment 23 Christian Esken 2006-03-04 00:32:13 UTC
*** Bug 122930 has been marked as a duplicate of this bug. ***
Comment 24 Marc Schiffbauer 2006-10-16 15:14:45 UTC
Hi,

Please reopen this bug! I have two Soundcards and one video card:

mschiff@homer:~$ cat /proc/asound/cards
 0 [V8237          ]: VIA8237 - VIA 8237
                      VIA 8237 with AD1980 at 0x1000, irq 193
 1 [Bt878          ]: Bt87x - Brooktree Bt878
                      Brooktree Bt878 at 0xf9000000, irq 177
 2 [Live           ]: EMU10K1 - SBLive! Value [CT4832]
                      SBLive! Value [CT4832] (rev.8, serial:0x80271102) at 0xb400, irq 209
mschiff@homer:~$

I'm using the SBLive for KDE sounds. I chose the master channel in kmix. But after a restart of kmix it still has the old wrong device. So it seems it does not remember what I chose as master device.

Another Problem: With ALSA, sound device order is likely to change now and then after a reboot. So telling a device number here doesn't make much sense here IMO.So if kmix could remeber a Soundcard name instead of a number that would be fine. Or: If kmix could be told to always use the ALSA default device, That would be nice IMO!

I set my default alsa device like that so that its always the SBLive (/etc/asound.conf):
pcm.!default {
    type hw
    card Live
}
ctl.!default {
    type hw
    card Live
}

Cheers
-Marc
Comment 25 Tim Hutt 2006-10-16 15:54:18 UTC
Marc, I have the same setup as you, but with an SiS onboard card instead of Via.

I also had the annoying random sound card order problem. I eventually found that it is caused be a slightly stupid alsa config file. I can't remember the exact file, but there is one that alters the bt878 card's device order in some evil way that leads to randomness. If you edit that file you can set the device numbers of all three cards manually and then they will stay fixed.

You can even make the SBLive card 0 which is excellent because then you don't have to go round reconfiguring apps/alsa everywhere.

Let me know if you can't find the file.
Comment 26 Christian Esken 2006-11-26 13:31:57 UTC
About comment 24 about the "device number". Yes, I am aware of that problem. It is already fixed for KDE4. Unfortunately there is no way to backport that for the KDE3 mixer, so for now you need to follow the workaround Tim described in comment 25.