Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Is there any plugin anywhere that can play MIDI through windows instea (Read 21021 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Is there any plugin anywhere that can play MIDI through windows instea

Ok, first of all, while Creative Labs may not make the greatest soundcards in the world and their MIDI synthesis will never be as good as XG was, it's still better than quite a number of others out there, especially now that no one cares about MIDI much anymore (certainly no soundcard manufacturers seem to.)  I may dig out my old copy of the Yamaha S-YXG software, but, for now I have a pretty decent set of soundfonts that I like and in either case it is better than foo_midi is likely to ever get (at least to me, and with MIDI it's the user's opinion which counts.)  Rather than having to spend who knows how long digging up info on VST instruments and trying to get the foo_midi plugin to sound one tenth as good as my current setup does, I'd really rather just use my current setup.  And without VSTs, well, I'd rather listen to OPL3 than that.

Yes I did do a search first before asking.  The only things I saw were people talking about how VST was required to get foo_midi even worthwhile (which I already knew and can't help but wonder why it couldn't have at least come with a basic VST setup with installation.)  Yes I'm aware that foobar playing MIDI won't really much be foobar playing MIDI so much as DirectShow or whatever playing it (eg no DSP settings or anything) but, that's perfectly alright.  I just want to get all my audio playing in one program.  It was my hope to completely switch from Winamp and what it's becoming to Foobar, but, how do you switch from something that works with just about naything to something that requires you to use another player for many things?  If I can just get it so I can use one audio player for all my audio -- whether or not the player is internally handling all of the audio itself -- I'll be happy (and no, I'm not one of those people who wants everything super-integrated into everything else -- I'm STILL upset that Winamp added a video player and that was probably added well over a year ago.)  I just think I should be able to use a single audio player for playing all my audio.  It's not as if MIDI is even hard to do or anything.  After all, it was around before anyone had even THOUGHT of GUIs...
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #1
[deleted]

Is there any plugin anywhere that can play MIDI through windows instea

Reply #2
Totally agree with Nazo 

No offence to kode's great work, but my experience with foo_midi is not very pleasurable.
I've tried many free VSTs with foo_midi Unfortunately, none of them works OK.
Finally I got Hyper Canvas & Super Quartet works fine with foo_midi, but they eat lots of memory. And there is a progress bar pops up every time starting to play a midi.
No need to mention Emu de MIDI is a disaster...

I don't understand why there's no simple plugin to play midi. Is foobar2000's core so different from other players (winamp, media player classic, etc.) that plugins cannot support midi through the same method? Or is there an license issue?

Is there any plugin anywhere that can play MIDI through windows instea

Reply #3
EDIT:  To the person above me, no.  There is no licensing to do with MIDI unless you want to do something very particular like stamp the XG logo on there (really there's no reason to do that either.  XG is more in the card/synthesis itself and the only thing the player can do is send a different more thorough reset signal, and I don't think you need a license even to do that.)  I don't know about GS, I think it was kind of open to all?  I kind of skipped over GS since Roland really had issues (not exactly what I call customer friendly for one -- heck, they are STILL threatening and generally harassing people trying to create emulation for synthesisers they stopped making in the mid 90s...)  But, standard ordinary general MIDI like what has existed since I think the late 80s?  Ha, like anyone even would have thought to license that.  No, MIDI is just a plain ordinary standard.  You don't have to ask anyone for permission to have a basic MIDI player (unless you're using their code to do it.)

I don't understand the logic here.  foo_midi will sound as fantastic or as crappy as the instrumentation you throw at it.

The tricky part is throwing said instrumentation at it.  Even if you get some kind of conversion tool to convert the soundfonts to the VST format, you must then fix them.  You see, soundfonts are quite often designed with the assumption you will manually load a specific part for a specific instrument (often discarding the rest.)  So often enough, if you just load a soundfont directly into the bank, you have your pianos replaced regardless of if the soundfont may be, say an electric guitar or something.  Besides, I'm not entirely sure there IS any way to get multiple soundfonts into a single VST for this thing.  So I guess you're limited to whatever VSTs are already out there.

Quote
Switching to a player that supports soundfonts is not any different here, except for the fact you mention you already own soundfonts you like.

You are aware that soundfonts aren't played through a player, yes?  They are handled by the drivers and/or hardware (drivers in the case of the more software synthesises, pure hardware in the case of some older things like the AWE series which actually loaded the soundfonts into RAM on the card itself.)  In other words, the player just sends windows standard MIDI commands and windows sends that to the drivers.  The player doesn't even KNOW if you have a soundcard that does soundfonts, or, heck, an old Adlib (no soundfonts or ANYTHING -- Adlib does FM synthesis via an OPL chip, I think OPL2) plugged into some rare system that actually has an ISA slot on hardware capable of running Windows XP or 2K.  To the player, it's all the same.  In fact, to the OS itself it's all the same.

Quote
The VSTs and the soundfonts are both separately available commercial releases, and pose the same problem for redistribution.  The foo_midi plugin cannot ship either without some sort of redistribution or license agreement.  There are some free alternatives available (for both routes) if you search the web.

I was just referring to a simple basic thing.  Nothing special.  There are plenty of free things out there that can be used.  They could either make their own VST or find something free and ask the author for permission (assuming the author doesn't just flat out give permission to begin with.)  I believe the Timidity people have been able to do this for example.  Oh, and speaking of soundfonts, that was a bad example because you won't find a soundfont capable card shipping with no soundfont loaded or available with the installation and midi playing silence or something worse than OPL3.


Anyway, this thread isn't really so much about debating foo_midi itself.  Some people will like it's synthesis.  Heck, with a good VST it's probably better than the poor quality Roland synthesis microsoft sto- uh, "aquired" which most systems default to using these days (a lot of soundcard manufacturers are getting REALLY lazy and not bothering to put any synthesis at all, software or hardware, and just use the microsoft software synthesis.)  This is about the fact that enough people would prefer that Foobar handle MIDI files the normal way to warrant it doing so with something such as the current foo_midi as an alternative available to all those people not lucky enough to have a soundcard with decent synthesis (which is getting more and more common these days.  I'm not even sure you can count on Yamaha cards anymore, though I haven't even SEEN a Yamaha card in years so I'm not entirely sure, but, what's left of their site doesn't even mention XG at all for any of them.)  In other words, I'm not saying that it's not a question of which is better so much as a question of why don't we have standard normal playback but only a software synthesis using a proprietary system many of us have never even heard of (and I still haven't found much info on the VSTs yet, much less a single sample.)  Standard playback has a lot of advantages such as actually using your hardware (seriously, if you have a good set of soundfonts loaded, or a good card like the XG capable cards why in the heck would you want to use some unprofessional free synthesis instead of your more professional hardware?)  It takes a very negligable about of CPU power since MIDI is just simple instructions rather than a whole waveform (and compression in the case of MP3s/etc).  Not to mention that you have direct access to a huge number of resources (check out sites like hammersound for example.  Soundfonts are all over the web.)  And just so on. 

But, seriously, it's not really about which is better, it's mainly just about having the OPTION to choose for yourself.  One thing you have to keep in mind is that MIDI is something that more or less has to center around the individual's personal preferences.  Because MIDI itself basically says "play note X on instrument Y for duration Z" (a little more, but, that's the idea of it) without telling anything about how instrument Y works whatsoever MIDI has always had a strike against it over the years because it sounded different on nearly everyone's system (guess this is where MS's roland synthesis with it's basic DLS support actually is a good thing -- I know some games like No One Lives Forever actually enforce it's use.)  Then again, you also had the advantage of being able to get it to sound even better to your ears by changing the soundfont/DLS or even getting a better soundcard (one thing I'm just LOVING doing is going back and playing some of my old DOS games in DOSBox which uses the standard windows method of handling general midi, so all my old games that use general midi play with my new soundfonts.  I just love it!)  This does take some control out of the author's hands (at least, until more recently with games like NOLF) but, IMO, it's just plain fun being able to play around with soundfonts and such to get something to sound just like you want it to more or less.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #4
[deleted]

Is there any plugin anywhere that can play MIDI through windows instea

Reply #5
Yeah, DirectMusic is the most modern way to do it.  Kind of standardizes it into a DirectX style of thing for simplicity's sake.  There's actually even older stuff.  After all, MIDI synthesis in Windows dates back to Windows pre 95 (well, I never used Windows before 3.1, so I can't speak for 1.0 or any others before 3.0.  Pretty well everyone was in agreement that Windows was crap until 3.0 or so anyway.)  I don't know how it was done before DirectShow, but, back in those days you just got your soundcard set up so it shows up in the midi mapper and presto anything that does MIDI goes through it.  Of course, those old methods still apply today.  I really don't know what the advantages of DirectMusic actually are to be honest (or if there are any.)  It might actually be easier to use the old general midi style.  Anyway, whatever is easiest is fine by me, just as long as it doesn't force you to use the Microsoft synthesis (though it might not be a bad idea to make sure that the MS synthesis will be available as an option since that way anyone can get at least tolerable midi synthesis, though I personally feel that a real roland is still a lot better and even that seriously outdated.)

And yes, I'm aware that DSP basically is impossible.  But, then I do have hardware DSP stuff.  CMSS, CMSS2, and stereo surround for upmixing, a hardware equalizer, even EAX should I feel a hankering for things like reverb and chorus.  The fact is, all I'm using DSP in foobar2000 for right now is upsampling to 48KHz/24-bit (SB Audigy 2 ZS Platinum here, so 48/24 or 96/24 are ideal for playback) and the ATSurround processor seems kind of ok (I kind of like CMSS/CMSS2 a little better, but, I understand a lot of people don't like them much.)  ATM I'm using the kernel streamer to avoid issues of course.  Anyway, the point I'm getting to is that I really have no need of some kind of equivalent DSP filters for MIDI.  The DSP filters I'm using kind of are intended for digital audio anyway.

You can't use your synthesizer with Foobar2000 (after all, that's the whole point of this thread) but, if it's good enough, you can probably set it up as the default MIDI synthesizer for all games/programs that actually use MIDI.  If it's a good synthesizer and you ever play things like old DOS games, you might want to think about doing that.  I just love playing old games with new(er) synthesizers.  To me it makes the game almost feel new (well, ok, more like finding a hidden area or something, but, it makes it fun again for a while.)  Thanks to DOSBox, I've been doing that a lot.

EDIT:  BTW, the CPU usage factor here isn't about whether your CPU can handle it or not, but, whether it can handle it AND SOMETHING ELSE.  Most of us multitask (I know I'm usually doing three or four things at least) and don't really want our music player to be spiking the CPU so badly that we can't move the mouse or otherwise normally do the other stuff we are working on.  No, not all of us can afford dual core chips.  Besides, I do feel a need to point out that despite what so many seem to think these days, dual core and SMP do not magically solve all multitasking problems, they only help.  They help a lot, but, the point is, it's not as simple as just consider it ok to fire up something that maxes out one core and expect to get the full power of the other core available for working on other stuff.  Too bad, when SMP started people understood the benefits and the whole point, but, somehow with dual core people have lost sight of reality and just think it's a magical solution to all multitasking needs.  I'm not saying you are one of these people, but, I am saying that there are a lot of these people and their numbers grow daily.  In fact, my other system is an old SMP P3-500 system which could probably actually handle the same VST stuff you're doing if there were a linux port of Foobar2000, but, then it wouldn't be able to do much else (considering that it's my firewall, squid cache, file server, and so on, that could be a problem...)  IMO that makes a great example because if that system were completely loaded down, then I'd have no internet access, I'd loose the speed and bandwidth advantages of my squid proxy, and so on.  I could load up a firewall and hook my main PC directly to the internet connection, but, I still loose the other advantages of having a server -- such as the squid.  Plus that's rather a lot of work to have to do just to play a MIDI file...  Anyway, I just mentioned the CPU part because it has come up numerous times, and the fact remains, hardware synthesis IS a lot easier on the CPU than software synthesis after all.  So for those who want MIDI to use less CPU power whether it's because they have ancient hardware or it's just because they want to do more multitasking, a proper midi playback plugin would solve their problem without having to use another player.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #6
I don't understand why there's no simple plugin to play midi. Is foobar2000's core so different from other players (winamp, media player classic, etc.) that plugins cannot support midi through the same method?
Yes, it is. foobar2000 is built around the paradigm that all audio data goes through its playback pipeline in PCM form.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #7
I don't understand why there's no simple plugin to play midi. Is foobar2000's core so different from other players (winamp, media player classic, etc.) that plugins cannot support midi through the same method?
Yes, it is. foobar2000 is built around the paradigm that all audio data goes through its playback pipeline in PCM form.

