                             ɲþ
=======================================================================
եȥMIDI󥻥(for ALSA)

:Υѥåϥǥȥåޤߡɥե
   (ե䲻ȸƤФ)ɬܤιˤʤäƤޤ
2008-10-28 
=======================================================================
ΥѥåμŪTiMidity++ALSAΤMIDIݡȤˤ뵡ǽ
ˤޤ TiMidity++ ΤΤεǽϽ TiMidity++ ѥå
ѤϤޤ󡣤餫ե֤ꤷƵͤ
꤬ˤʤޤ


=======================================================================
 ALSA  MIDIݡȤˤ뵡ǽˤĤ

root¤ /etc/init.d/alsa2midi status ǧƤ
(פʤߤƤꤢޤǤդˤstart/stopǤޤ)

ˤäơALSAͳMIDIǡ򤤤줫Υݡ(14)Ϥǡ
TiMidity++ 󥻥ȤʤäMIDIޤ
( ALSA  PCM Ȥƥܥ塼ॳȥǤ礦)

ALSA  TiMidity++ ˤʤ롼MIDIݡȤɸ
ޤΤǡإǡϤХϡɥMIDIˤäMIDI
ޤ
MIDIĥɥɤˤĤƤϤǤϼ夲ޤ
ɤˤäƺˡ㤤ޤΤǡΥɥȤ˽äƤ

MIDIݡȥǡưΥץ
  --sequencer-ports=4 -iAD
  ġĤǤ4ݡȤϥǥեȤʤΤǾάǤޤ
  Υޥɤ桼Ѥ뤳ȤǽǤ
  TiMidity++4ALSAѥåϡ֥󥹥ȡ뤹Фư褦ˡ
  ȤˤʤΤǥƥ༫ưưˤʤäƤޤ
  ưǤϤ줾(ǤƱΥߥʥ)
  [ư] timidity --sequencer-ports=4 -iAD
  [] killall timidity
  [] aplaymidi -l
  ġĤȤƻѤޤ
   /etc/init.d/alsa2midi ˥󥹥ȡ뤵륹ץȤۡ
  ǥ쥯ȥ˥ԡ֤ѤǽǤΤǡMIDIݡȤ
  ѤʤǤ /etc/init.d/alsa2midi root¤ߤ
  桼ɬפʻɬפʥץɲä MIDI ݡȤ
  ޤ

κˤʤȻפ륪ץ -O Ǥ礦man timidity 
  ɤޤȥץåȥ⡼ɤǤ -Os ALSA ǥ
  ǥХؤνϤˤʤޤǥեȤ -Od  -Oj  JACKؤ
  ϤˤʤޤJACK ؤξϤߤ꤬ɬפˤʤޤJACK
  鹹ˤɤ³뤫ͳ٤⤤Τǻ߷פɬפˤʤ
  礦
꡼10 jack ͭˤƥӥɤƤޤ
   Jack-Audio-Connection-Kit
       (VineLinuxѥå̾ jack-audio-connection-kit)
  ꤷƤޤ Qjackctl ȥӥ奢벽Τ
  ڤˤʤǤ礦
  (SeedѰդͽ꤬ޤ)

=======================================================================
 MIDI󥿡ե
TiMidity++4ALSAɸ󶡤륤󥿡եˤ gnome(gtk+)  Emacs
 Tcl/Tk (tclx)Ȥޤgtk2 Ϥޤ

TkȤˤ wishx  tclx  Ϥ륹ץ wishx_transition
ѥåɬפˤʤޤ
 tclx  2008-07-01  extras ʬवƤޤäơɸδĶ
Ǥ tcl/tk 󥿡եϵưޤextras tclxɲäƤ
 wishx_transition 򥤥󥹥ȡ뤹ɬפޤ

 TiMidity++ˤȤäƤϥ󥿡եΰĤȹͤưˤȤäɬ
  Ǥ̵ΤǡФ¸ϺΤȤꤷƤޤ

TiMidity++  /etc/timidity/timidity++.cfg ˤޤ
MIDIݡȤǡ⡼ɤȰäơޤͤ
ǥեȤȤɤ߹ޤޤ
 (Ʊ˥ɥեȤޤΰϤ)
tcl/tk 󥿡ե: timidity -Aa -ik
gtk+ 󥿡ե  : timidity -Aa -ig
 -Aa Ϻ MIDIǡĲĴͭˤ륪ץǤ
