Master Volume Changer

The simplest way to change the volume for a set of sounds is to set the bus volume. If you route all your sounds into a bus then setting that volume will change the overall volume of the game. You can do this by blueprint, using the BusSetFaderLevel function. The bus should be listed in the content window so you can select the bus easily via. Hello, I am developing an iOS Application that connects to a midi keyboard, and controls the keyboard. I was able to send messages to play notes, change the pitch band, and many other functionalities. But i was unsuccessful to send system exclusive real time messages, for example microtuning and changing the master volume. I have tested on several.

Unfortunately, [email protected] Partition Manager can't resize locked volumes, which means it won't let you change the size of the system volume. [email protected] Partition Manager should work just fine with Windows 10, 8, 7, Vista, and XP, as well as Windows Server 2012, 2008, and 2003. Drag and drop a file that you want to change the volume of. Browse computer. Supported file formats: MP3, WAV, FLAC, OGG. Max file size 50MB. Raise the volume. If an audio file is too quiet, you can easily use this tool to raise the volume of the file. Lower the volume. Restore it by right-clicking the taskbar’s digital clock, choosing Properties, and turning the Volume switch to On. Click the speaker icon and move the sliding control to adjust your PC’s volume. To mute your PC, click the little speaker icon at the left of the sliding control, as shown.

Many C++ developers already know CVolumeOutMaster classes by published on CodeProject. These classes allow easily regulate and track the changes of such volume controls as Output Master Volume, WaveOut Volume and Input (WaveIn) Volume

Unfortunately these classes are not compatible with Windows 7. But in factm It's actually easier in Windows 7 Vista than it was in XP. For Windows 7, you have to use IAudioEndpointVolume COM interfaces.

A tiny app that demonstrates IAudioEndpointVolume COM interfeace for setting master volume. To save space, all error checking was removed.

#include <stdio.h>
#include <windows.h>
#include <mmdeviceapi.h>
#include <endpointvolume.h>

void Usage()
printf('Usage: n');
printf(' SetVolume [Reports the current volume]n');
printf(' SetVolume -d <new volume in decibels> [Sets the current default render device volume to the new volume]n');
printf(' SetVolume -f <new volume as an amplitude scalar> [Sets the current default render device volume to the new volume]n');

int _tmain(int argc, _TCHAR* argv[])
bool decibels = false;
bool scalar = false;
double newVolume;
if (argc != 3 && argc != 1)
return -1;
if (argc 3)
if (argv[1][0] '-')
if (argv[1][1] 'f')
scalar = true;
else if (argv[1][1] 'd')
decibels = true;
return -1;

newVolume = _tstof(argv[2]);

// -------------------------
IMMDeviceEnumerator *deviceEnumerator = NULL;
hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), NULL, CLSCTX_INPROC_SERVER, __uuidof(IMMDeviceEnumerator), (LPVOID *)&deviceEnumerator);
IMMDevice *defaultDevice = NULL;

hr = deviceEnumerator->GetDefaultAudioEndpoint(eRender, eConsole, &defaultDevice);
deviceEnumerator = NULL;

IAudioEndpointVolume *endpointVolume = NULL;
hr = defaultDevice->Activate(__uuidof(IAudioEndpointVolume), CLSCTX_INPROC_SERVER, NULL, (LPVOID *)&endpointVolume);
defaultDevice = NULL;

// -------------------------
float currentVolume = 0;
printf('Current volume in dB is: %fn', currentVolume);

hr = endpointVolume->GetMasterVolumeLevelScalar(&currentVolume);
printf('Current volume as a scalar is: %fn', currentVolume);
if (decibels)
hr = endpointVolume->SetMasterVolumeLevel((float)newVolume, NULL);
else if (scalar)
hr = endpointVolume->SetMasterVolumeLevelScalar((float)newVolume, NULL);


return 0;

This program has essentially 3 parts. The first parses the command line, the second retrieves an endpoint volume interface on the default endpoint, the third retrieves the current volume and sets the volume. Github for windows.

Online Volume Changer

I'm going to ignore the first part, it's the same junk you'll see in any CS 101 class.

