V2 lost volume control in WinAmp

Please let our ADS show!

This sites offers only FREE software and it's supported by a few advertisement boxes (no intrusive popups).
Please:

  • disable your AdBlocker by adding CoolSoft website to whitelist
  • give the proper cookie consent
  • enable JavaScript for this website

This seconds wait is to let you update your browser configuration...

Ok, I've done the required changes... now show me your content!
!!! Please enable JavaScript !!!
Posts: 9
Joined: April 19, 2017 - 18:14
V2 lost volume control in WinAmp

Win 7, 64 bit. WinAmp 5.666+

After upgrading to V2 of VirtualMidiSynth, I have lost volume control for midi files in WinAmp.

With the older version, I could specifically select the midi out device in WinAmp (though for some reason it showed as chinese characters), choose a volume control option, and adjust the volume within WinAmp.

Since the update, there appear to be two selectable instances of VirtualMidiSynth, both listed as midiOut/Microsoft Midi Mapper.

No matter what I select as the volume control method (none, automatic, driver-specific, IDT HighVolume, etc) i can only control the volume using the volume controls outside of WinAmp (laptop buttons, midi mixer, or windows volume control).

Posts: 9
Joined: April 19, 2017 - 18:14
Re: V2 lost volume control in WinAmp

I did just revert back to v1.17.1 to double check, and my volume controls work in WinAmp work fine with the older version.

Posts: 1972
Joined: March 25, 2012 - 01:19
Re: V2 lost volume control in WinAmp

V1 was an in-process DLL, so its volume was the same as the host process (WinAmp.exe).
V2 is an out-of-process DLL, or better, it has a small in-process DLL but the audio synth is done by a separate process (VirtualMIDISynth.exe).

That said, the best way to control MIDI volume is to "inject" volume controller messages to MIDI stream but, AFAIK, the only player doing this is VanBasco.
Others only control the analog volume of their own process.

I dont know how WinAmp volume control works, but if it could control the volume of a specific process, configure it to change VirtualMIDISynth.exe volume.
Otherwise the best workaround is to let it change Windows Master volume.

Posts: 9
Joined: April 19, 2017 - 18:14
Re: V2 lost volume control in WinAmp

WinAmp is an old program, so maybe I'll just stick with v1.  I need my volume control :)

The WinAmp midi input plugin can select multiple sources for volume control, but I think because the new version of VMS does not function the same way, the volume controls it has access to don't match up.

Screenshot attached so you can see what it does.  The "IDT" options in the screenshot are my laptop sound device.

Attachments (Only registered users)
options.jpg
Posts: 1
Joined: April 28, 2017 - 13:43
Re: V2 lost volume control in WinAmp

Hello,

thanks for the explanation clearing why V2 behaves differently than V1 regarding the volume control for an application using VirtualMidiSynth (in-process vs out of process dll).

I a developping a small midi karaoke player and I was lost :-)

I nearly choosed the wrong way to fix this (manage the master volume of Windows, which is a dirty workaround)

I will try to manage the MIDI main volume instead.

Thank

Fabrice

Posts: 129
Joined: September 25, 2013 - 16:38
Re: V2 lost volume control in WinAmp

Hi,

Just a few remarks regarding the volume setting problems/options.

'That said, the best way to control MIDI volume is to "inject" volume controller messages to MIDI stream but, AFAIK, the only player doing this is VanBasco. '

This method also has its drawbacks. Namely if you use some effects the volume of the effected istruments is not always proportional to the channel volume the same way so you will get an unbalanced sound.

This is not a problem with VMS but can affect e.g. SYXG-50, SC-VA and other software synths that can use effects.

In some cases controlling the master volume of the synth with GM Master Volume SysEx messages is a better option, but not always ( and it's not supported by all synths).

So sometimes controlling the analog mix is the best option.

I have made a video about this issue (the first part is relevant here, the other part is about the next theme).

'Others only control the analog volume of their own process. '

This is not a choice of the application. Since Windows Vista (so also in Win 7/8/10) the classic win32 multimedia mixer API's behavior changed radically. Any applications that do not use Vista+ specific APIs but the classic mixer API has no other choices but use a per application waveout volume. The API does not expose any other output controls anymore! MS in it's great wisdom associate the app's main volume always with waveout, so the windows mixer API is practically useless if you want to control anything but wave volume.

The only solution to this problem is using 'Windows XP' compatibility mode, this way the application can access the real mixer topology of the sound hardware.

The other part of the video demonstartes this.

The video itself:

https://youtu.be/OfyGSIGDoJY

Best Regards:

Zoltan Bacsko

Falcosoft

Ps: I have also met a bug related the bank handling in VMS 2.0.1, but I will make a bug report about it.