ޤ褫񤫤Ƥ -Od8M -s11025 ץդΤ
ǽ夬äߤǤͭʤ褦ǤŬѤƤ
(gnomeǥȥåǤ timidity -Aa -ig -Od8M -s11025 ȤƤޤ)

GTK2ץꥱϡ
  ̾¿ѤǤɤΤƤ audacious(*)
  TiMidityץ쥤䡼ץ饰ޤΥץ饰ñΤ
  TiMidity++ ˥ɥե(ե)ɤ߹
  audaciousǤMIDIեǽˤޤ
  ץ饰 TiMidity++4ALSA եΰ֤Ǥ롢
    /etc/timidity/timidity.cfg  Ƥ
  󥿡ե⤪ޯǤ饤ȤޤΤʹʬˤ
  ʬǤϤʤȻפޤʤƱȥɥեȤȤ
  ϰϤǤϡڴﲻäʹϤޤ

(*)ľϤǤϤޤ󤬡 beep-media-playerǡ xmms ǡ
    winamp Ǥ¿ѾǤΤ⤢꤬Ǥ

=======================================================================
ɥեȤˤĤ

TiMidity++ MIDI(*եȥ-󥻥ˤ)
ˤϡɥե(*.pat ޤ *.sf2)򥤥󥹥ȡ롢ޤ
ꤷtimidity.cfg եƻѤɬפޤ

 timidity.cfg  timidity++.cfg ϡΥɥեȤե
  ȤƤ䤬Ⱦ(ޤϤʾ)ͭꡢMIDIѤ
  ġ롦ץˤϡ timidity.cfg ׵᤹Τ⤢ޤ

ΰ̣餹С timidity.cfg  TiMidity++ եʤΤǤ
ɥեȤिᡢѤ륵ɥեȤ˹碌
ɬפˤʤޤ

 timidity.cfg  source ʸˤ¾եɤ߹ߤ
Ѥơ TiMidity++4ALSA  freepats ǤϼΤ褦ưˤʤä
ޤ

(1)TiMidity++Υӥɥץɸǧ
  (ͥ) /etc/timidity/timidity++.cfg
  () /etc/timidity/timidity.cfg
  ġĤǧޤ
  [ư]
  ĤȤ¸ߤʤȥ顼ˤʤޤ
   timidity++.cfg  timidity.cfg ɤ߹ޤޤ
   timidity++.cfg ̵ȥ顼Фޤtimidity.cfg 
  ɤ߹ưޤ
  ʤưľܻꤹϤʳˤǽǤ

 2008-10-28 ߥ桼ǥ쥯ȥ~/.timidity/timidity++.cfg 
  ĤƤϥӥɥץ˴ޤƤޤ

(2) update-alternatives ˤ륵ɥեθ
   ΤȤ TiMidity++4ALSA ˴ޤޤߡȡfreepats ΤΤ
   ޤ󤬡줾ե /etc/timidity/֤졢
   ̤ͥ˽ä /etc/timidity/timidity.cfg ³ޤ
  [ư]
  root¤ update-alternatives ȤäؤǤޤ
  # update-alternatives --config timidity.cfg

  ޤ rpm Ʊͤε§˽äɥեȤΥѥå(ΰϤ)
  촹ޤ̤ͥ freepats 夲ȼưŪ
   /etc/timidity/timidity.cfg ³ڤؤޤ

 WindowsΥͥMIDI˶ᤤʪƤǤؤ
   ɥեȤФ̣ĤǤ礦

(3)줾ʬô
   ƼΤϤɤ졢 TiMidity++4ALSA ǤϼΤ褦ˤƤޤ
    /etc/timidity/timidity++.cfg ġ TiMidity++Υƥͭ
       ҤޤɸǤ timidity.cfg 󥯥롼̿񤫤
       ޤޥ˥奢˾ܤ꤬ͭꡢޤ timidity.Sample.cfg 
       ˤ⵭㤬ޤưϤ˽񤯤Ȼפޤ
       ɲäȤ⡢ timidity.cfg ɤ߹ߤ˺ʤ褦
       Ƥ(Υ롼ǱѤ)
    /etc/timidity/timidity.cfg ġ ɥեȤȶѹ
       եǡߤ update-alternatives ˤؤ
       ʤäƤޤ褫餵 cfgե򥤥󥯥롼
       ꤷޤɥեȤؤ꤬ѤΤǡ
       Ѥʤ timidity++.cfg ɤǤ

 update-alternatives --config timidity.cfg Ѥȡˤ
   etc/timidity/timidity.Sample.cfg ɽޤϥߡǤ
    soundfonts2󶡤ѥåɬ˥󥹥ȡ뤵
   ʤΤǼºݤˤϻѤޤ

