Transcript

Khi nim v Audio v MIDI

Khi nim v Audio v MIDI

- Mai Kin -

MIDI l g?

1. nh ngha MIDI:

MIDI l cm t vit tt ca Musical Instrument Digital Interface, c ngha l Giao Din S Ho Nhc C. l mt giao thc truyn thng tin m nhc theo ch thi gian thc.

MIDI c pht trin vo u nhng nm 1980 do mt lin hp cc nh sn xut synthesizer quc t. Vo thi im c hai nhim v c a ra. Th nht: Lm th no mt bn phm c th iu khin cao , rung, bend, Pedal vang... ca bn phm khc. Th hai: Lm th no ng b cc thit b c tempo chng hn nh Sequencer, Drums machines... lm cho chng chy cng tc vi nhau. T cc nh sn xut ln nh Roland, Sequential Circuits v Oberheim nghin cu ra mt giao din chun a nng (Universal Standard Interface) v sau ny tr thnh MIDI.

MIDI l mt dng giao tip. N l mt giao thc my tnh hay ngn ng truyn thng tin gia hai hay nhiu thit b MIDI. Cng nh my tnh hay tt c cc giao tip khc, MIDI bao gm nhng thng ip (messages) gia cc thit b u cui m hiu c chung giao thc. Cng c th hiu n gin, bn l mt thit b khi bn ni chuyn vi ai khc (thit b khc).

Nu mt thit b in t c trang b MIDI, n c th hiu c giao thc MIDI v do vy n c th giao tip vi bt k thit b no c trang b MIDI khc, hay bt k sn phm no t cc hng khc nhau. V d n Keyboard Yamaha c th gi thng ip n mt Drum machine ca hng Roland, bi v tt c cc thit b c trang b giao thc MIDI u tng thch vi nhau.

C nhiu thun li ca nh dng MIDI:

Lng d liu m nhc rt ln c lu gi mt dng rt nh

Cc phn khc nhau ca bn nhc c th c gn cho bt k nhc c no m bn mun.

Dng lu gi m nhc y v cc thng tin nh nt nhc, tc , ha biu c th c hin th v chnh sa d dng khi dng cc chng trnh chp nhc khc nhau.

2. Kt ni MIDI

Thng ip MIDI c gi i t cng MIDI OUT ca mt thit b ti cng MIDI IN ca mt thit b khc qua mt cp ni MIDI (MIDI cable). gi mt thng ip t n keyboard ti my tnh hay bt k thit b no, bn phi dng cp MIDI ni cng MIDI OUT ca n keyboard ny ti cng MIDI IN ca my vi tnh. gi li thng ip MIDI ngc tr li n keyboard, bn cn ni cp MIDI t cng MIDI OUT ca vi tnh vi cng MIDI IN ca n Keyboard.

- OUT Port - Thng ip MIDI c gi ra khi mt thit b qua cng ny. Nu bn chi nt C4 trn bn phm, thng ip "chi nt C4" ny c truyn ra ngoi bng ng OUT Port.

- IN Port - Thng ip MIDI c nhn vo mt thit b u qua cng ny.

- Thru Port - Thng ip MIDI c nhn vo thit b MIDI qua cng IN v c chuyn qua cng Thru ca thit b t c th c chuyn qua mt thit b th ba m thngn tin vn khng thay i. Cng ny c dng khi c mt thit b MIDI gi v nhiu thit b MIDI nhn.

ni my tnh vi keyboard bn cn mt cp ni MIDI mt u l 2 chu cm 5 chn ni vo n, u kia l mt chu 15 chn ni vi sound card qua cng MIDI/Gameport. Hai u 5 chn IN v OUT c ni vi hai u OUT v IN ca Keyboard (IN vo OUT v OUT vo IN)

3 Knh MIDI (MIDI Channel)

MIDI cho php bn gi d liu theo tng ng ring r cng mt lc, mi ng ny l mt knh MIDI (Channel). Mi knh ny c gn mt s nh danh. Nu mt nt c chi trn thit b A, n c gi km mt s nh danh knh MIDI. Nu thit b B c t cng knh vi thit b A, n s p li bng cch chi nt . Nu thit b B c t mt knh khc, n khng nhn c thng ip ny mc d v mt l thuyt c ni bng cp MIDI.

MIDI c 16 knh khc nhau, v chng u c chc nng sau. Mi knh u c th cha tt c cc loi thng ip MIDI nhng chng u c tch bit. Thng ip ca knh 1 khi c gi i khng b nh hng bi cc knh 2, knh 3...

4. General MIDI

Nh ta cp, MIDI cho php ta trao i d liu m nhc gia cc thit b ca cc nh sn xut khc nhau. Nhng thng ip ny khng cha bn thn nt nhc, nhng n cha cc thng ip nh s m sc, nhn phm, nh phm, cao , rung, vang...

Nu s m sc 1 ca mt n keyboard c sn xut bi Yamaha l PIANO, trong khi s m sc 1 ca n Roland l BASS, th d liu c gi i ca n Yamaha l PIANO s vang ln l BASS n Roland. Nu mt n keyboard Yamaha c 16 knh v d liu c gi n n Roland ch c 10 knh, th nhng knh khng c chi s khng vang ln.

Tiu chun cho s m sc, s knh v cc thng s chnh m xc nh m thanh ca bn nhc c thit lp t thit b ngun c a ra bi cc nh sn xut khc nhau c gi l General MIDI