The second part instantiates an MMDeviceEnumerator object which implements the IMMDeviceEnumerator interface. The IMMDeviceEnumerator interface is the gateway object to the new audio subsystem - it can be used to enumerate audio endpoints and retrieve information about the various endpoints. In this case, I'm only interested in the GetDefaultAudioEndpoint method, it returns an IMMDevice object that points to the current endpoint.

Again, there are a bunch of things I can do with an IMMDevice object, but I'm only really interested in the 'Activate' method. The idea is that each MMDevice object supports lots of different interfaces, you 'Activate' the interface to access the functionality associated with that object. Again, in this case, I'm only interested in the IAudioEndpointVolume interface - there are other interfaces, like IDeviceTopology, and IAudioClient that can be activated from the endpoint.

The IAudioEndpointVolume interface is where the good stuff lives, right now I'm only interested in four methods, which retrieve (and set) the current endpoint volume in either decibels or as a scalar value.

The decibels version of the IAudioEndointVolume interface instructs the driver to set the desired master volume (input or output) to the decibel value specified, it's intended to be used for applications that want to have exact control over the output dB value of the audio solution.


The scalar version is a bit more complicated. It's intended for use in applications that have volume sliders, and provides a linear volume taper (represented as a floating point value between 0.0 and 1.0). In other words, the perceived volume when you set the scalar version of the API to .5 is twice as loud as when set to .25 and is half as loud as when set to 1.0.


I often get lots of questions about master volume controls. Can I add one in? Will the amp sound the same? What’s the difference between non-master and master volume amps? What about Post Phase Inverter and Pre Phase Inverter Master Volumes? Here are few answers to common questions about them:

What is a master volume?


A master volume are basically allows the user to turn up the pre-amp section while controlling the signal going to the power amp thus controlling the overall volume of the amp. In a non-master volume amp this control does not exist. The volume on a non-master volume amp is the same control as the gain, drive or pre level control on an amp with a master volume.

Master Volume Changer

Master Volume Mod

What affect does this have on the sound?

In general non-master volume amps are more dynamic and responsive to the player‘s touch since the pre-amp is directly interacting with the power amp. The overdrive is usually power tube breakup or combination of pre-amp and power amp breakup which sounds different. The clean and semi-clean tones are one of the places these amps really shine. A player can control breakup by varying their pick attack and adjusting the knobs on the guitar. However this is not really very practical in many locations a player would use the amp.

For overdrive and distortion in master volume amps the pre-amp is high gain. The pre-amp overdrive tends to be at bit buzzier but also more and more of a square wave. Some players like it and some do not but it is practical way to get distorted tones without high volume. There are many ways to shape a distorted pre-amp to fit a player's needs. The advent of hi-gain amps gave players distortion tones without ear bleeding volumes but changed the tone too.

Can I add a master volume to a non master volume amp ?

Some vintage amp designs can have master volumes added but most behave differently with a master volume installed. In others adding a master volume simply has no real benefit so this must be evaluated on case by case basis.

One amp that master volumes are commonly added to are Marshall Plexi amps. Some Plexi amps are ridiculously loud and the classic plexi crunch sound depends on power tube breakup and speakers being pushed hard. A master volume may help quiet things down but you will still have to play reasonably loud to get the sound people typically associate with those amps. The sound is simply not the same with the master as without. That is not to say it won't sound good with a master---just different. A combination of a master volume and an attenuator is often needed for such amp. A better solution for many players who want real power tube breakup is to use a lower wattage amp or an amp with London Power Scaling like some of the model we build at Carl’s Custom Amps.

Post Phase Inverter vs. Pre-Phase Inverter Master Volumes?

Master Volume Booster

These two types of masters simply place the master volume in a different places in the amp. Many Post-Phase Inverter Master Volumes have the advantage that when turned all the way up they are out the circuit. Thus the amp retains it’s function as a non-master volume amp. However I find that Post-Phase Inverter Master Volumes need the amp to be turned up more to sound good. No matter what all master volumes affect the tone--- they sound different when in use and should be selected for a player‘s needs.

Master Volume Changer Free

The standard master volume works well in amps designed for them. On phenomenon that an occur is that the tone tone of the amp changes with the sweep of the control. Often the low setting doe snot sound as full. This is common on many amps with the Marshall JCM 800 being a prime example. A simple mod will correct this—-I often do this for players and they love the mod.

Audio Volume Changer

If have questions about putting one in your amp or removing one from your amp contact me for service and expert advice!