Built-in soundfont support for MIDI?

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

andrewls
Posts: 1
Joined: Sun Jan 03, 2010 4:25 am

Re: Built-in soundfont support for MIDI?

Post by andrewls »

Friends,

Let's review some basics. MIDI is an expandable and robust protocol that an incredible number of musicians use everyday. MIDI has been around for over 27 years. As a musician and composer myself I cannot ever see a day when I and others like me won't be using MIDI. You guys might like to ask over at kvraudio for more insight on how far your development of MIDI and soundfonts should be in your operating system - and that goes for other music technology which is improving and developing every day.

Now, as for soundfonts, musicians who love soundfonts don't like windows because it doesn't support them natively, e.g. as a general midi sound driver. Soundfonts have been around for ages but I can see a trend where they've only become more popular in the last year. Soundfonts perfectly suit the huge majority of popular music, and will be used more often as we are gradually entrenched with sample based music. You should be looking at demographics.

Wouldn't you want your operating system to be targeted at different groups of professionals? Colour management for photographers and graphic designers? Super hardware and memory efficiency for video editing and multimedia? Or are you only interested in the general user? If so, ignore the music industry and let the musicians and enthusiasts ignore you...

Remember that music technology is changing and you shouldn't be ruling out any format or protocol, but should be allowing your operating system to be more powerful than any other operating system on the market. Thanks

Pharaoh_Atem
Posts: 129
Joined: Sun Feb 26, 2006 5:33 am

Re: Built-in soundfont support for MIDI?

Post by Pharaoh_Atem »

andrewls wrote:Friends,

Let's review some basics. MIDI is an expandable and robust protocol that an incredible number of musicians use everyday. MIDI has been around for over 27 years. As a musician and composer myself I cannot ever see a day when I and others like me won't be using MIDI. You guys might like to ask over at kvraudio for more insight on how far your development of MIDI and soundfonts should be in your operating system - and that goes for other music technology which is improving and developing every day.

Now, as for soundfonts, musicians who love soundfonts don't like windows because it doesn't support them natively, e.g. as a general midi sound driver. Soundfonts have been around for ages but I can see a trend where they've only become more popular in the last year. Soundfonts perfectly suit the huge majority of popular music, and will be used more often as we are gradually entrenched with sample based music. You should be looking at demographics.

Wouldn't you want your operating system to be targeted at different groups of professionals? Colour management for photographers and graphic designers? Super hardware and memory efficiency for video editing and multimedia? Or are you only interested in the general user? If so, ignore the music industry and let the musicians and enthusiasts ignore you...

Remember that music technology is changing and you shouldn't be ruling out any format or protocol, but should be allowing your operating system to be more powerful than any other operating system on the market. Thanks
Unfortunately, that isn't the goal of ReactOS. ReactOS itself doesn't have many if any features that improve the experience compared to Windows. The only visible features I'm aware of are the different way the ROS Explorer handles filesystem browsing, and the virtual desktops. Other than that, ReactOS is either the same, or inferior to Windows.

ReactOS wants to reimplement everything exactly as it was done in Windows NT, which likely means we'll have a piece of crap for the MIDI engine in ReactOS too...

User avatar
EmuandCo
Developer
Posts: 4439
Joined: Sun Nov 28, 2004 7:52 pm
Location: Germany, Bavaria, Steinfeld
Contact:

Re: Built-in soundfont support for MIDI?

Post by EmuandCo »

Er what? Noone ever said, we wont improve things in later Versions where possible. But till then we have some stuff to do.
ReactOS is still in alpha stage, meaning it is not feature-complete and is recommended only for evaluation and testing purposes.

Tobi
Posts: 44
Joined: Wed Jun 18, 2008 12:29 am

Re: Built-in soundfont support for MIDI?

Post by Tobi »

MIDI files only have the notes of a song stored. The sound is created by the instrument the MIDI data is sent to. ("play virtual istrument 12, note C#1 for 1,2 seconds")In earlier days, the virtual 128 standard General Midi instruments of a music keyboard (like "Piano") were simulated by fm synthesis or something. Modern music keyboards and e-pianos use wavetables. Every note of every virtual instrument is represented by a short recording oft that note+instrument, which will be played when it's demanded by the data of the midi song file. So every MIDI song sounds different when played on different instruments.

SF/SF2 is a file format used for wavetables. By using different wavetables you can change the sound of "the OS/ the computer" at MIDI file playback. You can, for example, improve the MIDI sounds of your PC by changing the wavetable. At Windows, all MIDI playback data is sent to the so called "Microsoft Synthesizer" which is a part of DirectX. It's basically a MIDI output device with a software wavetable player behind. You can test it within the dxdiag.exe program in the chapter "Music". Here you can see that the standard wavetable set is located in the file \System32\drivers\GM.DLS

DLS is an older wavetable format which is more standardized. SF2 is a more modern format first used by Creative Labs. You can do conversions between these formats using tools like Awave. Up to Windows 2000 I think, it has been easy to change the standard system wavetable by overwriting the GM.DLS with a better one. Since XP this doesn't work anymore due to the system file protection. It would be great if ReactOS would be more open for alternatives at this point... SF2 support would be a plus, of course.

Nevertheless, the MSS becomes more and more outdated. Modern games use efficient encoded audio files (OGG, Mp3) for ingame sound and music. Musicians use ASIO triggered virtual instruments (VSTis) within a VST host sequencer (Reaper, Cubase)) to generate sound with a PC. With the sfz VSTi, you can load and play SF2 wavetables within any modern sequencer application.
So the MSS is only used when you play .MID files using the media player or winamp. Or it's used by old games. I think that the MSS had a (rarely used) function for games for uploading and using custom DLS wavetable files. In that cases MSS is also used for sfx playback... -->A fully compatible MSS replacement should support programs which use their own wavetable.

I think for musicians it would be more important that ReactOS has a good ASIO support. It's needed to play VSTis within a VST host without too much latency. (Direct Sound and Wavemapper are far too slow) For soundcards which don't support ASIO the tool ASIO4ALL was written. Perhaps some of its functionality can be added directly into the ReactOS audio system some day. 8-)

Another suggestion for MIDI and DirectX would be unifiying MIDI- and DirectInput devices. So that you can select a Joystick as a MIDI device in an application and use it as a MIDI controller. Or that you can select a MIDI keyboard within a game and use it as a 88 button joystick... :mrgreen:

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], DotBot [Crawler] and 4 guests