Tiu chun General MIDI cho php d liu m nhc c to ra theo chun ny c th c chi cc thit b MIDI khc nhau m vn gi nguyn c cc s m sc, s mt trng, sc thi, m lng...

5. Standard MIDI Files (SMF)

Standard MIDI Files l tp tin d liu Sequencer MIDI. Standard MIDI Files ban u c dng lm phng tin trao i d liu gia cc thit b sequencer t nhiu nh sn xut khc nhau. Sau n c dng lm nh dng file MIDI chun cho h iu hnh Windows v cc ng dng multimedia.

MIDI files s dng nh dng Chunky (theo tng khoang), tng t nh nh dng ca Electronic Arts -IFF hay nh dng ca Microsoft/IBM - RIFF. Cc tp tin dng ny cha cc khoang khc nhau, mi khoang cha mt s dng d liu m chng trnh c th c c. MIDI File c cu to bi hai loi khoang: Khoang tiu , cha cc thng tin v trt t tracks, phn gii ca thi gian (timing resolution), v khoang tracks cha cc d liu MIDI v cc d liu khc.

MIDI Files c th c mt trong ba nh dng. S nh dng c lu khoang tiu ch ra cc khoang tracks c th hin nh th no. Cc nh dng ny l:

- Format 0: Cc tp tin ny ch cha mt track nhng nhiu knh (multi-channel). nh dng ny c dng thch hp cho vic playback cc ng dng multimedia v kiu nh dng ny c th c c t a nhanh hn cc nh dng nhiu rnh (Multi-track)

- Format 1: Nhng tp tin theo nh dng ny cha nhiu tracks. Track u tin lun cha tt c tempo v thng tin v ho biu, ging cng vi cc dng d liu tng th (global); Cc track cn li cha d liu MIDI. Bi v nh dng Format 1 cho php d liu MIDI chia thnh nhiu knh khc nhau hay nhiu tiu ch khc, nn chng d dng hiu chnh li so vi Format 0.

- Format 2: Nhng tp tin dng ny t dng hn. N c dng cho cc thit b sequencer cho php cc track c chi ring r v lp li (Loop). Ngy nay c cc thit b bng ghi m Digital (Digital-tape-desk) nn chng khng cn thch hp na.

Digital Audio l g?

1. nh ngha:

Digital Audio l mt kiu n gin nht thu v pht m thanh bt k dng no. N tng t nh catxet - bn c th thu mt on no ri pht li. Digital audio lu gi m thanh di dng nhng dy s di.

2. m thanh dng sng (Sound Waves)

m thanh dng sng l s rung trong khng kh. m thanh dng sng c to bi bt k th g rung, mt vt rung th gy ra khng kh bn cnh cng rung theo, v s rung ny lan ra trong khng kh theo tt c cc hng.

Khi s rung ca khng kh vo n tai bn, n lm cho mng nh rung ln v bn nghe thy m thanh. Do vy, nu s rung ca khng kh c bt vo micro, n lm cho micro rung ln v gi tn hiu in t ti bt k th g c ni vi micro.

Nhng s rung ny xy ra rt nhanh. Tn s rung chm nht m bn nghe c l khong 20 ln rung trong mt giy, v tn s nhanh nht vo khong 16,000 ti 20,000 ln rung trong mt giy.

3. Thu thanh Digital Audio

thu thanh digital audio, my tnh ca bn o cc tn hiu to ra bi Micro hay Guitar in t, hay bt k ngun no. khong cch cn bng v thi gian (i vi m thanh cht lng CD, iu ny c ngha l 44,100 ln trong mt giy), my tnh s o v lu li mnh ca nhng tn hiu in t t micro, khong t 0 n 65,535. Do vy, d liu Digital audio ch l nhng co s di. My tnh chuyn nhng s ny theo dng tn hiu in t n loa. Nhng chic loa ny rung v to ra m thanh ging nh c thu.

Thun li ln nht ca thu thanh digital audio l cht lng m thanh. Khng nh MIDI, thu thanh digital audio lu gi rt y v tnh cht m thanh v cc phm cht khc ca m thanh chnh xc nh khi biu din. C mt im khng thun li l digital audio l chim rt nhiu ch trn a. thu 1 pht nhc stereo vi cht lng CD, bn cn 10 megabytes a trng.

Trn my tnh, Digital Audio c lu gi di dng wave files (dng sng - c phn m rng l .wav)

C rt nhiu chng trnh c th cho php bn to, pht li, v chnh sa cc file wave ny. Cakewalk Pro Audio cho php bn lm vic vi nhng file ny c hiu qu nht. Ngoi ra c mt s chng trnh khc cng rt tt nh Sound Force, Cool Edit, WavLab

4. Phn bit gia hai dng MIDI v Audio.

Dng file Midi ch lu nhng thng tin v dng lnh ra lnh cho my tnh hay cc phn mm son nhc chi mt s thng ip c th. V d, khi trong file Midi cha mt thng tin l nt C v E, th khi ta m v pht li file ny bng chng trnh Cakewalk, n s ra lnh cho chng trnh chi li hai nt ny bng m thanh ca soundcard hay ca n keyboard. Do vy, khi ta dng my tnh hay keyboard khc nhau th m thanh ca file midi ny cng pht ra khc nhau mc d vn l hai nt C v E. Nu bn i nt C thnh nt G, th khi pht li ta s nghe c nt G v E.

