[Coco] Sound Chaser Multi-Format Music Player BETA

Gene Heskett gheskett at wdtv.com
Fri Jun 29 11:48:07 EDT 2012

On Friday 29 June 2012 11:43:03 Aaron Wolfe did opine:

> On Fri, Jun 29, 2012 at 11:03 AM, Gene Heskett <gheskett at wdtv.com> wrote:
> > With modern polyphonic midi devices (and our sound cards too) capable
> > of 16 instruments each, it seems that a voice translator to reassign
> > my non-std, non-GM music instruments in the GM map would allow us to
> > more accurately play the music I moused in with such delight when it
> > all actually worked right here in this room nearly 20 years ago,
> > would be a nice facility to have.  Hint...
> DW4 has the ability to remap MIDI instrument/patch changes on the fly.
>   This allows you to playback songs originally entered for a non GM
> synth to play back somewhat normally on a modern GM one.  I say
> somewhat because of course not all of the sounds possible on some of
> the older FM synths have direct equivalents in the GM instrument map.
> To choose how instruments are translated, either use the Config, MIDI,
> Set Profile option in the UI or use the command:
> dw midi synth profile <name>
> where <name> is the profile you wish to use.  (use 'dw midi synth show
> profiles' to see a list of valid names).  You can switch on the fly
> even as a song is playing, which is handy if a song sounds wrong but
> you're not sure what synth it was coded for.
> Currently you must edit the config.xml to add or change the
> translation profiles, but I'll be adding an editor to the UI someday.
> Below is an example of a translation profile, this one tries to turn
> Casio MT-540 songs into GM.  There are some important fields in the
> midisynthprofile statement:
> name = the name that you'd use to select this profile
> dev_adjust = a value added to the raw MIDI instrument number *before*
> translation
> gm_adjust = a value added to the MIDI instrument number *after*
> translation
> dev_adjust and gm_adjust are available because the MIDI standard is to
> use a 1 based numbering system for instruments, but the MIDI protocol
> uses a 0 based value.  So, selecting "Instrument 1" in your MIDI
> program or on the MIDI synth will result in a MIDI packet containing
> the value 0 for the instrument.  Go figure. If you'd like to edit a
> translation table using the same instrument numbers that your software
> or synth use (probably wise) then set dev_adjust to 1 and gm_adjust to
> -1.
> Inside the midisynthprofile section you specify one or more mapping
> statements which simply map the values sent to DW (dev) to the value
> you'd like DW to send to your synth (gm).   To select GM instrument 6
> when the song selects instrument 1, you'd use:
> <mapping dev="1" gm="6"/>
> Hope that makes sense, I'll add most of this message into the wiki at
> some point.
> Here is the example profile:
> <midisynthprofile category="midi" desc="Casio MT-540" dev_adjust="1"
> gm_adjust="-1" name="mt540">
> 		<mapping dev="0" gm="0"/>
> 		<mapping dev="1" gm="6"/>
> 		<mapping dev="2" gm="11"/>
> 		<mapping dev="3" gm="18"/>
> 		<mapping dev="4" gm="19"/>
> 		<mapping dev="5" gm="62"/>
> 		<mapping dev="6" gm="48"/>
> 		<mapping dev="7" gm="73"/>
> 		<mapping dev="8" gm="54"/>
> 		<mapping dev="9" gm="26"/>
> 		<mapping dev="10" gm="14"/>
> 		<mapping dev="11" gm="7"/>
> 		<mapping dev="12" gm="50"/>
> 		<mapping dev="13" gm="117"/>
> 		<mapping dev="14" gm="4"/>
> 		<mapping dev="15" gm="20"/>
> 		<mapping dev="16" gm="21"/>
> 		<mapping dev="17" gm="36"/>
> 		<mapping dev="18" gm="119"/>
> 		<mapping dev="19" gm="123"/>
> 		<mapping dev="20" gm="3"/>
> 		<mapping dev="21" gm="12"/>
> 		<mapping dev="22" gm="68"/>
> 		<mapping dev="23" gm="92"/>
> 		<mapping dev="24" gm="46"/>
> 		<mapping dev="25" gm="89"/>
> 		<mapping dev="26" gm="94"/>
> 		<mapping dev="27" gm="93"/>
> 		<mapping dev="28" gm="88"/>
> 		<mapping dev="29" gm="95"/>
> 	</midisynthprofile>
Kewl Aaron. IIRC I did do some switching on the fly, and it worked, but 
apparently I'll have to dig out both of those old keyboards and write me up 
a 'profile' to fit their mapping.  Something to do on a long winters 
evening. :-)  Right now I'm waiting on a ball screw for the cross slide on 
my lathe.  Plus I need to take a shower and carry a ballot petition around 
the neighborhood.  Priorities.  ;-)

> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco

Cheers, Gene
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
My web page: <http://coyoteden.dyndns-free.com:85/gene> is up!
When I first arrived in this country I had only fifteen cents in my pocket
and a willingness to compromise.
		-- Weber cartoon caption

More information about the Coco mailing list