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
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" ). 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<----------------------- 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. 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 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 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. *** Bug 117170 has been marked as a duplicate of this bug. *** 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. 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. Created attachment 14076 [details]
Screenshot, showing the wrong selected channel...
Created attachment 14077 [details]
Output of "amixer -c 0"
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.
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. 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 *** Bug 115045 has been marked as a duplicate of this bug. *** *** Bug 120297 has been marked as a duplicate of this bug. *** 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 The bugfix has now been forward ported to KDE4. *** Bug 119558 has been marked as a duplicate of this bug. *** 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? Sorry, I forgot to mention. This happens on Gentoo Linux with kmix 2.6 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. *** Bug 122930 has been marked as a duplicate of this bug. *** 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 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. 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. |