Here's a thought.  Can a plugin tell Foobar to not actually output any actual sound while still sending it the data to be used for plugins/etc?  It's possible to capture your MIDI output (even on cards that can't directly do it, you can usually capture using "Stereo Mix" "Analog Mix" "What U Hear" -- what moron thought to call it that? -- and etc.)  Only catch to capturing that way is if you also play it back then presto, you have a feedback loop.  Even if you capture the MIDI directly, playing it back won't produce a feedback loop, but, it will cause a digitally processed echo to occur in essense since you'll get the hardware playback and Foobar playback at the same time.

Personally though, I'd be happy if it just sent null samples to Foobar itself while using DirectMusic or whatever to actually play the MIDI.  I just want to not have to keep switching back and forth between players.

You know, it strikes me that if Foobar has something holding it back so strongly, maybe that's a fundamental problem that should be looked into correction...  Winamp, for example, doesn't have such a problem.  In fact, the only thing I really have against winamp's audio handling system is the fact that most of the internals can only process < 24-bit audio (16 or 8 bit) so things like the MAD decoder plugin will cause the equalizer and DSP functions to stop doing anything unless you dither back down to 16-bit.  I do like how foobar handles bit-depth the way a player SHOULD handle it.  The fact that it doesn't have to convert back and forth and such is one of the many reasons I'm TRYING to switch to Foobar.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #8
Too slow...

BTW the standard (non directx) way of playing MIDI sound is to use the Windows Multimedia API, see the msdn here for more details.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #9
[deleted]

Is there any plugin anywhere that can play MIDI through windows instea

Reply #10
TrNSZ, it's not so much a matter of whether I can hear it or not.  When I'm doing digital audio editing and such, I prefer to have as much accuracy as possible during all parts of the process until the final result when I encode to a MP3 or whatever to minimize the damage.  Things like the MAD decoder have the advantage of letting me get more accuracy during some parts of this process.  In fact, with Foobar I have to just decode my MP3s in a console instead of via Foobar if I'm going to do some sort of editing (too bad, the built in conversion tools are otherwise very handy and after I've decoded, the resulting WAV/FLAC/whatever file can be used throughout the rest of the process in Foobar just fine.)

