Volume too loud in exported XM

Started by Mills, November 11, 2020, 10:47:23

Previous topic - Next topic

Mills

Hi.

I ripped the pc speaker notes from a game called supaplex and pasted them to an xm module (to be included in an opensource supaplex version).

It sounds ok in openmpt, the problem is, the exported xm has an incredibly loud volume in any other player I tried, it looks like the players do not read the volume information and set it to the maximum.

I tried loading the module in milkytracker and saved it, resulting in the same insane volume, also tried creating very low volume samples and it did not work.

I upload the module in case someone can find the cause, thanks!.

Saga Musix

The amplification factor is not standardized between module players and trackers, and the "sample volume" slider in OpenMPT's General Tab is an OpenMPT add-on that is not interpreted by other players / trackers. Some players like XMPlay or players based on the BASS audio library auto-normalize module playback. There is little you can do here - there is simply no standardized way to indicate how loud an XM file should be played.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Mills

Quote from: Saga Musix on November 11, 2020, 10:50:31
There is little you can do here - there is simply no standardized way to indicate how loud an XM file should be played.

I understand but it happened even in mikmod players included in SDL. So they are normalizing the sound and I can do nothing I guess...

Saga Musix

Some libraries (don't know about mikmod specifically) also try to choose an amplification factor based on the number of channels. Since your module only has two channels, these calculations might not work out because typically the assumption is that not all channels are playing at the same time. But if you only have two channels, chances are of course high that a majority of the channels (1 channel in this case :) ) are playing so this assumption does not work. You can try to verify this assumption by adding a few more channels and putting some bogus notes there. Some players might lower the volume then.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Mills

Quote from: Saga Musix on November 11, 2020, 10:59:39
Some libraries (don't know about mikmod specifically) also try to choose an amplification factor based on the number of channels. Since your module only has two channels, these calculations might not work out because typically the assumption is that not all channels are playing at the same time. But if you only have two channels, chances are of course high that a majority of the channels (1 channel in this case :) ) are playing so this assumption does not work. You can try to verify this assumption by adding a few more channels and putting some bogus notes there. Some players might lower the volume then.

It works, I placed some notes in other channels and the volume went down :).