VolumeControl.SDK 6.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package VolumeControl.SDK --version 6.1.0                
NuGet\Install-Package VolumeControl.SDK -Version 6.1.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VolumeControl.SDK" Version="6.1.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add VolumeControl.SDK --version 6.1.0                
#r "nuget: VolumeControl.SDK, 6.1.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install VolumeControl.SDK as a Cake Addin
#addin nuget:?package=VolumeControl.SDK&version=6.1.0

// Install VolumeControl.SDK as a Cake Tool
#tool nuget:?package=VolumeControl.SDK&version=6.1.0                

<p align="center"> <a href="https://radj307.github.io/volume-control"><img alt="[Volume Control Banner]" src="https://i.imgur.com/rMbNIhU.png"></a><br/> <a href="https://github.com/radj307/volume-control/releases/latest"><img alt="GitHub tag (latest SemVer)" src="https://img.shields.io/github/v/tag/radj307/volume-control?color=e8e8e7&label=Latest%20Release&logo=github&logoColor=e8e8e7&sort=semver&style=flat-square"></a>   <a href="https://github.com/radj307/volume-control/releases"><img alt="Downloads" src="https://img.shields.io/github/downloads/radj307/volume-control/total?label=Downloads&color=e8e8e7&logo=github&logoColor=e8e8e7&style=flat-square"></a>   <a href="https://github.com/radj307/volume-control-cli"><img alt="Volume Control CLI Latest Version" src="https://img.shields.io/github/v/tag/radj307/volume-control-cli?color=e8e8e7&logo=github&logoColor=e8e8e7&label=Latest%20VCCLI%20Version&style=flat-square"></a> </p>


<p align="center"> Application-specific volume control that supports the keybindings you already use.<br/> Designed for effortless music volume control <i>(Spotify, Deezer, Chrome, Firefox, etc.)</i> without disrupting gaming or VoIP audio. </p>

What It Does

  • Lets you control the volume of specific programs using only the keyboard.
  • Can override pre-existing keys & key combinations, including all of the media keys.
  • All hotkeys are completely user-customizable and can be bound to a variety of actions.
  • New actions can be added via user-created addons.
  • Offers more features and a more compact UI than the Windows Volume Mixer.
  • And more!

How does it work?

Volume Control leverages the Win32 API to establish seamless native hotkeys, effectively superseding default Windows keybindings with imperceptible latency. Employing the same approach as the native Windows volume mixer, it offers compatibility with all applications.

Volume Control empowers users with an unlimited array of unique hotkey combinations, each fully customizable with specific actions. The default options include common actions like "Volume Up", "Volume Down", and "Toggle Mute". Furthermore, you have the flexibility to create and integrate your own custom actions in C# to enhance Volume Control's functionality.

Getting Started

Getting started is simple. Download VolumeControl-Installer.exe from the latest release, and run it. It will guide you through the installation process.

If you prefer to use a package manager, you can use Winget to install Volume Control:

winget install radj307.volume-control

Manual Installation

Download VolumeControl.exe from the latest release and move it to a location of your choice.

Before starting the program for the first time, you have to unblock the executable from the properties menu.
This is necessary because Windows requires paying >$300 a year for a Microsoft-approved publishing certificate in order to prevent Windows Defender from blocking it.
If you're unsure, you can always run it through VirusTotal first, or check the source code yourself.

  1. R+Click on VolumeControl.exe in the file explorer and select Properties in the context menu.
  2. Check the box next to Unblock:
    alternate text is missing from this package README image
  3. Click Ok to save the changes.

All that's left now is to run the application.

Usage

First, enable the Volume Up & Volume Down hotkeys from the Hotkeys tab by checking the box to the left of the hotkey name. If you don't have a volume slider, change the key from the dropdown. You can also set a modifier key with the checkboxes to the right of the dropdown.

NOTE: Hotkeys cannot be enabled if their associated key is set to None.
View of the Hotkeys Tab

Next, let's set a target application to test the hotkeys with.
Start playing some audio from any application, then return to the Mixer tab, click Reload, then click the Select button next to the test application, and try using the volume hotkeys.

View of the Mixer Tab

In the settings tab, you can change how the application behaves such as which audio device is controlled, enable or disable the toast notification, enable advanced hotkeys, set the volume step (how much the volume will increase on decrease when the hotkeys are pressed), tell the application to run on startup, and more!

View of the Settings Tab

By enabling notifications, you will see a toast notification in the bottom right of your screen when you switch target sessions. This tells you which session is currently selected. Using the Un/Lock Session hotkey, you can prevent changing the targeted audio device. The border of the toast notification will be red when the currently targeted session is locked. You can press the hotkey again to unlock the session.

View of the toast notification View of the toast notification when an audio session is locked

If you want to add or remove hotkeys, you can press the Edit Mode button to enable editing. You can create new hotkeys, and change the action of each hotkey when it is pressed. You can reset all hotkeys to their default value by pressing the Reset Hotkeys button. Note that this will also remove any additional hotkeys you have created.
View of the advanced hotkeys

⚠️ Note

Some applications that use the DirectInput API (dinput) - usually games - may cause issues with Volume Control's hotkeys.
In many cases you can resolve this by running Volume Control as an Administrator. (See issue #44)

Troubleshooting

The first step when troubleshooting is always to delete volumecontrol.json and re-launch; this fixes the vast majority of bugs.
If this does not fix your problem, post a bug report and we'll do our best to help.

Contributing

See CONTRIBUTING.md for more information.

Addon Development

Want to develop an addon for Volume Control?
Get started with the tutorial!
We also have doxygen-generated API Documentation available online.

Product Compatible and additional computed target framework versions.
.NET net6.0-windows7.0 is compatible.  net7.0-windows was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
6.6.3 202 11/22/2023
6.6.1 121 11/13/2023
6.6.0 114 11/13/2023
6.6.0-pr1 96 11/12/2023
6.5.2 105 11/8/2023
6.5.0 119 11/3/2023
6.4.0 135 10/28/2023
6.3.0 137 10/24/2023
6.3.0-debug 107 10/25/2023
6.2.0 134 10/21/2023
6.2.0-rev1 118 10/21/2023
6.1.1 129 10/18/2023
6.1.1-SelectActiveApplication 95 10/19/2023
6.1.1-rev1 98 10/19/2023
6.1.0 119 10/18/2023
6.1.0-pr1 99 10/12/2023
6.0.5 131 10/3/2023
6.0.4 123 10/1/2023
6.0.3 124 9/29/2023
6.0.2 126 9/27/2023
6.0.1 129 9/23/2023
6.0.0 318 1/13/2023
6.0.0-pr9.1 66 9/16/2023
5.2.6 377 8/26/2022
5.2.5 369 8/19/2022
5.2.4 365 8/17/2022
5.2.3 374 8/7/2022
5.2.2 397 8/6/2022
5.2.1 384 8/6/2022
5.2.0.1 391 8/5/2022
5.2.0 388 8/5/2022
1.0.0 378 8/3/2022