Win7 Volume Mixer Featured

Plasma 5 Multimedia

Source (link to git-repo or to original if based on someone elses unmodified work): https://github.com/Zren/plasma-applet-volumewin7mixer

11
Score 73%
Description:

v18+ requires Plasma 5.8
v11+ requires Plasma 5.7
v2 is tested on Plasma 5.5 and Plasma 5.6

A reskin of the default plasmoid. Cannot be placed in the systray (use kmix instead if you want that).

* Vertical sliders
* Can change the media keys volume up/down percentage.
* Added links to alsamixer and pavucontrol in the context menu.
* Plasma 5.7: Can volume boost to 150% with the context menu
* Plasma 5.7: Can switch default speaker/microphone (and move all app streams to the device) with the context menu
* Plasma 5.7: Media Playback Controls
* v19: Keyboard Shortcuts (See config for a list)

After installing, System Tray Settings > Extra Items > Uncheck "Audio Volume". This will hide the default audio widget.

pavucontrol is not installed by default, so the context menu item will do nothing if not installed.

Arch: pacman -S plasma5-applets-volumewin7mixer

Translators: Fill out https://github.com/Zren/plasma-applet-volumewin7mixer/blob/master/package/translate/template.pot, paste into https://www.hastebin.com/, click save, and comment with the link.
Last changelog:

v23 - June 5 2018 6 months ago

* Add "Profile" submenu for devices to quickly switch HDMI => Speakers for certain laptops, or from Stereo to Surround. Creating a submenu required a workaround to avoid a SegFault (plasmashell crash). While the workaround does work, please report if plasmashell crashes when opening a device's context menu.
* Don't send multiple "set volume" events when changing a left/right/etc channel volume.
* Add ability to open the a stream's context menu via the keyboard "Menu" key.
* Attempts to fix the Media Controller's various glitches.

brunofin

1 month ago

+This is better than the default volume mixer in my opinion.

Report

yannux

1 month ago

Great widget !

Report

Nano-Ocelot

3 months ago

+Never mind the problem fixed itself after a couple of reboots. I'm using it now and fully endorse it. I have another suggestion. Perhaps it's easier. The ability to give custom nicknames to devices or at the very least have a tiny distinction between certain ones. For reference, I have two mics (headphones and webcam) and they both just show up as generic "mic." I know it isn't a big deal to hover over and view the tooltip, but it'd be a nice touch. Regardless some way to quickly swap default outputs is my number one requested feature. I used an application called 'audioswitch' back on windows and it had a shortcut to do exactly that. It was convenient to only have to press two shortcuts to switch to another monitor and change the audio output to it as well.

Report

C

Zren

3 months ago

> For reference, I have two mics (headphones and webcam) and they both just show up as generic "mic."

Can you see anything distinctive between the two? Run the command "pacmd list-sources" to compare them.

I currently override the long name with "Mic" if the name contains the keyword "alsa_input." which might be too generic.
https://github.com/Zren/plasma-applet-volumewin7mixer/blob/master/package/contents/ui/MixerItem.qml#L185

If you're confortable with sharing the entire "pacmd list-sources" output, paste it into https://hastebin.com/ then click the save icon, and copy the url.

Report

Nano-Ocelot

3 months ago

Lol so the icons are flickering again. I even deleted my cache and rebuilt it. Strange...

Report

Nano-Ocelot

3 months ago

Been trying this with Plasma 5.12.5 and there's some issues that keep me from using it. There's a menu bug where the device and mute icons flicker when hovering over them. This is minor. What would really get me to use it would be the ability to set custom keyboard shortcuts. Namely to switch default devices with a single shortcut. Any other custom shortcuts would be a plus.

Report

C

Zren

3 months ago

> There's a menu bug where the device and mute icons flicker when hovering over them.

The "hover effect" is intentional, but I'm not getting any "glitchy flickering". Perhaps clearing the KDE icon cache would fix it?
https://streamable.com/jrs6h

> What would really get me to use it would be the ability to set custom keyboard shortcuts.

Hmmm. Interesting Idea, not sure how to do it though.

Report

Nano-Ocelot

3 months ago

I'll try that and report back. Do you know a way to do that? I haven't used KDE in around 5 years and I've forgotten most of it. Thanks in advance.

Report

C

Zren

3 months ago

I think deleting ~/.cache/icon-cache.kcache and restarting might work. I have tried that in an attempt to fix something similar but it didn't work.

Report

baioc

4 months ago