Khc vi Midi, Audio lu gi tt c thng tin c thu. V d, khi bn thu mt on ni ca chnh bn bng micro ri lu li thnh dng .wav th khi mang i u v dng bt c chng trnh no m v pht li th bn u nghe thy ging mnh, m khng c mt s thay i no. Bn c th hnh dung l khi mang 1 a CD i nghe cc my pht khc nhau th bn vn nghe c chnh nhng bi ht .

MIDI l g?

1. nh ngha MIDI:

MIDI l cm t vit tt ca Musical Instrument Digital Interface, c ngha l Giao Din S Ho Nhc C. l mt giao thc truyn thng tin m nhc theo ch thi gian thc.

MIDI c pht trin vo u nhng nm 1980 do mt lin hp cc nh sn xut synthesizer quc t. Vo thi im c hai nhim v c a ra. Th nht: Lm th no mt bn phm c th iu khin cao , rung, bend, Pedal vang... ca bn phm khc. Th hai: Lm th no ng b cc thit b c tempo chng hn nh Sequencer, Drums machines... lm cho chng chy cng tc vi nhau. T cc nh sn xut ln nh Roland, Sequential Circuits v Oberheim nghin cu ra mt giao din chun a nng (Universal Standard Interface) v sau ny tr thnh MIDI.

MIDI l mt dng giao tip. N l mt giao thc my tnh hay ngn ng truyn thng tin gia hai hay nhiu thit b MIDI. Cng nh my tnh hay tt c cc giao tip khc, MIDI bao gm nhng thng ip (messages) gia cc thit b u cui m hiu c chung giao thc. Cng c th hiu n gin, bn l mt thit b khi bn ni chuyn vi ai khc (thit b khc).

Nu mt thit b in t c trang b MIDI, n c th hiu c giao thc MIDI v do vy n c th giao tip vi bt k thit b no c trang b MIDI khc, hay bt k sn phm no t cc hng khc nhau. V d n Keyboard Yamaha c th gi thng ip n mt Drum machine ca hng Roland, bi v tt c cc thit b c trang b giao thc MIDI u tng thch vi nhau.

C nhiu thun li ca nh dng MIDI:

Lng d liu m nhc rt ln c lu gi mt dng rt nh

Cc phn khc nhau ca bn nhc c th c gn cho bt k nhc c no m bn mun.

Dng lu gi m nhc y v cc thng tin nh nt nhc, tc , ha biu c th c hin th v chnh sa d dng khi dng cc chng trnh chp nhc khc nhau.

2. Kt ni MIDI

Thng ip MIDI c gi i t cng MIDI OUT ca mt thit b ti cng MIDI IN ca mt thit b khc qua mt cp ni MIDI (MIDI cable). gi mt thng ip t n keyboard ti my tnh hay bt k thit b no, bn phi dng cp MIDI ni cng MIDI OUT ca n keyboard ny ti cng MIDI IN ca my vi tnh. gi li thng ip MIDI ngc tr li n keyboard, bn cn ni cp MIDI t cng MIDI OUT ca vi tnh vi cng MIDI IN ca n Keyboard.

- OUT Port - Thng ip MIDI c gi ra khi mt thit b qua cng ny. Nu bn chi nt C4 trn bn phm, thng ip "chi nt C4" ny c truyn ra ngoi bng ng OUT Port.

- IN Port - Thng ip MIDI c nhn vo mt thit b u qua cng ny.

- Thru Port - Thng ip MIDI c nhn vo thit b MIDI qua cng IN v c chuyn qua cng Thru ca thit b t c th c chuyn qua mt thit b th ba m thngn tin vn khng thay i. Cng ny c dng khi c mt thit b MIDI gi v nhiu thit b MIDI nhn.

ni my tnh vi keyboard bn cn mt cp ni MIDI mt u l 2 chu cm 5 chn ni vo n, u kia l mt chu 15 chn ni vi sound card qua cng MIDI/Gameport. Hai u 5 chn IN v OUT c ni vi hai u OUT v IN ca Keyboard (IN vo OUT v OUT vo IN)

3 Knh MIDI (MIDI Channel)

MIDI cho php bn gi d liu theo tng ng ring r cng mt lc, mi ng ny l mt knh MIDI (Channel). Mi knh ny c gn mt s nh danh. Nu mt nt c chi trn thit b A, n c gi km mt s nh danh knh MIDI. Nu thit b B c t cng knh vi thit b A, n s p li bng cch chi nt . Nu thit b B c t mt knh khc, n khng nhn c thng ip ny mc d v mt l thuyt c ni bng cp MIDI.

MIDI c 16 knh khc nhau, v chng u c chc nng sau. Mi knh u c th cha tt c cc loi thng ip MIDI nhng chng u c tch bit. Thng ip ca knh 1 khi c gi i khng b nh hng bi cc knh 2, knh 3...

4. General MIDI

Nh ta cp, MIDI cho php ta trao i d liu m nhc gia cc thit b ca cc nh sn xut khc nhau. Nhng thng ip ny khng cha bn thn nt nhc, nhng n cha cc thng ip nh s m sc, nhn phm, nh phm, cao , rung, vang...

Nu s m sc 1 ca mt n keyboard c sn xut bi Yamaha l PIANO, trong khi s m sc 1 ca n Roland l BASS, th d liu c gi i ca n Yamaha l PIANO s vang ln l BASS n Roland. Nu mt n keyboard Yamaha c 16 knh v d liu c gi n n Roland ch c 10 knh, th nhng knh khng c chi s khng vang ln.