=======================================================================
ɥեȤɲ
ΤȤƥ桼ǤαѤǤ̵ơƥΤǰĤ(1åȤ)
եȤꤷƤޤ

(A)*.sf2 ξ
  %{_datadir}/soundfonts/%{ɥե̾}ǥǥ쥯ȥޤ
  㤨ХɥեȤ Sample.sf2 ǤʤС
  /usr/share/soundfonts/Sample/ ǥ쥯ȥꡢ Sample.sf2 
  ֤ޤ

   ΥɥեѤtimidity.cfg Ƥޤ
  äȤñˤϡ/etc/timidity/timidity.cfg ˥եѥǻꤹ
  ȤǤ
  soundfont /usr/share/soundfontsSample/Sample.sf2
  (˽񤤤ΤǸɤ߹ޤޤ)

  뤤 update-alternatives ˤؤԤ٤ˤϡǽ cfgե
  ꡢ/etc/timidity/ ֤ޤ
   () /etc/timidity/timidity.Sample.cfg
  Ƥ񤭹ߤޤ
   () soundfont /usr/share/soundfontsSample/Sample.sf2

äʣʻԤ man timidity.cfg ɤꡢ̤
  桼ƥƥǤ soundfont-utils  unsf ꤬ɬפˤʤ
  Ǥ礦

  ³ơupdate-alternatives ޥɤȤäƴ˴ޤޤ
  root ޥɤǤ

  # update-alternatives --install \
    /etc/timidity/timidity.cfg timidity.cfg \
    /etc/timidity/timidity.Sample.cfg 30
  (ºݤϰԡƺǸͥ٤򤢤魯ǤդǤ)

  Ǹ update-alternatives ޥɤڤؤޤ

  # update-alternatives --config timidity.cfg

  鳰ϼΥޥɤ¹Ԥޤ
  # update-alternatives --remove \
     timidity.cfg \
     /etc/timidity/timidity.Sample.cfg


(B)*.pat ξ
  ǥ쥯ȥäơ˥ե켰֤SF2ƱǤ
  update-alternatives δ˴ޤƱˤʤޤ

  ̾ġγڴ˥եǥ쥯ȥ꤬ʬƤޤ
  TiMidity++ ξ硢ַˤбƤ뤽Ǥξ
  ֥ե̾θ'#'Ĥɽޤ
  (man timidity.cfg)

  *.pat ξϡե뤬̤ˤʤäƤޤΤǡĤޤϸġ
  ե򤹤٤ƥեѥǻꤹ뤳Ȥˤʤޤ
   (freepat ѥåˤϥե *.cfg ե
      ñʥ륹ץȤ°Ƥޤ)

  ҤǽΨ夲뤿ˤϡ㤨мΥץ󤬻Ȥޤ
  ## Υǥ쥯ȥ򸡺ѥ˲ä
  ## եꤹˤʬάǤˤʤ

  # dir /usr/share/soundfonts/Sample

  ¾ˤ⡢ե̤Ѱդơɤ߹꤬ޤ
  ## ¾ե򤳤ξɤ߹
  # source /etc/timidity/Sample.cfg

  ƤμʥΤϼ3Ǥ
  ## ȡХ󥯤λ
  ## ɥॻåȤλ
  ## ġΥȡɥλ

  ñȤƤϼΤ褦ˤʤޤ
  ## ȡХ󥯤λ
  bank 0

 0	Tone_000/000_Acoustic_Grand_Piano.pat amp=120 pan=center
 1	Tone_000/001_Acoustic_Brite_Piano.pat 
 2	Tone_000/002_Electric_Grand_Piano.pat 
   .....ʲά......

  ## ɥॻåȤλ
drumset 0

 25	Drum_000/025_Snare_Roll.pat 
 26	Drum_000/026_Snap.pat 
 27	Drum_000/027_High_Q.pat 
   .....ʲά......

  ġΥȡɥλɬפ˱ƹԤޤ
0	Tone_000/000_Acoustic_Grand_Piano.pat amp=120 pan=center

  ͤ man timidity.cfg ˾ܤܤäƤޤ
   (ɤ٤ˤĤƤϸĿͤκ̤ǤΤǤФäƤ)

=======================================================================
ե꡼˻Ȥ륵ɥեȤդɲäƤȻפä
  ޤ
                                                :Ͼ Ϻ