should be made the default volume widget

Report

flappysquirrel

4 months ago

+

Report

tuxmerlin

4 months ago

Excellent!!!

Report

killerjn

1 year ago

no funciona con alsa?

Report

C

Zren

1 year ago

This widget uses plasma-pa (pulseaudio)'s libraries (plasma's default volume widget). It requires pulseaudio. If you want alsa only, I think you could use kmix still.

Report

obedlink

1 year ago

can you do that when you have several tabs in the browser, the audio mixer shows the name of the tab instead of displaying firefox or chrome in all.

This is a problem with the original plasma audio mixer because we do not know which is which.

Report

C

Zren

1 year ago

I've previously skimmed the chromium source code to see the difference on how it handles this in Windows and in Linux with PulseAudio. I couldn't lock down where it tells the stream name the title of the tab. I'll try looking into Firefox's source code next time and see if I can find it there. Basically, this requires patching Chrome + Firefox I think because running "pactl list" doesn't show the title of the tabs.

Report

rocky7x

1 year ago

The widget looks really great - thank you for the excellent work! The only thing I'm missing is the volume feedback as in the original Plasma volume widget - when you increase or decrease the volume, a popping sound indicating the current volume at every step provides a good information about the current volume.

Report

C

Zren

1 year ago

Hum, wow, plasma added that back in 5.8, I've been pretty lazy on adding that. v18 should have it.

Report

rocky7x

1 year ago

Thank you very much :)

Report

tarbos

2 years ago

I like this much better than the default plasma mixer :D

