Hi nuio,

thanks a lot for this patch! Things look very good, however before merging your patch I'd like to see a more generic approach regarding the models for the knobs. There should be one slot for all models and distinction should be made by using QSignalMapper. That way lot's of redundant code is avoided (by using generator macros things do get a little better but the resulting binary is bloated!) and everything is kept more maintainable.

Also the modification of MidiWinMM.cpp should be stripped out into a separate patch with a proper commit message.

Looking forward to see the improvements! :)

Best regards


2013/1/20 <numa_shsk@mail.goo.ne.jp>
I found out how to equip the multitimbral midi support.

Following video shows how it works.

So far, vestige wasn't able to receive midi signals separately.
If you tried it, all signals were sent to one channel, that is, realOutputChannel.

But this patch enables plugins that have 16 channels to receive each midi signal separately.

I modified three files, that is, midi.h, MidiPort.cpp, and InstrumentTrack.cpp.


2013/1/24 nuio <numa_shsk@mail.goo.ne.jp>
I equipped vestige with Midi control change & pitchbend knobs.
I referred to the code of zynaddsubfx.

Following video shows how it works.
I recommend changing image quality setting to HD.

I think the combination of these knobs and multitimbral midi support is useful.

But my coding is not so good, so my patch may need to be revised.

I also modified MidiWinMM.cpp for pitchbend to work precisely.

By the way, I test LMMS on Windows mainly.
On Windows, multitimbral midi support works perfectly.
On Ubuntu, however, this does not work on vestige somehow.
But this works perfectly on zynaddsubfx on Ubuntu.

Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
LMMS-devel mailing list