Tiu chun cho s m sc, s knh v cc thng s chnh m xc nh m thanh ca bn nhc c thit lp t thit b ngun c a ra bi cc nh sn xut khc nhau c gi l General MIDI

Tiu chun General MIDI cho php d liu m nhc c to ra theo chun ny c th c chi cc thit b MIDI khc nhau m vn gi nguyn c cc s m sc, s mt trng, sc thi, m lng...

5. Standard MIDI Files (SMF)

Standard MIDI Files l tp tin d liu Sequencer MIDI. Standard MIDI Files ban u c dng lm phng tin trao i d liu gia cc thit b sequencer t nhiu nh sn xut khc nhau. Sau n c dng lm nh dng file MIDI chun cho h iu hnh Windows v cc ng dng multimedia.

MIDI files s dng nh dng Chunky (theo tng khoang), tng t nh nh dng ca Electronic Arts -IFF hay nh dng ca Microsoft/IBM - RIFF. Cc tp tin dng ny cha cc khoang khc nhau, mi khoang cha mt s dng d liu m chng trnh c th c c. MIDI File c cu to bi hai loi khoang: Khoang tiu , cha cc thng tin v trt t tracks, phn gii ca thi gian (timing resolution), v khoang tracks cha cc d liu MIDI v cc d liu khc.

MIDI Files c th c mt trong ba nh dng. S nh dng c lu khoang tiu ch ra cc khoang tracks c th hin nh th no. Cc nh dng ny l:

- Format 0: Cc tp tin ny ch cha mt track nhng nhiu knh (multi-channel). nh dng ny c dng thch hp cho vic playback cc ng dng multimedia v kiu nh dng ny c th c c t a nhanh hn cc nh dng nhiu rnh (Multi-track)

- Format 1: Nhng tp tin theo nh dng ny cha nhiu tracks. Track u tin lun cha tt c tempo v thng tin v ho biu, ging cng vi cc dng d liu tng th (global); Cc track cn li cha d liu MIDI. Bi v nh dng Format 1 cho php d liu MIDI chia thnh nhiu knh khc nhau hay nhiu tiu ch khc, nn chng d dng hiu chnh li so vi Format 0.

- Format 2: Nhng tp tin dng ny t dng hn. N c dng cho cc thit b sequencer cho php cc track c chi ring r v lp li (Loop). Ngy nay c cc thit b bng ghi m Digital (Digital-tape-desk) nn chng khng cn thch hp na.

Tm hiu tp tin MIDIXem bai viet bang font ABC1. Thun ng MIDI Cc nhc c in t (eletronic instrument) c th "ni chuyn" c vi nhau t nhng nm 1980. iu c xem nh l cuc cch mng trong m nhc in t. Mt nhc c c th "ni" vi nhc c khc : "Anh hy chi nt trung, ln c 60% ri chi tip nt mi 4 nh mt t, dng ting violon nh !". Nhc c th hai dng nh "hiu" c, v pht ra cc nt nhc theo yu cu.

Gia cc nhc c in t gi y c mt "ngn ng" chung gi l "MIDI", ni chuyn vi nhau. MIDI tuy l mt khi nim mi nhng tr nn rt quen thuc trong lnh vc m nhc in t, n ni ngi ta xem n l mt thut ng m qun rng MIDI l t vit tt ca "Miscical Instrument Digital Interfac" (giao din s vi cc nhc c). Mt cch n gin, MIDI l mt ngn ng gia cc thit b m nhc.

Mc d c nhiu ngn ng khc nhau trn th gii (Vit Nam, Anh, Php...) nhng MIDI ch c mt ngn ng duy nht. Do , MIDI khng ph thuc nh ch to nhc c v ni sn xut. Hn na n dng cho nhiu chng loi nhc c khc nhau; v d mt piano in c th ni vi mt b trng in t, khi nu ta bm mt phm trn piano th b trng s pht ra mt ting trng tng ng.

2. ng i ca tn hiu MIDI Ni chung cc nhc c in t c th "ni chuyn" vi nhau, th phi c ch to c kh nng MIDI. Ta s thy trn nhc c c 2 cng MIDI IN, MIDI OUT (loi nh ngh thng c thm cng MIDI THRU). Mt cuc ni chuyn lun i theo mt chiu t cng MIDI OUT ca nhc c pht n cng MIDI IN ca nhc c nhn thng qua cp MIDI (hnh 2).

Mt si cp MIDI c 5 dy dn (u cm 5 chu). Tn hiu truyn trn cp theo kiu tun t n hng vi tc truyn l 31.250 bit mi giy. Mi byte d liu truyn bt u bng mt bt khi u v mt bit kt thc. Nh vy, truyn mt byte d liu thc cn 10 bit, do tc truyn thc t trn cp MIDI l 3.125 byte d liu mi giy.

D liu truyn trn cp MIDI khng phi l tn hiu m thanh dng analog hay digital, m chnh l "ngn ng MIDI", hay ni chhnh xc hn, l cc thng ip MIDI (MIDI message). Mi thng ip MIDI di t 1 n 3 byte dng iu khin mt chip trong thit b nhn tn hiu MIDI. Cc thit b MIDI c phn loi nh sau (cha c thut ng ting Vit chnh xc, nn chng ti ch tm dch) :

