Skip to main content

Topics

This section allows you to view all Topics made by this member. Note that you can only see Topics made in areas you currently have access to.

Topics - entheh

1
General Discussion / NWC Viewer and multiple MIDI devices? Yeah I know, I'm bonkers
Hi!

I'm not a regular in the community, but I've been privately using NWC since 1996 or something and love it. Just discovered the upgrade to 2.5 - some great new features in there, although I'm still waiting for tremolo notation, trills and octave-up/down thingies :)

Anyway, on to the main point of this post...

So I'm sure everyone's familiar with the dreaded 16-channel limit MIDI has, and the compromises we have to make because of it. In orchestral music, usually we can't assign a channel per part, and have to collapse instruments of the same type into a channel together. Then we occasionally need to write overlapping notes, which most MIDI engines don't play the way we want (because they have to be designed to correct for lost events). The existing solutions don't always work: muting a note breaks the solo playback, and sometimes isn't appropriate even for the full playback.

So what I done, right, is I downloaded BASSMIDI Driver, which creates a virtual MIDI port and renders the music using a soundfont of your choice, and I modified it to create multiple ports. So now I have more than 16 channels and everything is fantastic. I've sent my changes back to the author too, just in case.

Then I thought I should probably check what the NWC Viewer does when the file is set to use multiple devices. Seems it maps the first device to chosen output device (MIDI Mapper by default) and never sets the other devices. So the music sounds a bit incomplete, which is a bit of a shame.

So then I thought of a number of ideas that will probably get me shot.

Should unmapped devices (in both NWC and NWC Viewer) automatically go to the first (or only) configured device? Then I can put the flutes on the same channel but different devices, and the playback will have the clashing note problem but be mostly OK. The downside is that I can see BASSMIDI Driver getting extended further to offer different soundfonts on different ports, at which point the flutes would want to be on different channels on the same device, which makes the whole idea break down. But on the other hand, it's probably no worse than the current behaviour. (Discuss!)

Should NWC Viewer allow the user to configure more than one device? Probably not...

Should it be possible to combine .nwc and, let's say for the sake of argument, .ogg into the same file in some way, and have NWC Viewer play the rendered version of the music instead of the MIDI? But it's open to both abuse and human error, so again, probably not...

Should NWC Viewer contain its own rendering engine that copes with this? Definitely not, because everyone has different needs, and soundfonts are not usually licensed for redistribution in patch form anyway. Not to mention that they're often bigger than the final render would be.

Should I just collapse everything on to the first device myself prior to distributing the .nwc files? The only downside is that people lucky enough to have applied the same MIDI channel jailbreak shenanigans will not reap the benefit. But that's probably no one.

Or should I just keep my standard-breaking .nwc files to myself and distribute .ogg, .mp3 and .pdf instead? But think of the lost viral publicity!! :o

Well I've probably answered my own question (it'll be one of the last two options), but I thought I'd post this here anyway just in case it sparks any useful discussion. :)

Thanks again for making such a great program and continuing to support and develop it for so long! (Incidentally, I tried Sibelius 6 at some point and it was too fragile. Breathe on it wrong and all the fancy layout you've set up explodes into a mass of I dunno, Linux or something. Had to buy a new carpet. True story.)