EDIT:  [This part was to David's reference to the fact that the Foobar requires data to come in.]  That only applies if you MUST digitally process the MIDI output though.  That's what people keep forgetting.  If you stop for a moment and look at MIDI as being treated differently from digital audio like MP3s (and considering how they are fundamentally completely different things I think this is the best attitude regarding MIDI) then you realize that it doesn't necessarily need to be processed the same way.  I for one can live without equalizers, visualizations, and DSP processing on my MIDI files.  In fact, I usually don't want those things when doing standard MIDI playback.  If I decide I want them, I'll either use whatever hardware abilities my soundcard offers, or I'll do a more professional style edit where I record to digital audio then work on it very seriously in a powerful audio editor.

Anyway, basically what I'm envisioning here is a simple plugin which sends basic either windows api commands for playback of MIDI or uses directmusic (whatever is easiest) and if Foobar REQUIRES output, then it can simply keep sending null samples to Foobar's processing system.  The plugin would send information like positioning/etc where needed and play/pause/stop/etc via the API.  Foobar would think that things are being done through it, but, they wouldn't really be.  Darn, for all I care just use an external program or something so long as it doesn't pop up on top or anything and get in the way.  Just as long as I can control it via Foobar without having to load up another player, I'm happy.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #11
Anyway, basically what I'm envisioning here is a simple plugin which sends basic either windows api commands for playback of MIDI or uses directmusic (whatever is easiest) and if Foobar REQUIRES output, then it can simply keep sending null samples to Foobar's processing system.  The plugin would send information like positioning/etc where needed and play/pause/stop/etc via the API.  Foobar would think that things are being done through it, but, they wouldn't really be.  Darn, for all I care just use an external program or something so long as it doesn't pop up on top or anything and get in the way.  Just as long as I can control it via Foobar without having to load up another player, I'm happy.
There are several drawbacks to this rather hackish approach:
  • It would only work for playback in the best case. If you want to convert or ReplayGain a song, you have to convert it to PCM form.
  • Gapless playback would be broken due to PCM data going through the DSP pipeline and the output buffer. Due to the latency introduced by this, the time an input component is asked to start decoding is not the same time as when the user hears the audio.
I don't think that foobar2000 will get special support for handling MIDI playback. In fact, I think it is more likely that Winamp 3 will get more popular than Winamp 2/5 before that.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #12
Again.  I don't want DSP, I don't want replaygain, I don't even care if I loose visualization for MIDI only.  I'm trying to say that MIDI should not be thought of in the same context as digital audio.  I don't know about you, but, I'd rather listen to my souncard's midi synthesis complete with soundfonts and all without DSP processing than a crappy VST (assuming I can even find a crappy one) complete with digital processing designed primarily for true digital audio not MIDI.

Anyway, such a "hackish approach" is basically something which would be good enough to satisfy all the people who are unsatisfied with the current method while being so simple anyone who is actually capable of writing input plugins could probably do in their spare time.  It's not perfect, but, if you need perfection so badly, you might want to consider that the foo_midi isn't exactly perfect with it's much lower quality synthesis anyway.  To many such as myself, such a hack is a lot less imperfect than the foo_midi plugin.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #13
[deleted]

Is there any plugin anywhere that can play MIDI through windows instea

Reply #14
It's not perfect, but, if you need perfection so badly, you might want to consider that the foo_midi isn't exactly perfect with it's much lower quality synthesis anyway. To many such as myself, such a hack is a lot less imperfect than the foo_midi plugin.
Again, this is not the case - the plugin does no synthesis at all when using a VST.  The quality of the synthesis totally depends on what synth you throw at it.  I would give you what I use if that wouldn't be piracy, but it is. 

Keep in mind, I don't think you have a bad idea, but there isn't any need to be misleading.

Got a VST anywhere for XG?  Many would actually argue that it is the best MIDI synthesis created (albiet mainly just because it made such a tight fixed standard that authors could more or less be sure the MIDI would sound the way they wanted on the end-user's system, but, even setting that aside for a moment since there aren't many files actually made for XG, there are still some things it just plain does better than any other synthesis I've heard.)  I'll bet you don't.  Perhaps it is misleading since you may be able to, with enough work, maybe create a VST that is perfectly equal to the SB synthesis -- in fact, maybe with enough work, you can beat it since creative labs has never exactly been at the top of midi (though ironically since even Yamaha seems to have quit and roland is just -- er, what IS roland doing? -- creative is probably the best currently out there by default.)  Yeah, great, so you have this soundcard that can do all that, you can get online and get all these free soundfonts which are so easy to set up, all to find out that if you want to use your favorite player none of that means a thing and, in fact, those soundfonts are worthless without some seriously heavy editing.  IMO, having to deal with that lowers the level of the VST method to being below the hack that lets you use the far simpler methods that don't even require you to buy anything (you're going to have to buy the soundfont editor to fix those soundfonts -- the free version is too limited to allow you to do things like reposition instruments and combine multiple soundfonts into one big one to then convert to VST with another program that you may or may not have to register.)  I understand what you're saying -- the foo_midi plugin can potentially be equal maybe theoretically even better -- but, IMO it's worse because of the sheer lengths you have to go to to get it even close to equal.



BTW, just so we're clear here, I'm not trying to do any editing, processing or anything else.  I just want to be able to listen to MIDIs in a standard player and take anything I feel needs editing to my editing software.  In fact, players like foobar give me the advantage of being able to use the multimedia keys at the top of my keyboard so I can play/pause, stop, go forward, or go back without even having the audio player focused.  Very handy when digging through a lot of files.

EDIT:  Hey, btw.  In the "MAD Challenge" link provided earlier, they said that they DID feel that 24-bit decoding was properly demonstrated to be better than 16-bit decoding.  What they said was not demonstrated to their satisfaction was MAD's claim that decoding in 24-bit then dithering down to 16-bit was better than simply decoding in 16-bit.  Actually, that serves to prove my earlier point all the more since I was talking about what I liked about foobar's core being that it could handle 24-bit so I never have to dither anything that starts out in 24 or 32-bit.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #15
Anyway, such a "hackish approach" is basically something which would be good enough to satisfy all the people who are unsatisfied with the current method while being so simple anyone who is actually capable of writing input plugins could probably do in their spare time.  It's not perfect, but, if you need perfection so badly, you might want to consider that the foo_midi isn't exactly perfect with it's much lower quality synthesis anyway.  To many such as myself, such a hack is a lot less imperfect than the foo_midi plugin.


AFAIK it would require a lot of specialised code in the core, it would break many features, including conversion, components like foosic (with FooID), MIDI is really not something foobar is designed to, or should be designed to handle. If you want to play your midi in foobar so badly, using your SoundFonts, why not make lossless recordings of them and play them? Sure its a waste of space, but from the looks of things its the best solution you'll get.

Just out of interest, what is your reason for wanting to playback MIDI with foobar? I was thinking it would be in order to use features such as Converter, but from your comments that is not the case?

Is there any plugin anywhere that can play MIDI through windows instea

Reply #16
Why do you keep thinking it MUST go through the core?  I'm saying it can work without changing the core because it doesn't HAVE to go through the core.  The theoretical plugin I'm imagining uses the foobar controls to tell windows (or maybe a seperate program/dll/something) what to do and windows/the external program plays the midi while, if foobar requires some actual audio to be coming through, the plugin sends silent audio through foobar's core to satisfy it's requirements.

My reason for wanting proper MIDI with Foobar is just so I don't have to keep switching back and forth between players to play different audio formats.  Foobar is, after all, an audio player first.  I'm trying to move away from Winamp because winamp is moving more and more towards being a commercial player with more and more bloat like the way windows media player did so long ago that caused everyone to hate it.  Foobar, on the other hand, is a nice minimalistic player with support for modern file formats and things like high bitrates (again useful for my edits.)  No skins (except through a plugin that adds them,) no video players (hopefully not even through a plugin,) no cd burning (please please tell me there's no plugin for this, it's just silly) and so on.  The player itself at least is minimalistic anyway.  d-:  Can't say the same for all plugins.  Anyway, I like having a single audio player where I can just queue up a list of files to play and then use the multimedia keys on my keyboard to control it's progress through that playlist while I work on other things.

Mind you, I have found the conversion tools handy for most of my editing (sans the no MAD decoding part.)  The way it handles most of it's conversions is pretty good and I feel confident that it's not unnecessarily throwing away quality (such as the way winamp will have to dither any 24-bit audio down to 16-bit if you plan to do anything with it.)  I will never WANT to use that conversion tool for MIDI though.  MIDI has to be converted properly through a much more thorough process (after all, if I were satisfied with such a method, I'd just use Timidity.)  You need to record it and edit it to add effects in just the right amounts rather than simply running it through a cookie cutter generic processor.
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #17
Nazo:
My point was that audio playback in foobar2000 is based on a PCM audio pipeline, and thus requires to input components to decode files or other resources to PCM data. As you pointed out correctly, MIDI does not fit into this scheme. Yes, I do consider using workarounds to somehow play MIDI files while making foobar2000 think it is playing something (most likely digital silence) a hackish approach. To sum it up again, foobar2000 is designed to play back PCM audio data and MIDI simply does not fit into this design.

Nonetheless, I wish you good luck finding someone who is interested in implementing this.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #18
.... no cd burning (please please tell me there's no plugin for this, it's just silly) ...


http://www.foobar2000.org/components/index.html

Have a look at foo_burninate

BTW I do not consider this silly, its very useful when you use formats that no other application understands correctly (ie. WV with embedded cuesheet), it saves a lot of time decoding to WAV, then correcting all the lost Title/Artist information etc...

Is there any plugin anywhere that can play MIDI through windows instea

Reply #19
[deleted]

Is there any plugin anywhere that can play MIDI through windows instea

Reply #20
I just wanted to add the MP3 decoder in foobar2000 directly produces 32 bit floating point data without going through an additional 16 or 24 bit integer stage.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #21
There is no MP3 decoder which uses 32-bit precision that I've ever heard of.  HOWEVER, MAD can do 24-bit with 8 bits of padding to give you 32-bit (I suppose that wouldn't be floating point.)  For what it's worth, that does mean you can keep it in 32-bit format for things that work better in that or whatever.  I actually suggested once in the MAD SF forums that it couldn't hurt to think about 32-bit decoding just because, well, why not maximize what you can do, but, the response I got was that it really doesn't matter since the audio is typically mastered in 24-bits to begin with anyway, so decoding in 32-bits isn't going to increase precision.  Really I don't know how much difference it makes anyway.  Seems to me like 32 versus 24 is pushing things even among audiophiles.  Besides, most of us are too cheap to buy a soundcard that TRULY handles 32-bit without any kind of downsampling.  d-:

TrNSZ, it's not so much a matter of whether I can hear it or not. When I'm doing digital audio editing and such, I prefer to have as much accuracy as possible during all parts of the process until the final result when I encode to a MP3 or whatever to minimize the damage. Things like the MAD decoder have the advantage of letting me get more accuracy during some parts of this process.
If you are using lossy compression at any point during the digital editing stage, your processes are highly suspect and your workflow is just plain broken. There is no excuse for that. Let's not mention that if you are discussing a playback issue here, and not a music production issue, this argument simply does not apply.

Edit: You seem to be implying that you use using MAD to maintain "accuracy" but you later encode the output to MP3? Transcoding between lossy codecs is going to give you a massive quality loss.

I think you missed the point.  BECAUSE it's so lossy I must maintain as much quality as I possibly can throughout the entire process.  I have no option when the source is a MP3 I made years ago (I've been using MP3s for the obvious convenience since probably the late 90s) or which was in some game or something and I wanted to change or something.  All I can do is minimize the damage as much as I possibly can do.  Oh, and only the start and finish are lossy.  My entire editing process is lossless.  Usually I'm lazy and just use uncompressed WAV, but, even when I get less lazy, I compress with FLAC (I use FLAC instead of MAC because my MP3 player can play FLAC.)  I mean, really, what would you have me do?  Decode it as lossily as I can, edit in a lossy manner, then encode to a lossy format?  The end result is a lossy format must be used (whether because I want it on my player, or in a particular game or whatever) regardless of what the source was.  24-bit processing probably doesn't make a huge difference, but, the point is, the difference is above nill and it's a step I can do without really that much more effort, even if it is annoying to have to decode through an external utility in Foobar's case.

Quote
Anyway, you already know why this shouldn't be done in foobar2000, why it can't be done easily, and what the shortcomings are, and also what kind of hacks would need to be necessary. Sure, it can be done, but it seems the people who really care know better.

I'm not asking anything special, just a really basic thing that makes it so you don't have to break stride and fire up another player (which likes to grab some of the same resources such as my keyboard shortcuts.)  Frankly, I must point out that Winamp has no trouble with any format I've ever thrown at it.  If Foobar has a flaw that prevents it from doing some stuff Winamp can do, it might be something that should be looked into.  I admit, I don't know just how much this could be a limitation since this does admitedly apply to MIDI more than anything else, but, I can't help but wonder if there aren't other things it applies to as well.  Seems to me like having such a requirement can hold some plugins back.

Quote
I suggest for MIDI (which is a totally different paradigm than most audio formats) you find another player more suited to this kind of situation. This is simply a case of using the right tool for the job, IMHO. Just because foobar2000 wasn't designed for this particular issue isn't a reason to be critical of it's design, since it wasn't ever meant for this situation.

I agree with right tool for the right job.  I do my editing in Cakewalk for example.  Video playback gets deferred to Media Player Classic, BUT, MIDI is music and is played like music when you aren't doing any kind of editing, thus should be playable in a music player.  Besides, if you keep saying use another player for a particular format, eventually down the line (talking about the future) you'll run out of formats that work.  Anyway, I don't know about everyone else, but, I don't think I feel like dealing with having to close one player and start up another then reload my files into it just because it can't handle an audio format which has been around since probably the 80s (heck, maybe some sequencers had MIDI even before PCs, so maybe it's older than that...)
  

Is there any plugin anywhere that can play MIDI through windows instea

Reply #22
BUT, MIDI is music and is played like music

I don't want to be nit-picky, but MIDI is not necessarily music, it's not even an audio format at all as it never holds a single bit of audio data. In fact in most cases it is more like a computerized score sheet which to a certain extent describes music. It doesn't even have to be music, a MIDI file can be full of SysEx messages controlling various parameters of my synthesizer/sampler/whatever without any Note On event.

As foosion said, foobar2000 is a program to play file formats that can be decoded to PCM data. As MIDI is no such format, I don't think foobar2000 has the obligation to play it.
Nothing is impossible if you don't need to do it yourself.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #23
The math behind MP3 itself is inherently floating point, and as such, most decoders are also internally floating point. Mpglib and foobar2000's current decoder are both 32-bit floating point internally, and output such. FhG decoder is presumed to do as much.

In the case of both of the decoders I know of which are either entirely integer based or provide an integer only path for platforms lacking FPU, Helix MP3 and MAD, both used fixed point math to represent floating point numbers.

You asked about MAD supporting greater than 24-bit precision, but it already outputs 32-bit precision. Rather, 4.28 bit fixed point numbers. That is, one sign bit, three bits of whole, and 28 bits of fraction part. This is in the range of +7.99 ... -8, where +/- 1.0 is what translates to the full integer PCM range, and anything outside that is clipped. That can easily be translated to floating point and scaled appropriately. Or, if you saturate and shift it up 4 bits, you have 28 bits padded to 32.

And remember that although you or they did say that so many sources are mastered at 24 bits, there are a lot of files that are encoded from 16-bit PCM, such as redbook audio CDs. And even if that is not the case, there were probably a lot of encoders that didn't support 24-bit PCM, or 32-bit floating point would probably be the format to ultimately pass through the encoding process. But I can't say for sure what your files or anyone else's files were decoded from.

Wow, this is getting incredibly off-topic.

Is there any plugin anywhere that can play MIDI through windows instea

Reply #24
I wasn't aware that the math was 32-bit floating point.  From what I understand, there is no decoder which ultimately outputs 32-bit floating point is the thing though.  Maybe some part of the process is 32-bit, heck, maybe every part between the input and the output is 32-bit floating point, but, if the output is 24-bit in the case of MAD and 16-bit in practically every other case, does it really matter?


BUT, MIDI is music and is played like music

I don't want to be nit-picky, but MIDI is not necessarily music, it's not even an audio format at all as it never holds a single bit of audio data. In fact in most cases it is more like a computerized score sheet which to a certain extent describes music. It doesn't even have to be music, a MIDI file can be full of SysEx messages controlling various parameters of my synthesizer/sampler/whatever without any Note On event.

As foosion said, foobar2000 is a program to play file formats that can be decoded to PCM data. As MIDI is no such format, I don't think foobar2000 has the obligation to play it.

You don't want to be nitpicky, yet, you are.  You are looking at it in the most technical possible way.  Geez, if you get any more technical you'll have to consider that PCM isn't music either since it's just instructions on producing a waveform.  You're looking a little too technical here though.  Sheet music isn't music, but, the music played with that sheet music IS.  Just because the sheet of paper isn't music doesn't mean that the music played from it is not music.  By the same token, just because I can't pipe a MP3 file directly to my speakers and get music doesn't mean the MP3 does not reproduce music.

MIDI represents a form of music.  It requires "interpretation", but, if you want to get so technical, so does MP3, FLAC, OGG, and practically everything else out there (PCM Wave even has a little interpretation involved, albiet very little.)  Ultimately, when you put both in a player with the intentions of listening, the only difference between the two is quality since MIDI obviously can't do the same stuff MP3 can without a lot of work (usually involving going to a PCM format.)  But, if you're just listening, the differences there do not make one music while the other is not.