A few feature requests though: (i'm using v2 / KDE 5.5, so some things may already be done)
* Button to make the window sticky (open from control panel, click on button, focus another window, mixer widget stays open)
* Make it possible to hide certain volume bars.
* Switch output device for an application
* Button: "Show non-active applications"
* Full keyboard control
* Make it possible to configure the following things:
* Bar colors
* Bar width
* Volume Up/Down steps for the mouse wheel (its way too big now) and keyboard (which needs to be implemented first)

okay it's quite a lot, but that would make it perfect for me ;)

I'd help you coding, but that probably won't make much sense as long i'm stuck with plasma < 5.7, which won't change until i can afford a new GFX card, which in turn may still take a few months :/

Report

C

Zren

2 years ago

* Pin Button is in a future version, but would be easy to backport to a v2.1 branch
https://github.com/Zren/plasma-applets/tree/volumewin7mixer-2
https://github.com/Zren/plasma-applets/commit/972f93b99228a40009a3305f307a43ef05dffdd4
* You can drag and drop the app onto a speaker. This is a feature ported from the default widget (though it was added in KDE 5.7).
* Showing non active applications is something you'd have to ask upstream for (plasma-pa / the default widget).
* Not sure what you mean by keyboard controls. Elaborate?
* I've considered creating a color picker layout for awhile, but it's just easier to depend on the theme for the colors. Might do it eventually.
* As in the width of the volume control? or the text label + icon as well?
* Scrolling over the icon in the panel is configurable in the settings right? Hovering the volume sliders is waaay too much work to make configurable since it depends on a specific variable. I'd have to rewrite the QML slider to do that. The best I can do is chose a different default. Right now, 11 mousewheel clicks gets you from 0 -> 99% volume (so 12 clicks). Should I aim for the default of 15 clicks? Or...?

Report

tarbos

2 years ago

* Glad to hear that about the Pin Button
* Yay! Drag and drop is a good thing here, unfortunately it's not immediately clear to a user.
Possible solutions:
1. A first use dialog explaining it.
2. In context-menu: "Tips & Tricks" item, explaining this (and possibly other nice stuff)
3. In context-menu: "Move to" submenu, with 2 inactive Items "You can also drag & drop" "the application icon on an In-/Output"
* ok
* Plasma allows each widget to be focused by a shortcut - no worry here... but then:
1. Cursor Keys to switch channel and raise, lower volume. Active channel needs to be highlighted somehow (maybe a line below). Highlighting could fade when no keys are pressed for a while. Menu key/Space/something for advanced options.
2. Direct control through keys like shown here: http://www.aguzinski.eu/BWPubq6/VolKeysMockup.png
A "what do i press" window like that could pop up on pressing Shift. The idea is first keyboard rom Channel switch, second Volume up and so on. Mapping should probably start from the right to make non-apps always have the same keys. Of course this has to be configurable in order to be usable for people with non-programmer-dvorak layouts, but i'm sure i can write some code to create a sane default mapping depending on the users current layout (have done something similar in qt/c++ by parsing output from xmodmap -pk).
On that pic you can also see why i want to hide some channels. 2 Mics and 1 Speaker are never used. Also something has to be done about identically named channels, but upstream may be the better place for that.
* and * What bothers me is too much bright blue in the dark. I'd say shrink both, but that may leave too little space for the text. Something like this may be a good alternative: http://www.aguzinski.eu/BWPubq6/VolSliderMockup.png Note that the slider is 50% transparent. Goals: less brightness & smaller widget. Again this has to be configurable, as some people will certainly like the current style better.
* Seems like upstream needs to add a stepsize property ^^. 15 is probably a good default. 16-20 may work well, too.
There seems to be a bug though, as it's only 8 steps from 0 to 100 for me.

Report

tarbos

2 years ago

i mean keyboard *row* - not rom

Report

C

Zren

2 years ago

> Also something has to be done about identically named channels, but upstream may be the better place for that.

When you hover the icon, what does it say the name+description for both of them?

I changed the name to be "Speaker" and "Mic" instead of the long and useless "Built in Analog Stereo". It will use that when the name starts with "alsa_output." and ends with ".analog-stereo".

* I'm unlikely to add AlsaMixer-like keyboard controls anytime soon.
* I'll probably do a "Speaker" submenu someday, I remember that iterating the speakers was a pain though so that's probably why I didn't add it.
* I don't think I'll be doing vertical text even as an option.
You're welcome to try doing some more heavy customizing by editing the file:
/home/chris/.local/share/plasma/plasmoids/org.kde.plasma.volumewin7mixer/contents/ui/MixerItem.qml
then restart plasma with:
killall plasmashell; plasmashell & disown

Report

C

Zren

1 year ago

I'll be adding keyboard control in the next version. If you open it with the global shortcut, it'll add a pulsating outline around the selected stream. You can then hit up/down to control the volume.

Preview: https://streamable.com/w7gzh

Report

v23 - June 5 2018 6 months ago

* Add "Profile" submenu for devices to quickly switch HDMI => Speakers for certain laptops, or from Stereo to Surround. Creating a submenu required a workaround to avoid a SegFault (plasmashell crash). While the workaround does work, please report if plasmashell crashes when opening a device's context menu.
* Don't send multiple "set volume" events when changing a left/right/etc channel volume.
* Add ability to open the a stream's context menu via the keyboard "Menu" key.
* Attempts to fix the Media Controller's various glitches.

v22 - December 26 2017 11 months ago

* Reimplement mouse wheel mute, wheel to control volume which was accidentally removed in the v21 refactor.

v21 - December 6 2017 1 year ago

* Add (proper) support for use in the system tray. Will open in it's own popup window.
* Unchecking echo cancellation will also uncheck the "list to device" if listening to the echo cancelled stream.

v20 - November 11 2017 1 year ago

* Use the same shape for the slider handle as Windows 7.
* Automatically close popup when selecting default device (can disable in config).
* Implement toggle for echo cancelling and microphone loopback.
* Show checkmark next to the default speaker/mic when 2+ devices.
* Hide virtual streams by default (configurable).
* Scale panel icon to the same maximum size as the other icons in Plasma 5.10.
* Begin packaging translations in the *.plasmoid (requires KDE Frameworks v37 to work). Reused some translations from the default volume and mediacontroller widgets.

v19 - March 29 2017 1 year ago

* Can now use keyboard navigation to select a stream.
** Left/Right: Select speaker/mic/app/etc.
** Up/Down: Increase/decrease selected volume (by same amount as volume keys).
** M: Mute/unmute selected stream.
** 0-9: Set volume to 0%-90%
** Enter: If a mic/speaker is selected, make it the default device.
* Selected stream will have a pulsating outline. Current default speaker is selected by default. Outline is hidden if you open the mixer with the mouse, but shortcuts will still work.
* Global shortcut will now toggle the popup.
* Fix the blue on gray theme using the color scheme rather than hardcoded colours.
* Fix toggling the volume boost, snapping the value to just over 100% causing it to remain in "boosted" state (with a max of 150%).
* Drag to 1% intervals when volume boosted (instead of 1.5%, 3%, 4.5%, etc).
* Possibly fix a binding loop when checking if you can seek through a song.

v18 - March 23 2017 1 year ago

* Raised minimum requirements to Plasma 5.8
* [upstream] Add volume feedback
* Show current version in the config.

v17 - March 21 2017 1 year ago

* Fix for the media slider starting at the length of the previous song. Thanks davidedmundson.
* Get rid of the 1px outline on the volume slider groove.
* The new volume slider layout will now be coloured based on the desktop theme.
* The previous volume slider theme/colouring (light blue on gray) can be selected in the settings.
* Add time elapsed & time left next to the song's progressbar like the default media controller widget. Both are toggleable, along with the option to show the total duration of the song.

v16 - March 15 2017 1 year ago

* Make the icon+label into a button that opens the context menu.
* You can now drag a microphone onto a recording app to change it's input. I only tested this with SimpleStreamRecorder and it added recorded both the desktop output and the microphone output at the same time rather than switching from one to the other.
* Overlay 'emblem-unlocked' when app isn't using the default speaker/mic. I may change the icon if a better one is recommended.
* Fuss with the volume slider triangle. It will now be thicker when volume is boosted.
* Make the group title (Apps/Mics/Speakers) into a button. It will probably be used for filtering unwanted streams in the future, but for now it just lists the items in it's group.
* Fix the label/icon when using the echo-cancel pulseaudio module.

v15 - March 14 2017 1 year ago

* Reskin the volume sliders to be triangular similar to kmix/win7.
* Allow placing the media controller at the top of the popup.
* Make the media controller slider taller.
* Scale the widget based on the DPI.
* Remove context menu link to the kcm like the default widget. It's still availble with "Audio Volume Settings..." > "Audio Volume".
* Map speakers with names starting with "bluez_sink." to a bluetooth icon.
* Add a properties dialog listing all the values for a speaker/app/microphone.
* Use 'google-chrome' icon for "chrome (deleted)" streams.
* Use the "microphone volume/mute" icons from the OSD for a microphones mute button.
* Add toggle for showing the OSD.
* [upstream] Mute volume when the slider is at 0%.
* When using the mediakeys, jump to 100%/0% if less than 1 step away.
* Compare the port key for "headphone" instead of the localized "Headphone" when deciding on the icon.
* Fix the mute button icon's hover effects.
* Fix all strings for localization with i18n.
* Russian translations are available in RosaLinux's ABF: https://abf.rosalinux.ru/victorr2007/plasma5-applet-volumewin7mixer
* Use doubles instead of ints for the mpris2/media controller's position/duration which are in microseconds since it was overflowing on songs/movies longer than 33 minutes.

Full Changelog 2 years ago

https://github.com/Zren/plasma-applets/blob/master/org.kde.plasma.volumewin7mixer/Changelog.md

product-maker brunofin Nov 13 2018

+This is better than the default volume mixer in my opinion.

product-maker yannux Nov 12 2018

Great widget !

product-maker Nano-Ocelot Sep 06 2018

+Never mind the problem fixed itself after a couple of reboots. I'm using it now and fully endorse it. I have another suggestion. Perhaps it's easier. The ability to give custom nicknames to devices or at the very least have a tiny distinction between certain ones. For reference, I have two mics (headphones and webcam) and they both just show up as generic "mic." I know it isn't a big deal to hover over and view the tooltip, but it'd be a nice touch. Regardless some way to quickly swap default outputs is my number one requested feature. I used an application called 'audioswitch' back on windows and it had a shortcut to do exactly that. It was convenient to only have to press two shortcuts to switch to another monitor and change the audio output to it as well.

product-maker baioc Aug 11 2018

should be made the default volume widget

product-maker flappysquirrel Aug 09 2018

+

product-maker mentis May 15 2017

product-maker obedlink Apr 04 2017

product-maker WIP42 Mar 30 2017

product-maker Animalfox Mar 26 2017

product-maker scsimodo Mar 22 2017

product-maker PootisSpencer Mar 18 2017

product-maker cinnamoner Mar 17 2017

product-maker gfdsa3 Nov 24 2016

product-maker tepca Nov 09 2016

product-maker dubious Nov 09 2016

product-maker izzzy Nov 05 2016

product-maker fracaburda Oct 31 2016

product-maker aramgrigoryan Sep 08 2016

product-maker janet May 15 2016

product-maker rosenrot May 14 2016

product-maker 6 6

File (click to download) Version Description Packagetype Architecture Downloads Date Filesize DL OCS-Install
Pling
Details
license
GPLv2 or later
version
23
updated Jun 05 2018
added May 13 2016
downloads today
0
page views today 24