VOGONS


Munt Reloaded - Development

Topic actions

Reply 820 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

Falcosoft, here is an Audacity recording of that MIDI file playing on my real MT-32 (Old) playing via Windows Media Player in Windows 10 over my M-Audio MIDISport Uno USB-MIDI interface.

Hope it helps.

Edit: Looks like my CM-64 may arrive today too, so I may also be able to record from that if it matters - let me know.

Attachments

  • Filename
    Mt32_test_recording.zip
    File size
    1.16 MiB
    Downloads
    18 downloads
    File license
    Fair use/fair dealing exception

Reply 821 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Thanks, that's strange and unexpected. It seems your MT-32 does not react to the Pitch Bend Sensitivity RPN at all. But it is listed in MT-32 ducumentation under 'Midi Implementation' as 'RPC MSB Bender Range'. I do not know what's going on. Maybe 'Bender Range' setting has to be enabled first some way on real MT-32?
PS: Yes, CM-64 result would be also useful. So far there is definitely a difference between Munt and Real MT-32 but not in the way I expected.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 822 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

Could it be because of Windows Media Player? Is there another simple MIDI player I can use in Windows? MIDI-OX's MIDIBar is being cranky and giving an MCI error when I try to load a .mid file.

Reply 823 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Yes, Try my midi player FSMP:
http://falcosoft.hu/softwares.html#midiplayer
It also has integrated Munt as a VSTi so you can compare the MT-32/CM-64/Munt results more easily.
Here is a quick guide how use VSTi in the player:
http://falcosoft.hu/midiplayer_howto.html#a17
Munt VSTi can be found in Midiplayer4/VST/MuntVsti folder.

Edit:
How to to set your real MT-32 as output :
http://falcosoft.hu/midiplayer_howto.html#a1

If you right click on the First Aid like Reset button you can get a context menu where you can send custom SysEx messages.
There is a SysEx called MT32_GM_Mode.syx.
Select it and send it to your real MT-32 and play the test file again.
This Sysex theoretically also sets the Pitch Bend Range to GM compatible 2 cents. Let's see if it works for you.
But before playing you have to disable the embedded MT-32 reset Sysex in the test file. Right click Midi Player caption -> SysEx Options -> Enable SysEx in Files. Disable this option.

Last edited by Falcosoft on 2017-05-13, 18:35. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 824 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

Damn, I saw your stuff on a PhilsComputerLab video a few weeks ago and then forgot about it 😊 Midi Player is amazing!

Here's a recording made by Midi Player's record feature while playing to my MT-32 and recording from Line In.

Edit: FYI, I did power cycle the MT-32 before each recording, to make sure it wasn't affected by anything that had been played previously.

Attachments

  • Filename
    Mt32_test_recording2.zip
    File size
    893.02 KiB
    Downloads
    16 downloads
    File license
    Fair use/fair dealing exception

Reply 825 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

So the result is the same... I do not know what can cause this. An MT-32 expert is desperately needed 😀

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 826 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

I missed your SysEx note. I will try that and then edit this post with the result.

Edit: Here is a recording with SysEx from file disabled and after having sent MT32_GM_Mode.syx.

Attachments

  • Filename
    Mt32_test3.zip
    File size
    816.85 KiB
    Downloads
    18 downloads
    File license
    Fair use/fair dealing exception

Reply 827 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Thanks. The good news is your MT-32 works perfectly 😀 (can handle Pitch bend Range). So I must have messed up something with the test file that the real MT-32 does not like but Munt does. But I still do not know what it is. I will try to correct the error, but it will be only tomorrow. Thanks again for your help!

Last edited by Falcosoft on 2017-05-14, 08:34. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 830 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

CM-64 arrived and is working. Here is a recording of the test MIDI with MT32_GM_Mode.syx loaded.

Attachments

  • Filename
    Mt32_test_CM-64.zip
    File size
    977.56 KiB
    Downloads
    16 downloads
    File license
    Fair use/fair dealing exception

Reply 831 of 964, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
Falcosoft wrote:

It seems your MT-32 does not react to the Pitch Bend Sensitivity RPN at all. But it is listed in MT-32 ducumentation under 'Midi Implementation' as 'RPC MSB Bender Range'. I do not know what's going on. Maybe 'Bender Range' setting has to be enabled first some way on real MT-32?

It sounds like you've got this figured-out, but the documentation you were referencing applies to the "newtype" MT-32 (v2.0x), which (along with the CM/LAPC-variants) supports setting the Pitch Bend Range either with RPN #0, or with SysEx. "Oldtype" MT-32s (v1.0x), on the other hand, only support the SysEx method.

Reply 832 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

@collector:
FSMP and MuntVsti are free but not open source.

@ Cloudschatze:
Thank you. Yes, I have also found an earlier Vogons topic that confirms this:
Pitch Bend Range and Reverb SysEx Code

@HunterZ:
Now that we know your old MT-32 does not support RPN style Pitch Bend Range settings (but do support SysEx to change this) the situation is clear.
Back to the starting point: To finally decide if this is a Munt bug You should repeat the test on your CM-64 with the default configuration without the GM mode SysEx.
So.
1. Re-enable Send SysEx in Files in Midi Player.
2. Do Not send MT32_GM_Mode.syx
2. Play the test file.

Thanks.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 833 of 964, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

OK here is a CM-64 recording with a fresh power cycle and file SysEx enabled.

Attachments

  • Filename
    Mt32_test_CM-64_2.zip
    File size
    1.02 MiB
    Downloads
    18 downloads
    File license
    Fair use/fair dealing exception

Reply 834 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

@HunterZ:
Thanks!
Exactly like Munt in its current form. So there is no bug, it's just different from GM behavior.
Ps: I have answered to you in FSMP topic. I hope you have found it.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 836 of 964, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Falcosoft wrote:

@collector:
FSMP and MuntVsti are free but not open source.

I'm guessing MuntVsti is a Vsti wrapper over mt32emu. The shared library is LGPL and any additional work that it links to is closed source (or otherwise as the author desires).

All hail the Great Capacitor Brand Finder

Reply 837 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

@gdjacobs:
Yes, MuntVsti consists of 2 dll files:
1. mt32emu4v.dll is an unmodified mt32emu compiled as a shared library. Actually anyone can compile the current version of Munt, rename it to mt32emu4v.dll and it will work with the plugin. (I have decided to rename the file to avoid collision with the windows driver mt32emu.dll).
2. MuntVsti.dll is the VSTi plugin itself that calls the exported functions (C API) of mt32emu. I would not say that it's simply a wrapper e.g. since it hosts 2 instances of Munt to achieve full 16 channel modes.

When I modify the LGPL library's source (e.g. in case of OPL3Vsti) the source files can be found in FSMP's package itself.

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic

Reply 838 of 964, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Falcosoft wrote:

@gdjacobs:
2. MuntVsti.dll is the VSTi plugin itself that calls the exported functions (C API) of mt32emu. I would not say that it's simply a wrapper e.g. since it hosts 2 instances of Munt to achieve full 16 channel modes.

Oh, I didn't know you'd extended it this way.

Falcosoft wrote:

When I modify the LGPL library's source (e.g. in case of OPL3Vsti) the source files can be found in FSMP's package itself.

Thanks for all your contributions to the community!

All hail the Great Capacitor Brand Finder

Reply 839 of 964, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
This question is mainly for Serg:
Please, help to find out what is the situation with the 'proper volume level' compared to hw MT-32.

Facts:
1. I use unmodified version of Munt library (mt32emu) in MuntVsti and do not modify the rendered samples any way in the plugin (they are sent 'as is' to the host)
2. There are 2 functions in Munt's C API to get the rendered samples (note: the 2nd one is not the same as the newly introduced floating point rendering path) :
a. mt32emu_render_bit16s()
b. mt32emu_render_float()
For a VSTi plugin mt32emu_render_float is the natural choice since VST plugins always use floating point data(32 or 64 bit).

The 2 functions give different results regarding volume level. The floating point one results in twice the volume.
Which is the right one?
(The driver uses the 16 bit integer one)

Website, Facebook, Youtube
Falcosoft Midi Player + Munt VSTi + BassMidi VSTi topic