VOGONS


First post, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

Seems like I have a weird bug on my system. Whenever I exit Windows Media Player it will turn the volume of my MIDI/Synthesizer device (in the sound volume control panel) down to zero.

When I then open an MIDI file with any of my media players (wmplayer.exe, mplayer2.exe or realplay.exe) the player will automatically adjust the Synth volume so I can hear the MIDI file. It looks like each player adjusts the volume to match its local volume slider.

But DOSBox will not adjust/raise the volume, so all I get from DOSBox is silence until I manually raises the volume.

dxdiag.exe has the same problem if I choose the emulated Microsoft MIDI Mapper or the Microsoft GS Wavetable SW Synth devices.

Could you guys try to open your volume control panel and see if your players messes around with the volume settings, and if DOSBox is - or is not - adjusting the MIDI volume on your PC's?

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 1 of 6, by njaydg

User metadata
Rank Member
Rank
Member

Good thing I was caught in the middle of some DOSBox testing, so I've tried the following :

In Media Player Classic, only if a manual change to volume while playing MIDI files, the volume control panel would reflect the change. Testing with video(w/sound), mp3 and wave files only changed the player's volume, but not in the control panel.

Winamp has the same behavior, only volume changes while playing MIDI files reflect in the control panel.

With Windows Media Player, it's also the same as above.

One thing that may help... I usually define the master (including Midi) volume in the control panel, and then normalize all players with whatever volume I want (usually the same amount or max). That avoids having any player messing with my sound volume.

If it helps, in my Audigy 2 driver settings, I have the "synchronize with Microsoft Windows Control Panel" and in dosbox.conf, "mixer=true" in [sblaster] field.

DOSBox does not change the MIDI volume control on it's own while playing a few games, it always uses the system's settings (at least in my case).

Reply 2 of 6, by MiniMax

User metadata
Rank Moderator
Rank
Moderator
njaydg wrote:
In Media Player Classic, only if a manual change to volume while playing MIDI files, the volume control panel would reflect the […]
Show full quote

In Media Player Classic, only if a manual change to volume while playing MIDI files, the volume control panel would reflect the change. Testing with video(w/sound), mp3 and wave files only changed the player's volume, but not in the control panel.

Winamp has the same behavior, only volume changes while playing MIDI files reflect in the control panel.

With Windows Media Player, it's also the same as above.

I see the same here. If I change the volume in the player while the MIDI file is playing, the change is reflected in the Synth/MIDI volume in the control panel. I would have expected the player to only change the master volume. And then I have the additional problem of WMP completely turning the Synth/MIDI down when I exit WMP.

njaydg wrote:

One thing that may help... I usually define the master (including Midi) volume in the control panel, and then normalize all players with whatever volume I want (usually the same amount or max).

What? How? I don't understand.

njaydg wrote:

If it helps, in my Audigy 2 driver settings, I have the "synchronize with Microsoft Windows Control Panel" and in dosbox.conf, "mixer=true" in [sblaster] field.

Doesn't help 🙁 I have some crappy on-board SigmaTel Audio thingy in this laptop.

njaydg wrote:

DOSBox does not change the MIDI volume control on it's own while playing a few games, it always uses the system's settings (at least in my case).

And that is just fine - if my bloody system would leave the MIDI well alone!

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 3 of 6, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

After a lot of searching I have come to the conclusion that it is not a problem specific to my PC. Seems like it is a problem with Windows Media Player 11.

There is even a program out there, VolumeLock, to keep programs from messing with your volume settings.

For now I have simply re-assigned MIDI-files to be played by RealPlayer, since that player leaves the Synth volume untouched.

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 4 of 6, by njaydg

User metadata
Rank Member
Rank
Member

What I mean is, first of all, you should set the volume of all your players to 70% (example) and make sure the players assume the changes but don't play any audio yet. Once that is done, go to the volume control panel and define master and midi volume to the same level you defined for the players (check the image below).
This way, whenever I play any audio file (midi also) the player doesn't change it's volume, as long as you don't change individual volumes, that is...

p.s. - I also have a SigmaTel Audio onboard soundcard in my PC at work 😀

Reply 5 of 6, by dh4rm4

User metadata
Rank Oldbie
Rank
Oldbie

I think this is an older known issue with DirectMusic DLS synths in XP. I seem to remember it being discussued quite some time ago.

Reply 6 of 6, by njaydg

User metadata
Rank Member
Rank
Member

Totally agree with you, dh4rm4!

It's quite strange how this only happens with midi files while using any player. If one changes volume of the player while listening mp3/wav files, it only affects the player's volume, leaving the system's intact.
But if you do that while listening to a midi, it changes both the player and volume control for SW Synth/ MIDI! Strange...

Has to be something to do with the way Windows/Directx handles the midi/synth sound. Never gave it much thought, as they haven't bothered to correct it, and since I figured the workaround, doesn't affect me much.