Controller (b iu khin) : l ngun gi i thng ip MIDI. Cc thit b c cng MIDI OUT u l controller. V d : piano in, organ in t (gi chung l MIDI Keyboard Instrument), guitar in, trng in t.... My vi tnh c gn MIDI interfac (MIDI card, MIDI built-in sound card....) cng l mt controller. Synthesizer (b tng hp) : l thit b c cng MIDI IN, c kh nng nhn thng ip MIDI ri tng hp li thnh m thanh analog. Vic tng hp do mt con chip trong thit b m nhn. C 2 cng ngh tng hp ph bin hin nay do 2 hng nhc c lng danh Roland v Yamaha pht trin. Cng ngh ca hng Roland da trn cc m thanh dng sng ly mu (Sampled Waveform). Hng Yamaha dng k thut iu tn (Frequency Modulation - FM). Phn ln cc MIDI-built-in sound card hiu Sound Blaster, Sound Power, Audiowave.... u s dng chip FM ca Yamaha, Synthesizer cn c gi l Sound Module, Sound Generator, Tone Generator. Bn c th tham kho thm cc bi "Multimedia phi chng gp thi", "L trnh tn hiu ca h MPC", "Sound Board vn hnh ra sao ?" trong tp ch New s 1/1994 (s chuyn v Multimedia & MPC).

Sequencer (b phi m) : l thit b c th nhn tn hiu MIDI, lu tr vo b nh trong hoc ngoi, cho php ngi dng thay i ri gi i. y l thit b gip ch rt ln cho cc nhc s phi m, l p dng chnh ca MIDI.

Ni chung, mt thit b MIDI u c c 2 cng MIDI IN v MIDI OUT, nn theo cch phn loi trn, n va l controller, va l synthesizer. Ta dng tn gi controller khi quan tm n chc nng "pht" tn hiu MIDI, dng tn synthesizer khi quan tm chc nng "nhn". Hnh 3 gii thiu s ca mt cy n organ in t c MIDI (MIDI keyboard).

3. Mt h thng m nhc vi tnh. My tnh c v chng lin quan g n m nhc trc khi c MIDI. MIDI l mt giao din gia my tnh vi nhc c in t ch ? Vi tng , nhiu hng nhc c in t ch to cc MIDI card hay MIDI box gn vo my vi tnh ng vai tr giao din gia my tnh v nhc c. Hng Roland l hng tin phong trong lnh vc ny. Apple Macinstosh, Atari Amiga l cc h my tnh u tin giao tip vi nhc c in t. Vi h my IBM, phi ch n s thnh cng ca Microsoft Windows, mi chen chn vo lnh vc m nhc in t. Khi "anh chng" vi tnh bc chn vo m nhc, tim nng ca MIDI tng gp bi : my tnh va l controller, synthesizer, va l sequencer; b nh ngoi ca my tnh (a cng) rt d d cho vic lu tr thng ip MIDI di dng tp tin MIDI, ngi dng d dng "ch bin" thm hoc chen thm cc d liu MIDI khc vo. Ban nhc mt ngi (One man-Band) tr thnh hin thc, ch cn l thuc vo kh nng con ngi : c th va l ngi son nhc, phi m, chi nhc... khng ? Hnh 4 gii thiu mt h thng m nhc vi tnh.

4. Phn tch cc thng ip MIDI. * Khi nim v knh (channel) : Thng ip MIDI truyn trn cp bao gm rt nhiu nhm thng tin khc nhau. C th ch mt phn hay ton b cc thng tin c nhn bn thit b MIDI nhn. thc hin iu , MIDI bao gm 16 knh. Tt c cc loi thng ip MIDI khc nhau c th truyn ring bit trn 16 knh, bn nhn c th chn lc li, ch nhn d liu trn mt s knh no v cc d liu c x l ng thi.

Khi nim v knh MIDI cng ging nh knh trong tivi. i truyn hnh c th pht nhiu chng trnh khc nhau cng mt lc trn nhiu knh khc nhau. ?ng ten ti vi ca bn s nhn c tt c cc knh cng mt lc nhng bn ch chn knh no c chng trnh mun xem thi. iu khc nhau duy nht l synthesizer c th x l ng thi tn hiu trn 16 knh nhn c, trong khi tivi ch mi xem c cng lc chng trnh trn vi knh m thi !

* Thng ip MIDI c chia lm 2 loi : loi thng ip knh (Channel Message) v loi thng ip h thng (System Message). Loi thng ip knh bao gm cc thng ip ch nh hng trn knh ny m khng nh hng trn knh khc. Ngc li, thng ip h thng tc dng trn ton b h thng MIDI ch khng trn tng knh. Trong thng ip h thng cn c mt thng ip dnh ring ca tng nh sn xut (gi l System Exclusive Message) ch c x l trong cc thit b ca nh sn xut . Cc tn hiu ny bt u bng mt s hiu ring (ID Number) khc nhau i vi cc nh sn xut khc nhau. Cc thng ip m thit b nhn khng nhn bit s c b qua.

Cc nh sn xut nhc c in t hng u xy dng c mt tiu chun thng nht gi l General MIDI trong qui c cc loi thng ip chun m thit b c ch to theo chun General MIDI phi tun theo. hiu thng ip knh dng nh th no, ta hy xem xt mt v d. Gi s ta ni mt MIDI-Keyboard vi mt synthesizer. Trn MIDI-Keyboard, ta bm mt phm (nt trung chng hn), cc "s vic" sau xy ra :

