VOGONS


Reply 460 of 1688, by James-F

User metadata
Rank Oldbie
Rank
Oldbie

Works fine, although I don't see the use of the 'old 2.1' switch.
I would assume (guess) there has not been professional use of this plugin in a commercial project to retain the 2.1 volume compatibility.
It's redundant, if you ask me.


my important / useful posts are here

Reply 461 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
I do not think commercial or not is relevant. But I do know at least 2 people personally who use it in semi-professional studios with DAWs (based on facebook feedbacks there are others as well) .
It would be redundant if the Output Gain control would do a simple division/multiplication on the samples given back by mt32emu_render_float(). But it does not.
As I have demonstrated in the video you cannot get the same pure doubled volume by using Output Gain control.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 462 of 1688, by James-F

User metadata
Rank Oldbie
Rank
Oldbie

Alright, if you see the benefit in that function I don't mind.
The reason I pointed that out is we already have "2x Volume" in the DAC setting, and now we have "Double Volume" as a switch.
I think there should be a separate MT-32 VSTi guide to explain all the options, for those who did not follow the thread or the development of the VST.


my important / useful posts are here

Reply 463 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Yes, you're absolutely right. It can be confusing. I'm thinking about removing the 'Pure' DAC mode from the interface. It's also missing from Munt's qt client. It was a life safer when floating point samples were not normalized, but now it seemingly losts its reason for existence. It's way too quiet in default mode and has no special characteristics. The High quality (Nice) DAC mode with normalized samples simulates the old 'Pure' mode perfectly. And then we have exactly the same behavior and options as Munt's QT client (except the one compatibility option that reminds us the sins of the past 😀

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 464 of 1688, by James-F

User metadata
Rank Oldbie
Rank
Oldbie

I don't mind if you remove the 'pure' option, I wouldn't think someone will object.
'Nice' is already much better than the hardware, besides, in float nothing is clipped anyway.


my important / useful posts are here

Reply 465 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Thanks for your feedback James. New test version uploaded.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 466 of 1688, by Roland User

User metadata
Rank Member
Rank
Member

Falcosoft
Devil!!!!
Why this so biger delay ?
This happens only if VST plugin runned and not used in longer time.

Attachments

  • Filename
    video.zip
    File size
    4.34 MiB
    Downloads
    74 downloads
    File license
    Fair use/fair dealing exception

Reply 467 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

I don't know, but you can try the new test version because of this:

2. https://github.com/munt/munt/commit/909717e7d … 37e9b9a306ff6a5 This one provides direct access to Munt's internal timestamp […]
Show full quote

2. https://github.com/munt/munt/commit/909717e7d … 37e9b9a306ff6a5
This one provides direct access to Munt's internal timestamp so no 'guessing' is necessary anymore. Thus the above described rounding/timing problems are greatly mitigated.

I have made a new test version for you to try.
...
Also the new mt32emu_get_internal_rendered_sample_count() is used now to get proper timestamp instead of calculations by code.
Munt Reloaded - Development

http://falcosoft.hu/munt_vsti_test.zip

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 468 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Serg wrote:

Oh, just wanted to point out that one should actually expect distortions when setting the gain above 1.0 (at least with integers). This facility only exists because of some games programming the master volume too low, so you can easily regain the balance this way.

So I have reverted back to 0 -200% Gain/Reverb Gain range. I do not think it makes sense to set Gain anything above 200% and I think the finer grain is more useful to set Gain/Reverb balance.
If someone wants higher absolute volume the v2.1 compatibility option gives better result.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 470 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

It has nothing to do with who likes who but unfortunately I do not know.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 471 of 1688, by Roland User

User metadata
Rank Member
Rank
Member

Good )
I am pleased to what we understand each other )

By the way, now MUNT work fully correctly ) , this I about volume in differenced mode )

If possible do fix BASSMIDI VST for FSMP and OPL3 GM VST , I think what need create audiobuffer as 2533 samples , however OPL3 GM VST work fully not correctly in this mode. BASS MIDI also have small bugs in this mode.

Reply 472 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
New test version of FSMP is available:
http://falcosoft.hu/midiplayer_48_test.zip

1. Added ability for complete GS soundfonts to use Bank LSB. (James-F suggested this earlier).
This way you can test more full GS soundfonts at once together with variation banks so you can emulate a similar behavior like SC-55/88/88pro maps in Roland devices and SC-VA.
Real time loaded soundfonts still use Bank MSB exclusively for SB compatibility reasons (they always contain variations banks anyway.)
There can be subtle bugs in proper preset naming since the logic is quite complex now (soundfonts still cannot use Bank LSB adressing natively).
When 'Use Bank LSB' is checked the Ctrl+x bank switching hotkeys also use Bank LSB. It seems this can be handy in other situations as well:
Need help on SYSEX software..... or whatever for Roland SC-D70
2. Added native XMI files support together with multiple tracks/songs.
3. Added proper support for Type 2 midi files. They work like XMI files regarding multiple tracks. They are rare and other known players (VBKP, WMP, Winamp) do not handle them properly.
(They play the tracks simultaneously just like in case of Type 1 files and it can result in a big noise...)
Here is a type 2 midi file for testing:

