[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Sat, 25 Jun 2005 10:25:49 -0500
2005-06-25 Stephen Charles McCarthy address@hidden
* scm/midi.scm: changed midi volumes in absolute-volume-alist from
0.05 - 1.00 to 0.25 - 1.00
* scm/midi.scm: moved the default-instrument-equalizer procedure to just
under the insturment-equalizer-alist it takes as an argument.
end of entry.
The neat logic of assuming that midi volume zero is the point of zero volume
coming through everyone's speakers is the sort of logic that rarely works
when dealing with Multimedia on the computer. There are three assumptions
being make with that kind of thinking:
1) The volume distance between adjacent dynamic levels you want corresponds
to the distance you get when they all are spaced evenly along the entire
volume range from 0 to 1.
2) All midi volume levels are audible until you get to zero.
3) The volume levels are linearly arranged along the midi volume range.
Instead, midi volume level 1.00 is the default and we should assume the user
has just set his volume level for that before he plays a pianissimo piece.
So all the dynamic levels should be as close to 1.00 as possible while still
maintaining an audible difference between them.
Tackling the problem from the other side, it is as if I decided that midi
volume 0.20 is a closer approximation to zero volume than 0 on most peoples
systems, added that to the volume level of ppppp, and listened to the output
from set-midi-absolute-volume.ly that I propose be added to
./input/no-notation to verify that they seem to be spaced the way I would
want them if I were playing them on the piano myself.
The patch file is twice as long as the original, because all I did was move
a procedure from near the end of the file to near the beginning under the
insturment-equalizer-alist to help developers see that someone already made
a pass at providing a procedure for that alist. So this is just midi.scm
with the changes in it, is that OK?
I made these changes because parts of my midi files were becoming inaudible
when I added dynamics. I could fix this either by removing the
dynamic_perfomer the way I demonstrated how to do earlier or by compressing
the dynamic levels. I think compressing them makes sense in light of the
fact that they don't need to be spaced out as wide as possible in order to
get the desired effect. There is no substitute for auditioning the levels
with your own ears to verify they are were you want them. Try setting the
volume level on your system for a piece with no dynamic marks in it first.
Description: Text Data
Description: Binary data
- midi.scm patched,