[1] Khai bm phm, MIDI-Keyboard gi i thng ip di 3 byte n cng MIDI OUT, vit dng c s 16 (hexadecimal) l 903C40. Thng ip ny gi l "Note On" (chi nt nhc). Byte th nht (90) cho bit thng ip l "Note On", knh tc dng l knh s 0, dng tng qut l 9n trong n thay i t 0 n 15 cho bit s th t ca knh. Byte th hai (3C) cho bit s th t ca nt s chi (key number), thay i t 0 n 127. Byte th ba (40) cho bit tc bm phm (velocity) thay i t 0 n 127, s cng ln th nt pht ra ku cng to. Thng ip di 3 byte ny s gi n synthesizer qua cng MIDI IN ca n, v syntehsizer s "tr li" bng cch pht ra nt theo ng yu cu ! Nt ny s "ku" hoi cho n khi ta nhc ngn tay khi phm.

[2] Khi nhc ngn tay khi phm, MIDI-Keyboard gi i thng ip di 3 byte l 90 3C00. Thng ip ny ging nh thng ip trn, ch khc gi tr ca byte th ba l 00, gi tr velocity bng 0 ny s lm tt vic pht ra nt . Synthesizer khi nhn c thng ip ny, s ngng vic pht ra nt trc knh 0. Do thng ip ny c gi l "Note Off".

Nu synthesizer c kh nng polophony (pht c nhiu nt cng mt lc) th khi ta bm nhiu phm cng lc trn MIDI-Keyboard, nhiu thng ip "Note On" s c gi cng lc n synthesizer. Hnh 5 gii thiu bng qui nh v thng ip knh theo nh chun MIDI 1.0 m bn c th tham kho thm.

Thng ip "Program Change" (Xem hnh 5) rt quan trng, n s yu cu synthesizer pht ra m tit khc nhau, v d : ting piano acoustic, violon, string... Cc thut ng voice, instrument, patch u c ngha l m tit. C nh sn xut "thch" dng t voice trn cc sn phm ca mnh, nhng nh sn xut khc th li dng t patch. Thng ip program change di 2 byte, c dng Cn pp vi n l s th t ca knh (0-15) v pp l s th t ca m tit (0-127). Nh vy c 128 m tit khc nhau. Hip hi cc nh sn xut MIDI (MMA - MIDI Manufactors Association) a ra nh chun General MIDI trong qui c mt synthesizer theo chun General MIDI th phi c b ting theo qui c : ting s 1 l Grand Piano, s 2 l Bright Grand Piano... ting s 128 l Gun Shot. Bn c th tham kho danh sch cc m tit theo chun General MIDI trong bi "MIDI v Multimedia Windows", tp ch New* s 10 & 12/1993.

Mt thng ip MIDI lun bt u bng mt byte trng thi (status byte) tip theo sau l 0,1 hay 2 byte d liu (ngoi tr thng ip System Exclusive). D dng phn bit c byte trng thi v byte d liu. Bit cao lun thit lp l 1 vi byte trng thi v l 0 vi byte d liu. Nh vy t 00 n 7F l byte d liu, 80 n FF l byte trng thi. i vi cc thng ip knh, byte trng thi lun c cha thng tin cho bit knh.

Trn hnh 5, ta thy n trong cc byte trng thi cho bit s th t ca knh (c tng cng 16 knh, 0-15). Ta thy rng mi knh c th pht ra mt m tit khc nhau, do , mt synthesizer c th pht ra ti a 16 ting nhc c khc nhau cng mt lc. Nh th c th lm vic ging nh mt ban nhc tht vy ! Trn hnh 5 ta thy khng c cc thng ip vi Byte trng thi t F0 n FF. Cc thng ip ny thuc loi thng ip h thng (system message) nh trnh by phn trn. Controller thng xuyn gi i thng ip vi byte trng thi FE gi l Active Sensing Message cho bit controller vn cn ang ni vi h thng. Mt thng ip h thng quan trng ni l System Exclusive message c byte trng thi l FO. Thng ip ny c th c hn 2 byte d liu (tt c cc thng ip khc c ti a l 2 byte d liu), v vn tun theo qui c bit cao c thit lp l 0. Thng ip ny thng c nh sn xut dng gi i thng tin nh ngha mt m tit no cho synthesizer, hay xut mt dy d liu c bit no .

5. Tp tin MIDI. Khi my vi tnh i vo lnh vc m nhc in t, vic lu tr cc thng ip MIDI tr nn d dng do dung lng ca b nh ngoi kh d d. Tp tin lu tr thng ip MIDI lc u c dng thc khng thng nht. May mn l Hip hi MIDI (IMA-MIDIA Association) M ra c mt tiu chun thng nht. Macinstosh v Amiga l 2 h my u tin i vo lnh vc m nhc, do tiu chun trn p dng cho h my . Vi h my vi tnh IBM v tng thch, "k n mun", nh phi tun theo chun trn. Macinstosh v Amiga s dng b x l ca Motorola khc vi b x l Intel dng trong h my IBM, do cc phn mm MIDI vit trn h my IBM phi "phin dch" li. B x l Motorola khng ghi byte theo kiu t phi sang tri (right most) nh b x l Intel. Chng hn vi tr s 186A0h, trong khi Intel lu tr l : A0 86 01 00. V vy tin MIDI nh dng theo b x l Motorola nn nu dng debug xem th s thy l : 00 01 86 A0. Nh vy phn mm MIDI trn h my IBM phi x l li d liu c t tp tin MIDI. Vi s ch v trnh t lu tr d liu trn, ta hy xem xt mt on nhc n gin c lu tr nh th no. on nhc bao gm 4 nt, vi 2 khun nhc (hnh 6) pht ting Church Organ. Hnh 7 cho thy ni dung tp tin MIDI xem bng trnh Debug ca DOS.