Filename
dune20.zip
File size
3.37 KiB
Downloads
96 downloads
File license
Fair use/fair dealing exception

Off topic:
https://youtu.be/Qqml53vcPWI
I have been working on this Master of Puppets midi a while and I think now it's ready.
I have added the last missing parts/tracks and fixed the last sequencing/note bugs.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 473 of 1688, by retrue

User metadata
Rank Newbie
Rank
Newbie

For fun, I have been trying the file dune20.mid with different midi players and general purpose audio players.

MIDI PLAYERS:
- FalcoSoft Midi Player 4.7 x64 --> Noisy.
- NoteWorthy Player v1.75b --> Noisy.
- TMIDI (Tom's MIDI Player) -- Noisy.
- VanBasco Karaoke Player v2.53 --> Noisy.
- MidiTrail v1.2.2 --> Error message. Doesn't load the file.
- MuseScore v2.0.3 --> Error message. Doesn't load the file.
- Piano From Above v1.1.0 --> Error message. Doesn't load the file.
- MAM 2006 Player --> Load the file but no sound at all.
- FalcoSoft Midi Player 4.8 test --> Good!
- TiMidity++ v2.14.0 --> Good!

GENERAL PURPOSE AUDIO PLAYERS:
- VLC v3.0.0 last nightly (uses FluidSynth Midi) --> No sound at all.
- MPC-BE v.1.5.1.2548 (uses directsound) --> Noisy.
- MPC-HC v.1.7.11.35 (uses directsound) --> Noisy.
- PotPlayer v1.7.2233 (uses directsound) --> Noisy.
- Spider Player v2.5.3 (uses very old version of bassmidi) --> Not noisy, not good.
- AIMP v4.13 with MIDI plugin (Bassmidi) --> Good!
- Foobar2000 v.1.3.15 with all MIDI plugins --> Good!
- Light Alloy v4.10.2 (uses bassmidi) --> Good!
- MusicBee v3.0 (uses bassmidi) --> Good!
- Resonic v0.8.7b (uses bassmidi) --> Good!
- XMPlay v3.8.2 (uses xmp-midi) --> Good!

Summarizing, from 10 different specialized midi players, only this beta version of FSMP and Timidity++ are able to play type 2 midi files. Among general purpose audio players, all the ones which use modern versions of bassmidi are able to play them correctly. However, those audio players that play midi through directsound will play noisily and the ones that use FluidSynth won't play at all.

Reply 474 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
Thanks for your comprehensive test.

Among general purpose audio players, all the ones which use modern versions of bassmidi are able to play them correctly.

The reason why FSMP had not handled type 2 files correctly before 4.8 (but uses 'modern' version of bassmidi) is FSMP does not use bassmidi's parser/infrastructure to handle midi files. FSMP uses bassmidi as a simple virtual output port only and uses its own parser. This way it's much easier to handle standard midi out ports, bassmidi, and VST instruments with one codepath.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 475 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

It seems soundfont management logic + different midi systems is not an easy subject and implementing the 'Use Bank LSB' option have not made it easier.
in the 'Soundfonts and Retrogaming MIDI' topic
Soundfonts and Retrogaming MIDI
33oldnew had some problems understanding it fully. Since I do not want to spam the other topic I answer his questions here, but I think it can be useful also for others.

@33oldnew:

The song you tested ‘NighCaro’ is intended to play on GM2 devices. GM2 is a special beast since it does not use Bank 0 for Capital Tones but Bank 121 (and 120 for drums).
And it uses Bank LSB for variation banks (thus similar to XG). https://en.wikipedia.org/wiki/General_MIDI_Level_2
Soundfonts are tightly linked to GS and they can only use 128 banks that are usually addressable by Bank MSB. (Soundfont capable hardwares such as SB AWE, Live, Audigy series always use Bank MSB for variations.)
Regarding Bank/Preset selections GS, XG, GM2 are incompatible with each other. But they are all compatible with GM that does not use Banks at all.

Bassmidi as a software soundfont engine (used by Midi Player and many other player softwares to handle soundfont based playback) is more versatile than hardware implementations but cannot overcome the SF2 format’s limits. So it is realistic that GM/GS midis can be played back with good results if you use/configure soundfonts properly. But XG/GM2 midi files that use variation banks usually cannot be used with good result.
While theoretically you can create e.g. a full SC-55 GS implementation with a soundfont (I mean the full programs/banks combinations) you cannot implement even the XG Lite standard with a soundfont.
That’s why testing soundfonts with XG/GM2 midi files is not a good choice.

Usually simple playback with only a default soundfont (placed at bank 0) is not a problem.
By default bassmidi similarly to most GS devices and SB hardware simply does not use/ignores the Bank LSB value. And if it meets a Bank MSB + program combination that does not exist it uses its Capital Tone Fallback (CTF) mechanism and simply use the given instrument at Program + Bank 0.
(If you want to see the result of CTF and so want to see the used program +bank combination instead of the real bank values the file sends, you can enable ‘Main menu -> Intruments -> Use Patch Info for Capital Tone Fallback’ in Midiplayer. https://www.youtube.com/watch?v=PrKfDTjvKDs)

But if you use multiple soundfonts and any of the soundfonts has a variation bank defined at 121 – bank offset and you try to use a GM2 midi file it will sound bad.

But let’s see how soundfont management works in Midiplayer (up to 4.7). It works the exact same way as SB series soundfont manager (sfman32). Let me repeat it: Bank LSB does not play. Bank is equivalent to Bank MSB value. (according to this in Midiplayer up to 4.7 and in Midiplayer 4.8 if ‘Use bank LSB’ is not selected Ctrl + x always sets Bank MSB value never bank LSB. @33oldnew: your guess was wrong. Test it again)
Bank 0 is supposed to be the main GM compatible bank, and other additional soundfonts to be the variations. In case of SB hardware it was never meant to place full GM/GS implementations on different banks. It is possible, but later banks overwrite overlapping presets. An example:

1. You load a default full GS soundfont at bank 0. Therefore at bank 0 program 127 you have the Gun Shot instrument, and at Bank 1 program 127 you have the Machine Gun instrument.
2. If you load another full GM/GS soundfont at Bank 1 you will have the 1st soundfont’s macine Gun instrument at Bank 0 program 127, but at Bank 1 program 127 you will have the 2nd soundfont’s Gun Shot instrument. 1st soundfont’s Machine Gun has been overwritten. Notice: bank number behaves as an offset. The 2nd soundfont’s bank 0 will be available at bank 1, bank 1 at bank 2 and so on.

To overcome this preset overlapping problem I have added the ‘Use Bank LSB’ option to MidiPlayer 4.8. If it is selected Ctrl + x always sets the Bank LSB value. This method is unique and is not available in any hardware soundfont implementation. Instead of imitating the SB hardware’s soundfont management this method is more similar to later GS implementation’s Map changing method (SC-8820/8850). Each additional full GM/GS soundfont can be considered as a complete GS map (like SC-55, SC-88 Maps in SC-8820).
And these maps can be selected by Bank LSB. And this way the variation banks in each Soundfonts can be selected by Bank MSB since they do not overlap each other.
But there was a little problem with Bassmidi’s default CTF behavior that required some workarounds. Namely by default Bassmidi always falls back to Bank MSB/LSB 0 if it does not find an exact match at the given Bank LSB + Bank MSB + Program combination. Thus it leaves the Domain of the selected Map/Soundfont by Bank LSB. This behavior is not good when you want to test a soundfont and the midi file tries to use a bank MSB + Program combination that does not exist in the soundfont selected by the Bank LSB value. So if such a situation occurs MidiPlayer resets the Bank MSB value to 0 and thus falls back to the Capital Tone Bank of the selected soundfont. So in case of ‘Use Bank LSB’ this effect result in a different program name and bank MSB value display than in 'Bank MSB mode' in case of non-existent Bank MSB + program combinations.

I hope this makes it more clear but Midi itself, different Midi systems and soundfont management are not easy subjects. And you have to gather much information from different places to get a clear picture.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 476 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
version 4.8 of FSMP and version 2.2 of MuntVSTi are released. The test zips are no longer available.
http://falcosoft.hu/softwares.html#midiplayer

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 477 of 1688, by t9999clint

User metadata
Rank Member
Rank
Member

Quick question. I probably just missed it in the documentation. Is there a command line option to automatically load a certain preset? Like midiplayer.exe /preset

I can't find any notes on what command line operators midiplayer uses.
I want to make desktop shortcuts to different presets just like PhilsComputerLab did in his tablet video.

Sorry if you've answered this already.

My Youtube Channel: https://www.kor.ninja/
My Soundfont Project: K.O.R. Soundfont Project V.5.0
My Soundcloud Page: https://soundcloud.com/clint-theriault

Reply 478 of 1688, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
No, you have not missed anything. Configuartion presets was implemented for a completely different reason:
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
So no command line option is available currently to change presets, but it can be added later.
But you can still do what Phil did (that video was made when configuration presets had not even existed).
Namely make as many copies of MidiPlayer (together with its folder) as many configurations you want and make shortcuts pointing to Midiplayer.exe in the separated folders.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 479 of 1688, by Kaminari

User metadata
Rank Oldbie
Rank
Oldbie

Bug report [Midi Player 4.8]

On the main window, when you open the Program menu (000 Piano etc) then you click anywhere on the playlist window to force close the popup menu, MidiPlayer.exe throws an Access Violation error (559D84). The player doesn't crash though and you can click on OK to close the error window.

If you click on the "LCD" part of the player window while the Program popup is open, the error doesn't happen.

Ryzen 2600X 4.2 GHz | Radeon RX 6650 XT 8 GB | DDR4 16 GB | Win10-64 Pro