Dear KMix Users, and reader of this blog [1]. This is a mission statement.
“I am now happy. Happy with the KMix version shipping with KDE4.11. Happy that I can now declare Media Play control as stable.”
You might neither be surprised or impressed or as happy as I am now. Here is the explanation: For years I mainly maintained KMix for following up with changes dictated by the outside world. The last year was very different and awesome – last year’s KDE Randa Meeting brought enough motivation to do critically needed KMix refactoring, and add support for media player contol (MPRIS2). KDE4.11 stabilizes the media player support. It is now really smoooooth. 🙂
Enough talking about me, and back to you, the user. Integrating media player control (MPRIS2) was dramatical harder harder than I anticipated. Issues arose where I did not expect them. I sincerely apologize if you endured issues, hangs during start or running the KDE Desktop due to KMix. Please go for KDE 4.11. All will be well now. If not, let me know. 🙂
I thank everybody involved, especially apachelogger for practical advice and Albert Astals Cid for coping with me technically being too late for KDE 4.11.
[1] Well, I guess that everybody reading this is a KMix user. But not the other way round. 😉
Posted by Mikiya Okuno on July 27, 2013 at 1:07 am
Hi!
It looks very nice! I will not have to use pulseaudio volume control anymore 😉
By the way, I have a problem when using KMix, it does not switch the master control when I connect a USB speaker automatically. My laptop has an internal speaker, but I sometimes want to use a USB speaker for better sound quality. (Olasonic is really awesome btw) I have to do it by hand every time I use a USB speaker. This is very messy. Is such a feature difficult to implement?
Kind regards,
Mikiya Okuno
Posted by beylix on July 28, 2013 at 2:49 pm
Yes, it is. One can only try to do a best-effort implementation, but it will likely require much time and work. Also some people might not want to switch, or only for specific devices. So you need to add options to the configuration dialog, and so on and so forth. All in all, if someone wants to try, I will gladly assist.
Posted by Benjamin Xiao on December 18, 2013 at 8:12 am
Why not just change it so that the volume controls work for the active audio device like how Gnome does it? In KDE settings, there is a priority list of audio devices. Topmost has priority and if that device is not available it will use the second one and the third, etc. Why not just detect which audio device is being used from that priority list and automatically set that as the master? Most people want to be able to control the device that’s currently playing sound. The usecase where a user would want the master channel set to some device other than the one that’s currently playing sound is debatable at best. Even then you can just add a single checkbox to the settings to configure this behavior.
Gnome handles this just fine. It’s always been one of my pet peeves using KDE since I have both my monitor speakers and TV connected via HDMI and I constantly need to switch the audio devices.
Posted by beylix on December 18, 2013 at 12:24 pm
A common question, and I keep the answer short. I have longer answers likely in former post comments and in the KDE wishlist/bug system.
Unfortunately it is highly complex – you have to match a KDE (Phonon) playback device to a mixer device. I have not yet investigated whether it is possible at the moment. If someone knows more about this, or can dig into the Phonon API, let me know and we can get this started.
Posted by Lukas Schneiderbauer on July 30, 2013 at 5:20 pm
.. in the meantime you could use ‘pasystray’ https://github.com/christophgysin/pasystray. It ships this feature.
Posted by olin on July 27, 2013 at 7:39 am
This looks awesome! Thanks!
Posted by dmikalova on July 27, 2013 at 9:13 am
Awesome! I was having a lot of trouble with KMix freezing in 4.10 and eventually it was fixed it in the Git branch. I can’t wait to get my hands on this awesomeness!
Posted by ben on July 27, 2013 at 10:41 am
How about proper oss4 support?
Posted by beylix on July 28, 2013 at 2:45 pm
OSSv4 was implemented (not by me) but further development was abandonded. OSSv4 is officially unmaintained. It will be removed at some time if required by further development, unless a new maintainer shows up.
Posted by Bart Otten on July 27, 2013 at 11:11 am
Thanks for your hard work. It really seems a good improvement to control each element of sounds from one popup. I think GUI wise there is still some work to do, but the functionallity of Kmix is kinda neat. I still am irritated when I scroll in other desktop software on the sound icon and nothing happens.
One small thing that I experienced yesterday (I did not investigate it at all as I screwed up my KDE install afterwards…): No auto detection of the master channel so I could not change volume quickly when the output changed to HDMI. Maybe this rings a bell, maybe not 😉
Posted by kubuntu-user on July 27, 2013 at 12:15 pm
OMG, finally. Thank you very much for your efforts! Looks nice.
Posted by sinma on July 27, 2013 at 5:47 pm
Awesome! This looks really great!
I’ve a question: when I change the sound with multimedia keys with ALSA (not PulseAudio), it add or remove a strange amount of volume, not always the same (5 or 4). With PulseAudio it’s always 5. Why?
Posted by beylix on July 28, 2013 at 2:14 pm
Pulseaudio operates with perentages (0 – 100), while KMix operates on the absolute values the volume levels supported by the sound card (e.g. 8 or 32 or 30000). KMix is more precise, especially if you operate via remote control (DBUS). Pulseaudio is more “natural”. What is better depends on the taste: Other people do not like both, and prefer dB values.
Posted by Sinma on July 29, 2013 at 9:58 am
Will it be possible to let the user choose what unit he want instead?
Posted by beylix on July 29, 2013 at 10:27 pm
I have personally no use or interest in that. So some other volunteer would do do that. Feel free to help.
Posted by Bart Otten on July 29, 2013 at 10:38 am
Usabilitywise KDE has one major failure. Instead of presenting ‘the right options’, it includes all options cause of the idea of freedom. Yet, there is something like “the paradox of choice” which means choice will hurt your feeling of freedom when you get too many of it.
Is it really that important that there is another option for this? And i you think so, how many people will think like you? You probably won’t know without some survey. You might please the very last 2% by including 1029 options, but changes are high you loose the first 35% (only KDE desktop users/not (tech)blogreaders) by doing so.
That’s why I am very happy some people in the project do surveys nowadays and take the conclusions to the designers (or design a new GUI themselves). Those surveys are very professional and the last one I have seen (about KScreen?) was really outstanding in the way the questions were formulated. We don’t need all options in KDE. We need those option (visible) that will please the most users.
1.) Option A = 85%
2.) Option A and B = 95%
3.) Option A, B and C = 87%
4.) Option A,B,C and D = 63% << this one includes the 2% that comment on blogs like this (for example)
What should we pick?
Posted by Sinma on July 29, 2013 at 10:56 am
In fact, I just want to have the same behavior accross backends.
Posted by sinma on August 2, 2013 at 5:06 pm
Maybe it’s better Kmix behaves the same way either with ALSA or pulseaudio, working with percentage (seems more natural I think).
Posted by Adam on September 8, 2013 at 8:47 am
You’re the expert, not me, but after reading a bit from Lennart Poettering about how PulseAudio handles volume changes across multiple devices and channels and virtual devices, etc, all with different, layered ranges and units–I think it would probably be best to just do volume changes through PA. It’s a really hard problem, but PA has basically solved it. Why let that go to waste? 🙂
Posted by beylix on September 25, 2013 at 9:22 pm
It is only about replacing playback streams, not about devices: PA Playback Stream volume is roughly equivalent to MPRIS2 volume control. MPRIS2 additionally supports playback control (pause, next, …). So replacing playback streams would be/ an advantage.
Posted by Paolo on July 27, 2013 at 5:48 pm
many many thanks to all of you!
Posted by nece228 on July 27, 2013 at 6:54 pm
Why horizontal sliders are bad? Because you say turn the volume up, or down, but not turn it left or right, so please switch to vertical sliders, its also less confusing when you change volume with mousewheel.
Posted by beylix on July 28, 2013 at 2:07 pm
No panic. Slider orientation can be configured. It will not even change if you are upgrading from a recent version. 🙂
Posted by Gabriel on August 15, 2013 at 5:31 pm
Then isn’t it possible to get the new Kmix after an upgrade?
Posted by beylix on September 1, 2013 at 4:27 pm
If you update to the new KDE, you will get the new KMix. is this what did you meant to ask?
Posted by baltolkien on July 28, 2013 at 10:01 am
Good work!
But, a simple detail: the correct name of Albert Astral Cid is Albert Astals Cid 🙂
Regards
Posted by beylix on July 28, 2013 at 2:05 pm
Thanks for observing. Fixed it.
Posted by jospoortvliet on July 31, 2013 at 9:50 am
I would like to note that Albert ASTRAL Cid is a way cooler name 😉
Posted by Daniel on July 28, 2013 at 11:26 am
Is there an option now for quickly switching output devices too?
Posted by beylix on July 28, 2013 at 2:17 pm
What exactly do you mean. Switch the default of some type (Music, Notification, …), switch a running music stream, or something else?
Posted by Bart Otten on July 29, 2013 at 9:14 am
Switch from onboard audio to HDMI for example I guess. Sence auto-detection is very hard to develop according to you, it might be a nice ‘workaround’ to have a very fast switch. Even if it’s not implemented in the default popup, it would be great to have it under ‘rightclick: tray icon > hover: select output device > click: output name’
As Interaction Designer/User Experience Designer I am willing to help making the GUI as easy yet effective as possible.
Posted by beylix on July 29, 2013 at 10:41 pm
I am happy about any help, Bart. My problem is not the auto-switch, but the mapping from mixer device to audio device. As far as I see there is no mapping from “ALSA hw:0” to “Phonon: Music”, or to a specific backend like “GStreamer device 3” or “Pulse sink” or “Jack output”.
Manually switching a specific stream is already possible when using the Pulseaudio backend. Is this what you have in mind? It is only one possible scenario for switching that users want (switch stream, switch device for Music, switch for Headphone, switch for all input, switch for all).
Posted by Pete on July 28, 2013 at 12:29 pm
Great work, I’m looking forward to it and KDE 4.11 as well 😀
Posted by pepedopolous on July 28, 2013 at 2:27 pm
Hi. Thanks for all your work, I’ve had no problems with kmix for longer than I can remember!
Is the media play function available 4.10.97 (KDE 4.11 RC2)? I don’t get any play controls in the kmix applet for either Amarok or Clementine (using Arch Linux testing packages).
Posted by beylix on July 28, 2013 at 2:52 pm
Media player control is available with the MPRIS2 backend. If you use Pulseaudio, then you have Pulseaudio streams, and MPRIS2 is deactivated. If you want to try, there is an earlier post describing how to manually switch Backends.
Posted by Adam on September 8, 2013 at 8:49 am
Sorry, I’m confused: why is MPRIS2 a replacement for PA support? Isn’t controlling a music player orthogonal to controlling volumes and mixers and devices?
Posted by beylix on September 25, 2013 at 9:20 pm
It is only about playback streams: PA Playback Stream volume is roughly equivalent to MPRIS2 volume control. MPRIS2 additionally supports playback control (pause, next, …)
Posted by Links 28/7/2013: Arch Linux Has Linux 3.10 | Techrights on July 28, 2013 at 3:38 pm
[…] KMix Mission Statement 2013 and KDE 4.11 […]
Posted by Anand (@anandrkris) on July 29, 2013 at 2:42 am
Hi – Nice work. Looking forward to 4.11. I have a question, perhaps a dumb one, is there any proposal or thoughts to integrate Phonon and KMix? I think, overall there should be simpler way of managing sound setting in KDE…..
Posted by beylix on July 29, 2013 at 10:24 pm
What do you have exactly in mind? It is not my desire to duplicate Phonon settings in KMix, so you can open the settings from KMix.
Posted by Anand (@anandrkris) on July 30, 2013 at 4:07 pm
Hmm. For instance, if i want to check my microphone levels when i plug in a mike it is not as direct and intuitive as one would wish it to be. Ideally, Kmix should show it?
https://plus.google.com/107970213369875035288/posts/HyHkoBgMciT
Also, what’re you thoughts on having a troubleshooting / diagnostics wizard for sound issues?
http://community.linuxmint.com/idea/view/3844
Hope I am not a bother with all these links! 🙂
Posted by beylix on August 2, 2013 at 3:53 pm
“Ideally, Kmix should show it?”. Possibly. But not all the time and for every user. Also doing it is very complicated due to mapping mixers to actual or virtual sound cards, controls or streams. I am not too interested in this feature, but you or anybody got my go if you want to help. Just contact me.
About a troubleshooting / diagnostics wizard: A general (distribution and OS independent) solution will be very much work. I will salute to anybody who will solve that task. Lets see whether there will be a followup to http://community.linuxmint.com/idea/view/3844 is interesting.
Posted by buba on August 1, 2013 at 8:43 pm
grat job, many thanks for you 😉
Posted by LinuxLife Blog » News: KDE SC 4.11 freigegeben on August 15, 2013 at 9:21 am
[…] Der Soundmixer KMix wurde beschleunigt und von Fehlern befreit. Außerdem unterstützt er jetzt die vollständige Medienplayer-Steuerung auf Basis des […]
Posted by YAFU on August 15, 2013 at 1:22 pm
Hello beylix.
I have upgraded to KDE 4.11 in Kubuntu and Media Play controls do not appear on KMix. Should I install some extra dependency so that they are shown?
Thank you.
Posted by beylix on September 1, 2013 at 4:19 pm
If Pulseaudio is in use, the Streams from Pulseaudio will be shown, which has no media control support. MPRIS2 support it, and you can force KMix to prefer MPRIS2 over Pulseaudio. See https://kmix5.wordpress.com/2011/12/30/winter-of-69-welcome-kmix-v4/ . It will likely also be added to the GUI or made default, please see https://bugs.kde.org/show_bug.cgi?id=302771 .
Posted by KDE 4.11, un adiós a lo grande y a lo largo | Support-Tech on August 15, 2013 at 3:30 pm
[…] teníamos ganas de que llegara: control de reproductores multimedia integrado. Un aplauso, que el camino ha sido duro. Con todo, tengo que advertir que esta novedad no la he visto en Kubuntu, donde estoy probando KDE […]
Posted by Nicolas on August 18, 2013 at 2:14 pm
YES! I don’t need pavucontrol anymore, great job!
just a little problem: this is not working with audio from browsers. checked it with firefox 22 and chromimum 28 with flash and html5
Posted by beylix on September 1, 2013 at 4:23 pm
Unfortunately browsers do not (yet?) provide the MPRIS interface. I am also not aware of efforts in that direction.
Posted by Jacky Alciné on August 18, 2013 at 7:19 pm
I’m using KDE 4.11.00 with KMix 4.4 and I don’t see these changes. Is there something I have to tell it to do? Amarok and Spotify both emit MPRIS commands but I don’t see anything.
Posted by beylix on September 1, 2013 at 4:24 pm
See the reply to the comment I just did. Short version: https://kmix5.wordpress.com/2011/12/30/winter-of-69-welcome-kmix-v4/
Posted by Jacky Alciné on September 9, 2013 at 1:23 pm
Gotcha; thanks. Only wished I could get this with Pulseaudio; but I’m content.
Posted by Thomas on August 20, 2013 at 12:12 pm
I just can’t get these fancy Pause/Skip buttons to show up, I only get the plain sliders. I’m using Amarok 2.8/Audacious 3.3 in kde 4.11 (openSUSE 12.3). What am I doing wrong?
Posted by beylix on September 1, 2013 at 4:24 pm
See the reply to the comment I just did. Short version: https://kmix5.wordpress.com/2011/12/30/winter-of-69-welcome-kmix-v4/
Posted by Zoidberg on August 20, 2013 at 6:59 pm
How can I enable this? I’m using KDE 4.11 (updated from 4.10) and Clementine.
Posted by beylix on September 1, 2013 at 4:24 pm
See the reply to the comment I just did. Short version: https://kmix5.wordpress.com/2011/12/30/winter-of-69-welcome-kmix-v4/
Posted by KDE 4.11 La última versión hasta la llegada de la KDE 5.0 | linuxbsdlibre on September 10, 2013 at 9:45 pm
[…] teníamos ganas de que llegara: control de reproductores multimedia integrado. Un aplauso, que el camino ha sido duro. Con todo, tengo que advertir que esta novedad no la he vistoen Kubuntu, donde estoy probando KDE […]
Posted by Reuben Kagan on September 17, 2013 at 4:51 pm
For any arch linux pulseaudio kde users that, like me, have some update made their kmix broken by enabling this Alsa:MPRIS2 backend as default, the fix is very fast and easy:
open ~/.kde4/share/config/kmixrc, find every string starting with
[View.PulseAudio.
and add the string
Show=true
after it.
Posted by apache on September 20, 2013 at 9:05 am
Please add option to change ability to set the percentage of volume – VolumePercentageStep – I refer to Bug 189995.
Posted by jean on November 22, 2013 at 6:56 pm
Thanks a lot for your awesome work. From what I get it is not possible to get these nice control buttons with pulseaudio ?
Posted by beylix on November 26, 2013 at 1:00 am
Well. It is possible but it is not polished enough for the general audience. If you like to play, you can set the backends manually – look for an older post, there might also be a link in one of the comments in this post. You would need the following in your “kmixrc” file, but I currently cannot test myself whether it actually works.
Backends=MPRIS2,PulseAudio
Posted by jean on November 26, 2013 at 2:38 am
Thanks for your anwser but indeed it’s not ready 😦
Buttons work but volume slider is not active. In fact for each sound playing, two streams are visible : 1 pulseaudio with a volume slider (working) + 1 MPRIS2 with buttons (working) and volume slider (not working).
Thanks for your work anyway !