I totally agree with the goal of improving the default playback.  I think
that would be a great improvement.  And I predict that once you work through
the design, you'll end up with something very similar to what I proposed. :)

For example, the assumption that dynamics=velocity clearly needs to change. 
As long as you have that assumption, it's impossible to create a crescendo
within a single note.  To do that, you need to use a MIDI control instead.

On the other hand, that behavior is instrument-specific.  For some
instruments, velocity clearly *is* the right way to represent dynamics.  A
crescendo means something fundamentally different on a violin and on a
piano, and it requires different MIDI commands to control them properly. 
That's true whether you're working with an internal synthesizer or an
external one.

So you still need an abstraction layer of the sort I described.  There needs
to be flexibility in how it generates commands.  Dynamics markings in the
score need to produce different MIDI commands depending on what instrument
is being controlled.  The same is true for slurs and other types of
articulations.

But while you're designing this, please don't neglect external synthesizers! 
If you design it to work well with the built in ones, then with only a very
little bit of extra work you can also make it work well with external ones. 
And that would be a huge benefit to your users.

Peter



--
View this message in context: 
http://dev-list.musescore.org/Playback-abstraction-layer-tp7579762p7579809.html
Sent from the MuseScore Developer mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________
Mscore-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mscore-developer

Reply via email to