This note is in answer to Jeff Clements' request for my procedure in
modifying the e-Competition files. Making the modification is not going
to be everyone's cup of tea. I'd say to those on the list who are happy
with the way the files play on their instrument, continue to play and
enjoy them. To those finicky types who want to hear the most accurate
possible reproduction of the performances with minimal sustain pedal
klunking, you may wish to try this modification.
In anticipation of the next question, "Why don't you just make the
modified files available for downloading?", I hope you will understand:
The files, although generously made available to the public, remain the
property of the copyright holder who is endowed with all rights of
modification and distribution.
Modification of the e-Competition Files for Continuous Sustain Pedal
====================================================================
Purpose
-------
The e-Competition files as supplied by Yamaha are Type SMF 0 with the
pedal data directed to MIDI channel 1. When reproduced on a Mark II
Disklavier (and probably other models), the sustain pedal action is
on/off rather than continuous. As a result, the fine nuances of the
original performance are lost.
This modification produces SMF 1 files which are similar to those once
provided by Yamaha on Global Jukebox or derived from PianoSoft. That is,
continuous sustain pedal data are directed to MIDI channel 3 with the
result that the sustain pedal closely follows the original motion given
by the performer.
This modification also removes unusable Key Aftertouch data found in the
original files.
An optional procedure is offered to keep the sustain pedal from reaching
its extremes and thus reduces the banging noise of the damper. The
sustain pedal will follow the original continuous values except that 20
(instead of 0) becomes the lower limit and 95 (instead of 127) becomes
the upper limit. To successfully use this modification, the sustain
pedal must be in correct adjustment and calibrated.
Using the Modified Files
------------------------
The modified file is a Type SMF 1. If your Disklavier recognizes only
SMF 0 files on a DOS-formatted 720K diskette, you will not be able to
use that medium.
Two ways to play modified files are:
1. Play from an external sequencer (such as Cakewalk or Power Tracks).
(Don't forget to set the Disklavier's MIDI IN to "CH=HP".)
2. Convert to E-SEQ using the Giebler or other utilities
Requirements
------------
There are surely other software tools that will do the job. This
procedure uses Cakewalk Audio Pro 9. (Other versions of Cakewalk may not
provide the facilities needed to follow this method.)
Outline of the Procedure
------------------------
1. Open the original file in Cakewalk and save under a different name
and as a MIDI Format 1 file.
2. If you find a Track 2 (with redundant pedal controller data), delete
Track 2.
3. Select in Track 1, using the Filter, all Key Aftertouch data and
delete them.
4. Copy the controller data from Track 1 to Track 2.
5. Delete the controller data in Track 1.
6. Set the controller data in Track 2 from MIDI channel 1 to MIDI Channel 3.
7. (Optional) Limit the sustain pedal motion to values between 20 and 95.
8. Save the file.
Details of the Procedure
------------------------
1. Open the original file in Cakewalk and "Save As" under a different
name as a MIDI Format 1 file.
2. If you find a Track 2 (with redundant pedal controller data), delete
Track 2.
In the majority of files, you will find in Cakewalk's Track View that
only Track 1 exists. However, if you find a Track 2 with data, you may
verify in the Event List View that this is redundant pedal data directed
to channel 2. Delete it by selecting Track 2 (click on the far
left-hand pane) and CTL-X the track. The track should disappear.
3. Select in Track 1, using the Filter, all Key Aftertouch data and
delete them.
Select Track 1 (click on the far left-hand pane). Pull down the menu
Edit/Select/By Filter. Check "KeyAft" only, then OK. In the Track
View, do a CTL-X.
4. Copy the controller data from Track 1 to Track 2.
Select Track 1 (click on the far left-hand pane). Execute the following
CAL routine:
; CopyControllersToTrack2.CAL
(do
(TrackSelect 1 0)
(ResetFilter 0 1)
(SetFilterKind 0 NOTE 0)
(SetFilterKind 0 KEYAFT 0)
(SetFilterKind 0 PATCH 0)
(SetFilterKind 0 CHANAFT 0)
(SetFilterKind 0 WHEEL 0)
(SetFilterKind 0 RPN 0)
(SetFilterKind 0 NRPN 0)
(SetFilterKind 0 SYSX 0)
(SetFilterKind 0 SYSXDATA 0)
(SetFilterKind 0 TEXT 0)
(SetFilterKind 0 LYRIC 0)
(SetFilterKind 0 WAVE 0)
(SetFilterKind 0 MCI 0)
(SetFilterKind 0 EXPRESSION 0)
(SetFilterKind 0 CHORD 0)
(SetFilterKind 0 HAIRPIN 0)
(EditCopy40 1 1 1 0 0 0 )
(EditPaste40 0 1 1 1 215106 0 1 1 1 0 0 0 0 0 )
(ResetFilter 0 1)
(SetFilterRange 0 13 1 0 16384)
(TrackSelect 1 1)
(TrackSelect 0 1)
)
5. Delete the controller data in Track 1.
Select Track 1 (click on the far left-hand pane). Execute the following
CAL routine:
;Strip controllers Track 1
(do
(TrackSelect 1 0)
(ResetFilter 0 1)
(SetFilterKind 0 NOTE 0)
(SetFilterKind 0 KEYAFT 0)
(SetFilterKind 0 PATCH 0)
(SetFilterKind 0 CHANAFT 0)
(SetFilterKind 0 WHEEL 0)
(SetFilterKind 0 RPN 0)
(SetFilterKind 0 NRPN 0)
(SetFilterKind 0 SYSX 0)
(SetFilterKind 0 SYSXDATA 0)
(SetFilterKind 0 TEXT 0)
(SetFilterKind 0 LYRIC 0)
(SetFilterKind 0 WAVE 0)
(SetFilterKind 0 MCI 0)
(SetFilterKind 0 EXPRESSION 0)
(SetFilterKind 0 CHORD 0)
(SetFilterKind 0 HAIRPIN 0)
(EditCut40 1 0 0 0 0 0 0 )
(TrackSelect 0 0)
)
6. Set the controller data in Track 2 from MIDI channel 1 to MIDI Channel 3
Select Track 2 (Click on the far left-hand pane). Execute the following
CAL routine, then in the "Channel" box of Track 2, set the channel
number to 3:
;Set control channel to 3
(do
(forEachEvent
(if (== Control.Num 64)
(= Event.Chan 2)
)
)
(forEachEvent
(if (== Control.Num 67)
(= Event.Chan 2)
)
)
)
7. (Optional) Limit the sustain pedal motion to values between 20 and 95.
Select Track 2 (Click on the far left-hand pane). Execute the following
CAL routine:
;20-95.cal
(do
(forEachEvent
(if (== Control.Num 64)
(do
(if (> Control.Val 95)
(= Control.Val 95))
(if (< Control.Val 20)
(= Control.Val 20))
)
)
)
)
8. Save the file.
(End of Procedure)
--
Robert Welcyng
Anchorage, AlaskaMessage
Modifying the e-Competition Files
2002-07-11 by Robert Welcyng
Attachments
- No local attachments were found for this message.