Tp tin MIDI trong Windowns c vit cho 3 loi synthesizer : Base-level synthesizer : ch pht c 4 knh t 13 n 16 Extended synthesizer : pht c 10 knh t 1 n 10 General MIDI synthesizer : pht 16 knh.

Mt cch tng qut, tp tin MIDI lu tr thng ip MIDI v thng tin v nhp iu khin synthesizer pht li bi nhc. Tp tin MIDI c t chc theo tng nhm d liu; mi nhm bt u bng 4 k t (4 byte) nhn dng v tip theo l 4 byte cho bit s byte ca d liu trong nhm. Ch c 2 loi nhm d liu : header v track. Mi tp tin MIDI lun bt u bng nhm d liu header v tip theo l mt hay nhiu nhm d liu track.

[1] - Nhm d liu header : Bt u bng 4 k t nhn dng: MThd. S byte d liu lun lun l 6. Do , tng s byte ca nhm header l 14.

Hnh 7 cho thy 6 byte d liu ca nhm header l 00 01 00 03 00 F0. Hai byte u cho bit kiu ca tp tin MIDI (c th mang cc tr 0, 1, 2), trong v d ang xt hai byte ny c gi tr 1. Tp tin kiu 0 ch c mt track, kiu 1 c nhiu track, kiu 2 cha c x l trong Windows. Mt bi nhc lu tr vo tp tin MIDI kiu 1 s gip cho vic sa i ni dung d dng, v tin hnh trn tng track. Hai byte tip theo cho bit tng s track, tr s ny y l 3 : tp tin MIDI c 3 track, track th nht cha thng tin v nhp iu, track th nh cha cc thng ip MIDI pht 4 nt trn knh 0 (dnh cho b extended synthesizer), track th ba dng pht ra 4 nt trn knh 12 (dnh cho b base-level synthesizer). Hai byte cui, sau khi x l theo cch ring s cho bit n v x l thi gian.

[2]- Nhm d liu track : Bt u bng 4 k t MTrk tip sau l con s 32 bit (4 byte) cho bit chiu di ca d liu cha trong track. Trong hnh 7, ta thy c 3 track bt u cc offset 0Eh, 29h. 59h. D liu trong nhm gm nhiu track event. Mi track event bt u bng mt tr s delta time (lu tr vi kch c thay i t 1 n 4 byte) theo sau l mt event. Tr s delta time cho bit khong thi gian ngh gia 2 ln x l event (c th bng 0). Event c th l cc thng ip MIDI (dng iu khin trc tip synthesizer) hoc meta-event (l cc ch th hay thng tin gi n phn mm x l tp tin MIDI).

[3] - Delta time : gim kch c tp tin MIDI, delta time c lu tr vi kch c thay i, c chiu di t 1 n 4 byte. Mt s "ph php" c dng y, rt rc ri. Mi byte ca delta time ch s dng 7 bit thp cha s liu. Bit cao cn li c thit lp l 1, tr byte cui. Nu delta time ch di mt byte, bit cao c thit lp l 0. Khi tr s ca delta time nm t 0 n 127, delta time ch di mt byte vi tr thay i t 00 n 7Fh. Nhng nu delta time l 128, cn dng n 2 byte : 81h v 00h. Bit cao ca byte th nht c thip lp l 1, ta kt hp 7 bit cn li ca byte th nht l 7 bit cn li ca byte th nh cho ra tr 80h ng vi tr s thp phn 128.

Ta thm mt v d : delta time = 240 (F0h) c lu tr thnh gi tr g trong tp tin MIDI ? Trc ht, hy vit di dng c s 2 vi 8 bit :

11110000

Sau tch ra thnh 2 nhm, mi nhm 7 bit (thm cc bit 0 vo) :

000001 1110000

a thm vo bit 1 u nhm th nht, bit 0 u nhm th hai :

10000001 01110000

Chuyn sang c s 16, ta c tr 8170h. Nh vy gi tr 240 ca delta time khi lu tr vo tp tin MIDI s chim 2 byte c tr nh trn.

By gi ta th xem gi tr ca delta time l bao nhiu ng vi tr lu trong tp tin MIDI l 86 8D 20h. Trc ht vit li di dng c s 2 :

10000110 10001101 0010000

B cc bit cao trn 3 nhm :

0000110 0001101 010000

Nhm li thnh cc nhm 8 bit :

00000001 10000110 1010000

Chuyn sang c s 16, ta c tr 0186A0h hay 100000.

[4]- Meta-Event : Nh trnh by trn, mi event trong track event c th l thng ip MIDI hay meta-event. Meta-event lun bt u bng 1 byte FFh. Byte th nh cho bit loi meta-event, byte th ba cho bit chiu di ca d liu lin quan. Trong v d ang xt, track th nht di 19 (13h) byte c cha 3 track event. Delta time trong mi track event u mang tr l 0 (cc event trong track ny s xy ra lin tip nhau, khng c thi gian ngh). rng, 3 event trong 3 track event y u thuc loi meta-event.

* Meta-event th nht l : FF 58 04 03 02 18 08. Byte 58h cho bit meta-event ny cha thng tin v vic khai bo nhp ca bi nhc (time signature). Meta-event ny c 4 byte d liu. Hai byte th nht (03h v 02h) cho bit nhp ca bi nhc l (3)/(2)*2 hay 3/4, theo k hiu m nhc th con s cho bit trong mt khun nhc c 3 nt 1/4 (3 nt en). Trn hnh 6, bn thy con s 3/4 ch ? Byte tip theo (18h) cho bit s nhp MIDI c pht ra trong mt nhp ca metronome (metronome l my g nhp gip ngi nh n chi nhc ng nhp, synthesizer c mt b phn to ra nhp nh metronome). Nh vy y, mt nhp metronome c 24 (18h) nhp MIDI. Byte cui cng (08h) cho bit s nt 1/32 (nt mc ba) c trong 24 nhp g MIDI, tr s 08 y qui nh c 24 nhp g MIDI th c 8 nt 1/32 hay 1 nt 1/4 c chi. Kt hp vi thng tin trn, cho bit trong mt nhp g ca metronome c mt nt 1/4 c chi.

* Meta-event th hai l : FF 51 03 07 A1 20. Byte 51h cho bit y l tempo meta-event, cha thng tin cho bit bi nhc c chi nhanh chm nh th no. D liu di 3 byte : 07A120h = 500.000, cho bit mi miligiy c 500.000 nt 14 (gi l nt en) c chi, tng ng vi 120 nt en c chi trong mt pht. Bn hy xem hnh 5 v pha trn khun nhc c ghi k hiu mt nt en = 120. T y, ta thy rng d dng thay i nhp (nhanh hn, chm hn) ca mt bi nhc khi pht ra.

* Meta-event cui cng l :FF 2F 00. Event ny khng c d liu. Mi track event u kt thc bng meta-event ny.

[5] - Thng ip MIDI v vic ghi nh byte trng thi : Track th hai trong hnh 7 cha 40 (28h) byte d liu dng pht ra 4 nt trn synthesizer loi extended. * Track event u tin ( offset 31h) l 00 C0 13. Delta time y bng 0. Event y l thng ip MIDI loi Program Change, gi n knh 0 v yu cu synthesizer s dng ting s 13 pht ra cc nt sau (theo nh chun General MIDI, y l ting church Organ). * Track event th nh l 00 B0 07 7 (delta time cng bng 0) cha thng ip MIDI kiu Control Change (B0h) thit lp controller s 7 (07h) gi tr ln nht l 127 (7F). Controller ny chnh synthesizer pht ra nt trn knh 0 vi to ln nht. * By gi c th ra lnh cho synthesizer pht nt nhc c ri ? Track event th ba : 00 90 C 40 thc hin iu , v n cha thng ip "Note On" (90h) trn knh 0, nt pht ra l trung (key number = 3Ch) vi velocity l 40h. Vic pht nt nhc ny c thc hin ngay sau khi controller s 7 c thit lp v delta time bng 0. *Track event k tip l : 81 70 40 40. Hai byte u c trng cho delta time. Hai byte sau ra lnh pht nt mi trn nt trung (key number = 40h) vi velocity l 40h. Ta thy hnh nh thng ip "Note On" ny thiu byte trng thi 90h (theo dng chung ca thng ip "Note On" : 0 kk vv) ? Ngi ta s dng k thut "tham kho byte trng thi ca thng ip MIDI trc " gi l "running status": trong qu trnh lu tr vo tp tin MIDI, khi 2 byte trng thi ca 2 thng ip MIDI lin tip ging nhau, th thng ip MIDI sau khng cn c byte trng thi.

* Hai track event tip theo l : 81 70 43 40 81 70 48 40. Phn tch tng t, ta xc nh rng 2 track event ny s ra lnh cho synthesizer pht ra tip nt sol v nt (cch nt trung mt qung tm). Nh vy 4 nt ca bi nhc n y c pht ra . Tuy nhin 4 nt ny s "ku" mi nu khng 4 c thng ip "Note Off" tip theo c gi ti tt vic pht ra 4 nt . * Bn track event tip theo l : 85 50 3C 00, 00 40 00, 00 43 00, 00 48 00 s lm cho synthesizer tt ht bn nt pht ra. * Track cui cng l 00 FF 2F 00, ta thy cha meta-event FF 2F 00 bo hiu cho bit ht track th hai.

Track th ba tng t track th hai, ch khc cc ch nh knh trong cc byte trng thi ca thng ip MIDI l 12 (Ch) thay v l 0.

By gi, bn c th to th tp tin MIDI bng dng trnh Debug ca DOS. Sau dng chng trnh Media Player trong nhm Accessories ca Windows chi th. D nhin my ca bn phi c Sound card.

Kt lun n y chng ti xin kt thc loi bi "Chi nhc trn Windows". Mong rng cc bn s hng th khi tm hiu v MIDI. y mi ch l mt kin thc ban u. Vi h thng m nhc vi tnh, vic son nhc trn my vi tnh tr thnh hin thc. Ta c th in n (bng cc phn mm Edior nh : Finale, Music Time, Encore for Windows...), phi m (bng cc phn mm Sequencer nh : Cakewalk, MIDIsoft for Windows...)t hc nhc, nghe nhc, lm karaoke vi tnh... MIDI l cc thng ip iu khin synthesizer pht nhc, do ta c th d dng bin i tn hiu ny trc khi n c gi n synthesizer. V vy, cc phn mm MIDI lun cho php ta c th can thip vo bn nhc mt cch d dng, chng hn : ln/xung ging (transposer), cho chm li hay nhanh ln, nghe i nghe li, xem nt nhc ngay trn mn hnh, tt bt mt knh no ...