Det fanns en tid före MIDI. Den klassiska synten som vi var
vana att se den på 60-talet var ett stort skåp som närmast liknade en
telefonväxel. Modulerna i skåpet var byggstenar som vi idag känner igen från
syntar, men också från mixerbord och t o m radioapparater: oscillatorer
(tongeneratorer), filter, envelopegeneratorer, mixrar o s v. Dessa moduler
producerade eller tog emot elektriska spänningar i form av ljud eller
styrsignaler. De anslöts till varandra med patchkablar.
För att man ska ha någon nytta av t ex en oscillator krävs
att den ska kunna ge ifrån sig en vågform, d v s att den ska "pipa".
Men man måste också kunna ändra dess tonhöjd. Först och främst med en ratt på
panelen, men också utifrån på något sätt, så att man t ex kan koppla till en
klaviatur och få olika tonhöjd beroende på vilken tangent man spelar.
Oscillatorn måste alltså ha en styringång.
Det vanligaste sätt var att skicka en likspänning och låta
antalet Volt reglera tonhöjden. Ju högre spänning desto högre
tonhöjd. Detta kallas spänningsstyrning. Skickar man ljudet från
oscillatorn till en förstärkare kan man också reglera volymen. Är förstärkaren
spänningsstyrd kan man använda en yttre spänning för att reglera volymen, o s
v.
Bob Moog var ett hett namn på sextiotalet. En av de
uppfinningar som lite orättmätigt tillskrivs honom är just användandet av
spännings-styrning i synthesizers.
Det är viktigt att lägga märke till att de styrspänningarna
endast används att påverka någon enstaka funktion i varje modul, t ex tonhöjden
i en oscillator eller "gränsfrekvensen" i ett filter. De har alltså
inte något direkt med ljudet att göra. Ljudet skapas och formas av
oscillatorer, filter och förstärkare. Spänningarna används för att styra
dessa moduler, och har ingen som helst kontakt med ljudet i sig.
Och det är i stora drag detsamma med MIDI. Det används
endast för att tala om hur en synt ska uppföra sig, och dubblerar i många fall
saker som man själv kan göra på synten. MIDI kan "spela" toner,
och det är egentligen samma sak som när du själv trycker ned en tangent. MIDI
kan lägga på vibrato
och böja tonhöjden (PITCH-BEND),
och gör det på samma sätt som när du använder hjulen på synten.
Men drömmen om det stora syntsystemet fanns där. Det gick
att köpa lådor som genererade olika spänningar med rytmiska tidsintervaller.
Koppla en sådan till oscillatorns ingång, och ser man på, en så kallad
sequencer. En sådan kunde repetera sexton, eller kanske ännu fler (!) toner i en följd.
I slutet av sjuttiotalet var tiden mogen för den
programmerbara synthesizern, Prophet-5, Oberheim OB-X, Roland Jupiter-8 o s v.
Mikroprocessorerna hade blivit så pass kraftfulla och billiga att det var
praktiskt möjligt att bygga instrument där de spelade en central roll. Inte
för att på något sätt skapa ljud, utan endast för att övervaka klaviatur och
knappar, omvandla information från dessa (nu spelar han en tangent, nu vrider
han på en ratt...) till data för att sedan återvandla
till spänning och till sist styra en eller flera ljudmoduler i synten. Moduler
som byggde på precis samma gamla analoga system som Mini-moogen och tidigare
instrument.
I en sådan här synt existerar alltså alla inställningar som
data någonstans i datorns minne, vilket ger möjlighet att spara undan dessa
någonstans för senare bruk, d v s att göra synten vad vi idag kallar för programmerbar.
Tryck på en enda knapp och du får fram en mängd inställningar du gjort en minut
eller ett år tidigare.
Återigen hade olika tillverkare olika system vad gällde
deras "digital-interface". En Oberheim synt fungerade bara ihop med
en Oberheim sequencer o s v, även om funktionen hos de apparater som kom från
varje tillverkare ofta liknade dagens MIDI-system väldigt mycket. Dags alltså för en standard. Historien förtäljer
inte exakt hur det hela gick till, men Sequential och Roland stod för
lejonparten av arbetet med att dra upp den specifikation som vi idag känner som
MIDI. Och i en sån här text måste man väl nämna (för biljonte gången) att
bokstäverna står för Musical Instrument Digital Interface. 1982 kopplades för
första gången två syntar utrustade med MIDI samman. Det skedde på en mässa i
USA, och de två lyckliga var en Sequential Prophet-600 och en Roland Jupiter-6.
På de kort som följer får du en grundläggande beskrivning av
MIDI och anknutna begrepp. Du kan också hoppa direkt till det kort som
intresserar dig.
FELSÖKNING
Du hör fler ljud än du tänkt dig.
Sänder du och tar emot på rätt midikanaler?
Är synten Multitimbral?
Kanske flera ljud är ställda att ta emot på samma MIDI-kanal
utan att du märkt det.
Ett ljud spelas upp med konstiga dubbleringar eller flangereffekter.
Har du spelat in samma sak flera gånger? (det är lätt
hänt när man spelar i en loop).
Det du ska spela in i sequencern hörs med konstiga dubbleringar eller
flanger effekter.
Står synten inte i Local-Off?
Är thru
aktiverat i sequencern fast det inte ska vara det?
En synt hörs inte medan du ska spela in i sequencern.
Är thru
inte aktiverat i sequencern? Skickar du till rätt utgång på sequencern (om
den har flera)? Kommer data ut på fel midikanal
när det går igenom sequencern? Är spåret mutat? Har du aktiverat några datafilter
i sequencern? Tar du emot på rätt midikanal
i synten? Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter? Har du skickat MIDIvolym
med värdet 0 till synten?
En synt spelar svagt eller starkt.
Har du skickat MIDIvolym
med ett lågt/högt värde till synten?
En synt spelar transponerat eller falskt.
Har du aktiverat transponering i sequencern? Har du
avslutat en inspelning utan att återställa PITCH-BEND
till utgångsläge? Har du editerat så att PITCH-BEND
data påverkats?
En synt har vibrato på hela tiden.
Har du avslutat en inspelning utan att återställa Modulation
till utgångsläge? Har du editerat så att modulations-data
påverkats?
Det går inte att styra volymen på en synt.
Kan synten verkligen ta emot MIDIvolym?
Sänder du verkligen MIDIvolym
till den? Har du stängt av mottagandet av alla Controllers
i synten? Har du stängt av (eller inte slagit på) mottagandet av MIDIvolym
i synten?
Dynamiken (anslaget) är konstigt.
Har du aktiverat en funktion i sequencern som påverkar Velocity?
Har du valt en underlig velocity-kurva på synten eller på klaviaturen du
spelar in med?
Ljuden klipps av.
Har rösterna i synten tagit slut? Är det en Roland synt?
I sådana fall kan det tänkas att den sänder All-Notes-Off
varje gång du lyfter alla fingrarna från tangentbordet. Detta kan påverka
inspelningen i sequencern om du använder samma ljud på flera spår. Ta bort
inspelade All Notes Off meddelanden.
Vissa toner låter inte.
Har rösterna tagit slut i synten? Har synten split
keyboard? Har sequencern en splitfunktion som delar upp tonerna över
klaviaturen? Har sequencern eller synten en funktion som påverkar (tar bort
eller byter MIDIkanal på) toner med vissa anslag?
En synt eller effektenhet reagerar inte på programbyten.
Sänder du verkligen PROGRAM-CHANGE
till den överhuvudtaget? Sänder du Program Change på rätt MIDIkanal? Är
enheten inställd att reagera på Program Change ?
På den MIDIkanalen? Sänder du ett högre Program Change nummer än apparaten
reagerar på? Filtreras Program Change bort av sequencern? Vid inspelning?
Vid uppspelning?
En eller flera toner hänger kvar.
Sänder du under Running-Status
till en gammal synt? Har du editerat bort någon Note-Off?
En synt tar inte emot System Exclusive meddelanden.
Sänder du verkligen ut SYSTEM-EXCLUSIVE
till den? Är synten inställd att reagera på System Exclusive? Står den i
rätt läge för att reagera på System Exclusive? Är den inställd på rätt midikanal
eller så kallat Device Number?
Du trycker på PLAY eller RECORD men sequencern startar inte.
Står den i External-Sync
läge?
En sequencer eller trummaskin startar inte när du skickar synk till den.
Måste du kanske trycka på PLAY först? Sänder du MIDIklocka/MIDI-Time-Code
till den? Är den inställd att reagera på MIDIklocka
eller MIDI-Time-Code
? Står den i External-Sync
läge? Sitter sladdarna som de ska? Använder du en mergebox
eller midiväxel
att köra synk och annan MIDIdata igenom? Klarar den MIDIklocka och/eller
MIDI Time Code?
En sequencer eller trummaskin tappar synk mot band.
Är nivån från synksignalen på bandet för svag? För
stark? Är bandspelaren rätt trimmad? Har du använt brusreducering på
synkspåret? (det får man inte göra!) Använder du en mergebox
eller midiväxel
att köra synk och annan MIDIdata igenom? Klarar den MIDIklocka och/eller
MIDI Time Code?
En sequencer eller trummaskin följer inte med när du spolar band eller
annan trummaskin/sequencer.
Kan den läsa och reagera på Song-Position-Pointers?
En effektenhet reagerar inte på Controller meddelanden.
Sänder du verkligen Controller
meddelanden till den överhuvudtaget? Sänder du dem på rätt midikanal?
Är enheten inställd att reagera på Controller meddelanden? På den
MIDIkanalen? Har du verkligen kopplat den parameter du vill ändra till rätt
Controller nummer? Filtreras Controllermeddelanden bort av sequencern? Vid
inspelning? Vid uppspelning?
En trummaskin spelar inte en trumma eller spelar, men fel trumljud.
Har du det trumljudet kopplat till rätt notnummer?
Är ljudet inställt att ta emot på rätt midikanal?
På de följande korten finns datat i MIDIspecifikationen
visad i tabeller. Här finns också några extra tabeller som kan vara
användbara i vissa situationer. Dessa kort heter:
SAMMANFATTNING-AV-MIDIMEDDELANDEN
CONTROLLER-TABELL
MIDI-Mode-Tabell
PROGRAM-CHANGE-TABELL
BANK-SELECT-TABELL
|
|
HISTORIA - FÖRE
MIDI
Det fanns en tid före MIDI. Den klassiska synten som vi
var vana att se den på 60-talet var ett stort skåp som närmast liknade en
telefonväxel. Modulerna i skåpet var byggstenar som vi idag känner igen
från syntar, men också från mixerbord och t o m radioapparater: oscillatorer
(tongeneratorer), filter, envelopegeneratorer, mixrar o s v. Dessa moduler
producerade eller tog emot elektriska spänningar i form av ljud eller
styrsignaler. De anslöts till varandra med patchkablar.
STYRNING
För att man ska ha någon nytta av t ex en oscillator
krävs att den ska kunna ge ifrån sig en vågform, d v s att den ska
"pipa". Men man måste också kunna ändra dess tonhöjd. Först och
främst med en ratt på panelen, men också utifrån på något sätt, så att man
t ex kan koppla till en klaviatur och få olika tonhöjd beroende på vilken
tangent man spelar. Oscillatorn måste alltså ha en styringång.
Det vanligaste sätt var att skicka en likspänning och
låta antalet Volt reglera tonhöjden. Ju högre spänning desto högre tonhöjd.
Detta kallas spänningsstyrning. Skickar man ljudet från oscillatorn till en
förstärkare kan man också reglera volymen. Är förstärkaren spänningsstyrd
kan man använda en yttre spänning för att reglera volymen, o s v.
Bob Moog var ett hett namn på sextiotalet. En av de
uppfinningar som lite orättmätigt tillskrivs honom är just användandet av
spännings-styrning i synthesizers.
Det är viktigt att lägga märke till att de
styrspänningarna endast används att påverka någon enstaka funktion i varje
modul, t ex tonhöjden i en oscillator eller "gränsfrekvensen" i
ett filter. De har alltså inte något direkt med ljudet att göra. Ljudet
skapas och formas av oscillatorer, filter och förstärkare. Spänningarna
används för att styra dessa moduler, och har ingen som helst
kontakt med ljudet i sig.
MIDIS PRINCIP
Och det är i stora drag detsamma med MIDI. Det används
endast för att tala om hur en synt ska uppföra sig, och dubblerar i många
fall saker som man själv kan göra på synten. MIDI kan "spela" toner,
och det är egentligen samma sak som när du själv trycker ned en tangent.
MIDI kan lägga på vibrato
och böja tonhöjden (PITCH-BEND),
och gör det på samma sätt som när du använder hjulen på synten.
MIDI är alltså ett system för styrning av elektronisk
musikutrustning, och har inget med ljud i sig att göra. Ett annat
exempel på skillnaderna mellan digitalt ljud och digital styrning är att
det går åt tiotusentals data-ord för att skapa en sekund digitalt
ljud, medan det endast går åt sex ynka data-ord för att få MIDI
att spela en komplett ton på en synt. En ton som kan vara hur lång som
helst.
Ett sista exempel på MIDIs "dumhet". Det
används ju bl a för att utifrån "trycka ned tangenter", men har
ingen uppfattning om vad "det spelar på", en DX-7, en D-50 eller
en Steinway-flygel med MIDI. Men faktum är att detta inte är någon nackdel,
tvärtom är det tur att MIDI är så enkelt, annars hade det inte blivit den
standard det är idag.
Tillbaks till forntiden. På äldre synthesizers (före
MIDI) fanns ofta en eller flera uttag, märkta CV (Control Voltage =
styrspänning) och Gate eller Trig. Med lite tur och mycket tålamod kunde
man koppla ihop två instrument och använda den ena klaviaturen för att
spela på båda. Men olika tillverkare använde olika system så det var bara
vissa apparater som passade ihop. Dessutom stämde instrumenten sällan
perfekt i tonhöjd. Och även om det fungerade så var resultaten för det
mesta inte så imponerade att det rättfärdigade arbetsinsatsen.
Men drömmen om det stora syntsystemet fanns där. Det
gick att köpa lådor som genererade olika spänningar med rytmiska
tidsintervaller. Koppla en sådan till oscillatorns ingång, och ser man på,
en så kallad sequencer. En sådan kunde repetera sexton, eller kanske ännu
fler (!) toner i en följd.
MIKROPROCESSORN
I slutet av sjuttiotalet var tiden mogen för den programmerbara
synthesizern, Prophet-5, Oberheim OB-X, Roland Jupiter-8 o s v.
Mikroprocessorerna hade blivit så pass kraftfulla och billiga att det var
praktiskt möjligt att bygga instrument där de spelade en central roll. Inte
för att på något sätt skapa ljud, utan endast för att övervaka klaviatur
och knappar, omvandla information från dessa (nu spelar han en tangent, nu
vrider han på en ratt...) till data för att sedan
återvandla till spänning och till sist styra en eller flera ljudmoduler i
synten. Moduler som byggde på precis samma gamla analoga system som
Mini-moogen och tidigare instrument.
I en sådan här synt existerar alltså alla inställningar
som data någonstans i datorns minne, vilket ger möjlighet att spara undan
dessa någonstans för senare bruk, d v s att göra synten vad vi idag kallar
för programmerbar. Tryck på en enda knapp och du får fram en mängd
inställningar du gjort en minut eller ett år tidigare.
Eftersom datorn i ett sånt här instrument också
övervakar klaviatur, och i princip "spelar" på själva synten,
ligger det nära till hands att tänka sig att de datasignaler som skapas när
man spelar också skickas vidare till annan utrustning. Eller att man kan ta
emot data någonstans ifrån, för att utifrån spela på instrumentet. Vad man
önskar sig är ett par sladdar som så att säga går direkt till/från
mikroprocessorn. Man pratar om att synten har ett INTERFACE,
på svenska egentligen gränssnitt,
mot omvärlden. En kontakt där man kan ansluta annan datorutrustning för att
sända och ta emot digital information. I det här fallet för att styra en
synt.
OLIKA INTERFACE
Återigen hade olika tillverkare olika system vad gällde
deras "digital-interface". En Oberheim synt fungerade bara ihop
med en Oberheim sequencer o s v, även om funktionen hos de apparater som
kom från varje tillverkare ofta liknade dagens MIDI-system väldigt mycket.
Dags alltså för en standard. Historien förtäljer inte exakt hur det hela
gick till, men Sequential och Roland stod för lejonparten av arbetet med
att dra upp den specifikation som vi idag känner som MIDI. Och i en sån här
text måste man väl nämna (för biljonte gången) att bokstäverna står för
Musical Instrument Digital Interface. 1982 kopplades för första gången två
syntar utrustade med MIDI samman. Det skedde på en mässa i USA, och de två
lyckliga var en Sequential Prophet-600 och en Roland Jupiter-6.
På de kort som följer får du en grundläggande
beskrivning av MIDI och anknutna begrepp. Du kan också hoppa direkt till
det kort som intresserar dig.
vad-är-midi?
MIDI-Maskinvara-och-programvara
midi-in
midi-out
midi-thru
MIDI-Seriell-överföring
midikanaler
multitimbralitet
|
|
MIDI, MASKINVARA
OCH PROGRAMVARA
MIDI består av två delar, maskinvara och programvara.
MASKINVARA
Den första delen är en standard för maskinvaran
som försäkrar att anslutningen mellan två MIDI-enheter inte ger några
elektriska problem. All MIDI-utrustning använder samma typ av kontakter och
elektriska standard.
Det finns inte en uppkoppling som du kan göra, eller
något som du kan sända via MIDI, som kan skada något av dina instrument.
(Det värsta som kan hända är att dina förprogrammerade ljud försvinner, ha
alltid dom dokumenterade).
MIDIsignaler går bara åt ett håll i varje sladd. Därför
finns det tre typer av MIDI anslutningar, midi-in, midi-out
och midi-thru.
Mer om maskinvaran finns på korten markerade ovan och på
kortet maskinvara.
PROGRAMVARA
Den andra delen är programvaran, MIDI-språket
eller "meddelandena". Dessa är koder precis som Morsealfabetet,
ASCII-tecknen eller någon annan internationell uppsättning av strikt
definierade koder. Denna uppsättning MIDI-meddelanden används för att
överföra musikaliska händelser, som ett anslag på en tangent eller rörelser
på ett hjul för tonböjning.
MIDI var från början tänkt för att man skulle koppla
ihop ett par tre syntar och få dubblerade ljud. Sedan dess har konceptet
växt något enormt och innefattar allt från dragspel till teaterljus. Men de
flesta som jobbar med MIDI använder det för sequencerarbete, och det är det
denna elektronisk bok handlar om...
Se även korten SAMMANFATTNING-AV-MIDIMEDDELANDEN
och MIDIteori--översikt.
|
|
MIDI, SERIELL
ÖVERFÖRING
I MIDI sker ingenting samtidigt. Alla meddelanden kommer
efter varandra på en lång rad, ofta toner och andra typer av MIDImeddelande
huller om buller. All information kommer alltså i en lång serie och man
säger därför att MIDI bygger på seriell överföring.
Det finns alltså ingenting som heter ackord när det
gäller MIDI. Alla toner kommer efter varandra, det är bara tiderna emellan
dem som gör att man uppfattar det som ett ackord. Kommer t ex tonerna C, E
och G mycket tätt så uppfattar örat det som ett C-dur ackord. Kommer de med
längre tidsintervall låter de som ett brutet ackord och med långt
tidsintervall emellan tycker man att de är en del av en melodi.
I en MIDIsladd kommer alltså alltid alla meddelanden i
en lång följd. Läs mer om effekterna av detta på kortet TIMING.
|
|
MIDI IN
Den typ av anslutning som används för att en apparat ska
kunna ta emot MIDI data utifrån är MIDI In.
En apparat kan ha hur många MIDI In som helst. Å andra
sidan finns det MIDIapparater utan In-anslutning. En gitarr till MIDI
omvandlare kan t ex sakna MIDI In.
Se även midi-out,
midi-thru
och maskinvara.
|
|
MIDI OUT
En apparat som själv kan "hitta på" MIDI-data
sänder ut detta via MIDI Out. Det kan vara någonting man spelat på
apparatens klaviatur eller strängar, det kan var synk-information eller nåt
annat och det kan naturligtvis vara flera typer av meddelanden blandat.
En apparat kan ha hur många MIDI-utgångar som helst, men
måste inte ha någon MIDIutgång alls. Vissa ljudmoduler
och effektenheter
saknar t ex MIDI Out.
Man skiljer på separata utgångar, d v s sådana där det
kommer ut olika data på varje utgång, och parallella utgångar som alla
sänder ut samma data. En klaviatur (en synt)
har för det mesta bara en MIDI Out, medan en avancerad sequencer
eller dator
kan ha t ex åtta separata MIDIutgångar.
Se även midi-in, midi-thru,
maskinvara,
SEQUENCERSPÅR-OCH-MIDIKANALER
och INTERFACE.
|
|
MIDI THRU
Den tredje typen av MIDI anslutning heter MIDI Thru och
är en typ av utgång (som midi-out),
men skickar inte ut data som apparaten själv producerat, utan ekar endast
sådant som kommit in via MIDI In. Detta är till för att man ska kunna
seriekoppla många maskiner. Den första tar emot på MIDI In, skickar vidare
samma information via sitt MIDI Thru, som är kopplat till nästa apparats midi-in. Den
i sin tur ekar vidare via MIDI Thru o s v.
En synt,
en effekt
en dator
eller liknade har normalt sett bara en Thru-anslutning.
Det som är viktigt att förstå i det här är att det som
kommer ut på MIDI Thru inte innehåller några MIDI-data som en apparat själv
har skapat, utan bara precis är en karbonkopia på det som kommit in via
MIDI In.
Om man t ex vill använda två syntar för att spela på en
tredje räcker det inte att att seriekoppla dem som beskrivet ovan, det är
bara den första som det är någon mening att spela på. Den andra synten står
förgäves och sänder ut sin klaviaturdata via sitt MIDI Out, utan att något
är anslutet till den.
Passa er för att använda för många Thru-jackar i serie
efter varandra. Det finns möjlighet att tappa data på det här sättet. En
tumregel säger att inte mer än tre, fyra apparater ska anslutas via MIDI
thru.
Ett bättre alternativ till att använda MIDI Thru är att
skaffa en thru-box,
eller t o m en komplett midiväxel,
kanske programmerbar och med merge
och andra processorfunktioner.
INGA FÖRDRÖJNINGAR
Observera att Thrukoppling via varje apparats MIDI Thru
inte ger några fördröjningar, det är en gammal seglivad myt! Några mycket
tidiga apparater hade det problemet, men de syns sällan till nuförtiden.
Problemet med att använda maskiners Thrujackar istället för en Thrubox
ligger i att man kan tappa signalen delvis eller helt och hållet, i slutet
av kedjan. Således: antingen fungerar det med Thru eller så fungerar det
inte alls. Fördröjningar blir det inte.
Se även midi-in, midi-out
och maskinvara.
|
|
MIDIKANALER
MIDIkanaler är ett system för att separera
MIDIinformationen, så att man i ett nätverk av sammankopplad MIDIutrustning
kan skicka olika information till olika enheter.
När man arbetar med en sequencer
är vitsen att ens syntar ska kunna producera trummor, bas, komp, solo o s
v. Man gör inspelningar av MIDIdata i sequencern, som sedan spelar på
syntarna. Hur ska man kunna skilja ut så att en viss stämma spelas av en
viss synt och så att bara trummorna går till trummaskinen? Man skulle kunna
dra en MIDI sladd från sequencern till varje instrument, men det blir snart
opraktiskt. (Se sequenceruppkoppling
för hur man verkligen kopplar) Istället kodar man själva MIDIdatat, med
hjälp av MIDIkanaler.
Det första man måste förstå för att begripa MIDIkanaler
är att det inte finns någonting som heter ackord eller samtidiga händelser
när det gäller MIDI. Se kortet MIDI-Seriell-överföring.
ATT SÄNDA PÅ EN VISS KANAL
I varje MIDImeddelande finns ett kanalnummer
inbakat. Exakt hur detta är uppbyggt beskrivs i MIDIKANALERNA-I-DETALJ.
Om du ställer in en synt så att den "sänder på MIDIkanal 3"
vilket du säkert kan göra genom tryckningar på panelen, så kommer alla
toner som sänds ut (och flera andra typer av MIDImeddelanden med för den
delen) att innehålla kanalnumret 3.
Från midi-out
på en sequencer
som spelar upp musik från flera spår kommer en ström av noter med ett
sammelsurium av MIDIkanaler. Dessa går in i alla syntar i systemet som är
sammankopplade med sequencern, via en thru-box
eller midi-thru
(se även sequenceruppkoppling).
ATT TA EMOT PÅ EN VISS KANAL
Om alla toner passerar in i alla syntar, varför spelar
de då inte alla tonerna, pianot, basen stråkarna om vart annat? Jo därför
att de är inställda på varsin MIDIkanal (eller flera MIDIkanaler var om de
är multitimbrala).
Om du ställer in din DX-7 på MIDIkanal 5 betyder det att den kollar alla
toner som kommer in, men bara spelar de som har MIDIkanalnumret 5 inbakat i
sig. Den struntar i alla andra. På så sätt kan man ställa in varje synt
(eller varje ljud om synten är multitimbral) på en MIDIkanal och på så sätt
separera basstämman från kompet och trummorna.
Men, slutsatsen av detta är alltså att i en MIDIsladd
kan man skicka toner på alla sexton MIDIkanalerna samtidigt.
|
|
MULTITIMBRALA
SYNTAR I SEQUENCERUPPKOPPLINGAR
Om man har en Multitimbral
synt som sitt huvudinstrument i en sequenceruppkoppling gäller det att
hålla tungan rätt i mun.
Man ställer först sin synt i sitt Multitimbrala läge
(MULTI, COMBI eller vad det kan heta). Därefter väljer man ut ett antal
ljud och ser till att de tar emot på varsin MIDIkanal. Sedan ska
synten "naturligtvis" stå i Local-Off.
Klaviaturen används för att mata sequencern
med notdata,
PITCH-BEND,
Aftertouch
o s v. Sequencern skickar sedan ut denna information till ljuddelen in synten.
Klaviaturen kan sända på en eller kanske två midikanaler
(om den har split keyboard, kortet MASTER-KEYBOARD)
men ljuddelen kanske kan ta emot på åtta eller fler MIDIkanaler.
ATT VÄLJA LJUD FÖR SPÅRET
Hur avgör man då vilket ljud i den multitimbrala synten
som ett spår ska spela? Det beror på om sequencern arbetar med rechannelizing
eller inte. Se också kortet SEQUENCERSPÅR-OCH-MIDIKANALER.
Om sequencern har rechannelizing så ställer man alltså
uppspelnings-MIDIkanal i sequencern, när man väljer spår, och då spelar det
ingen roll vilken/vilka MIDIkanaler klaviaturen i synten sänder på. Detta
är det vanliga med avancerade sequencerprogram på persondatorer.
Eller så har sequencern inte rechannelizing. Då väljer
man ljud före inspelning genom att se till att klaviaturen sänder på den
MIDIkanal som det ljud man vill ha tar emot på. För varje pålägg med ett
nytt ljud måste man se till att klaviaturen sänder på rätt MIDIkanal, för
det ljudet. Detta är det vanliga med t ex Rolands sequencers.
Det viktiga är alltså att förstå att klaviaturen i
synten sänder på en MIDIkanal medan varje ljud i synten tar emot
på varsin MIDIkanal, och att dessa två saker går att ställa var
för sig.
Se även korten UPPKOPPLING-2--EN-TYPISK-UPPSTÄLLNING-MED-SEQUENCER,
Local-Off,
multitimbralitet,
och MIDI-MODER.
|
|
MULTITIMBRALITET
När man säger att en synt eller sampler är multitimbral
menar man att den kan spela flera olika ljud på en gång, t ex bas, piano
och trumset.
I en synt har man för det mesta en en mängd färdiga
ljud. De kallas Program, Patches, Sounds, Timbres eller något liknande. Låt
oss kalla det Program. Ett Program består av inställningar för
oscillatorer, samples, filter, förstärkare, osv
och utgör en enskild klang.
Om en synt är multitimbral kan man låta flera sådana
Program ta emot på varsin MIDI-kanal.
Det brukar gå till så att man gör ett så kallat Combi, Performance, Bank
eller liknande (låt oss kalla det Combi) där varje Program kan ställas in
så att det tar emot på en viss MIDI-kanal. Det är så man får separat piano,
bas, trummor o s v ur en och samma synt. Men man måste kunna ställa andra
parametrar för varje Program i Combit, t ex volym, omfång på klaviaturen,
vilken utgång det går till och - som det brukar vara - en oändlig mängd
"obegripliga" MIDIparametrar. Ofta kan man göra i ordning flera
Combi-uppsättningar och spara dessa i syntens minne.
Dessutom brukar det finns en del inställningar för hela
Combit, t ex om det ska reagera på PROGRAM-CHANGE.
Resultatet av att sätta en synt i Combiläge (även kallat
Multi Mode) är att den uppför sig precis som om den var flera syntar, som
var och en tar emot på en midikanal
(och som var och en står i MIDI-Mode
3). Är två Program inställda på samma MIDIkanal får man dubbla ljud när man
skickar toner på den kanalen.
Du kan läsa mer om exakt hur den multitimbrala synten
fungerar i en sequenceruppkoppling om du dubbelklickar på MULTITIMBRALA-SYNTAR-I-SEQUENCERUPPKOPPLINGAR.
INTE BARA NOTER
Vi kan alltså skicka noter till Programmen individuellt,
vilket faktiskt är bevis för att de separat kan ta emot alla
MIDImeddelanden som kan skickas på en viss kanal. Man kan skicka PITCH-BEND
till var och en, så att tonerna som spelas med ett ljud böjs utan att andra
ljud påverkas. Man kan skicka PROGRAM-CHANGE
så att ett av ljuden byts ut mot ett annat. man kan skicka Controllers
till var och en så att man lägger på vibrato
eller påverkar volymen
eller panoreringen
(mixar), o s v.
För det mesta finns det förutom en MIDIkanal för varje
Program i en Combi också en global-MIDIkanal
på vilken man kan skicka t ex Program Change för att byta hela Combit till
en annan.
|
|
SEQUENCERSPÅR
OCH MIDIKANALER
De flesta Sequencers
arbetar med en bandspelaranalogi. Det finns inspelningsknapp,
uppspelningsknapp, Fast Forward och Rewind. Det brukar också finnas spår,
för att man ska kunna organisera sin inspelningar, lägga hihat på ett spår,
baskagge och virvel på ett annat, bas på ett tredje o s v.
VAD HAR MAN SPÅR TILL?
Spår är alltså bara till för att man ska kunna
organisera sina data på ett vettigt sätt. Man väljer inspelning på ett spår
och trycker på Record. Man aktiverar kanske en Solofunktion så att man kan
lyssna på ett spår i taget.
MÅNGA MIDIKANALER PÅ ETT SPÅR?
MIDIkanaler är någonting annat än spår. På ett spår kan
nämligen ligga musik på en, två eller alla sexton MIDIkanalerna, det spelar
ingen roll. Det beror som beskrivet på kortet midikanaler
på att varje enskilt MIDImeddelande som finns lagrat i sequencern
innehåller ett kanalnummer. De ligger där i en lång rad i sequencerns minne
och väntar på uppspelning. När de sedan spelas upp går de ut till alla
enheter i systemet, vars MIDIkanalinställning avgör om de kommer att höras
eller inte.
SPÅR OCH UTGÅNGAR
Det är också vanligt om sequencern har flera MIDI Out,
att man kan skicka ett spår till en viss utgång. På så sätt kan man få en
sequencer att arbeta på flera än sexton MIDIkanaler. Man kan ju ha upp till
sexton MIDIkanaler per utgång. Se även kortet INTERFACE.
EN MIDIKANAL PER SPÅR
Det är trots förklaringen om flera MIDIkanaler på ett
spår ovan, vanligt att varje spår i en sequencer sänder på en, och bara en,
viss MIDIkanal, bara för att det blir praktiskt och överskådligt på så vis.
Vad betyder då det? Jo om du spelar in musik på spår 3 i
din sequencer och ställer in spåret så att det sänder på MIDIkanal 7 så
kommer datorn att i uppspelningsögonblicket att byta ut
MIDIkanalnumret i all MIDImeddelanden som ligger på det spåret, så att det
blir 7 oavsett vad det var innan. Det här är mycket praktiskt och gör att
man lätt kan prova att skicka ett spår till olika syntar utan att ändra
sina MIDIkanalinställningar på själva syntarna. Man ändrar istället i
sequencern vilken kanal spåret sänder på, kanske kan man t o m gör det
medan musiken spelar.
RECHANNELIZING ELLER INTE?
Detta koncept kallas rechannelizing
(omkanalisering) och beskrivs också i avsnittet MULTITIMBRALA-SYNTAR-I-SEQUENCERUPPKOPPLINGAR.
Alla sequencers jobbar inte på detta sätt, utan spelar
alltid upp MIDIdata som det verkligen spelades in. Exempel är Rolands
MC-sequencers.Det betyder att man redan från
början måste se till att sända in på rätt MIDIkanal, genom att ställa in
den på sin synt (eller vad man nu spelar in med). Många avancerade
sequencers låter en arbeta på båda sätten genom att man kan ställa spåret
på att antingen sända på en viss MIDIkanal eller på en sjuttonde
inställning kallad "No", "Original", "True"
eller något likande. Med denna inställning ändras alltså inga MIDIkanaler
vid uppspelning från spåret, utan man får ut exakt de data man spelade in.
Rechannelizing vid uppspelning ska inte förväxlas med
editering av MIDIkanaler, som är en funktion med vilken man permanent
ändrar MIDIkanalvärden i sina inspelningar.
Det är också vanligt numera att sequencers har flera
MIDI Out (se kortet midi-out).Då kan man ofta ställa in till vilken utgång och på
vilken MIDIkanal ett visst spår ska sända. På så sätt har man kunna bryta
vallen med sexton MIDI-kanaler och får istället sexton MIDI-kanaler per
utgång.
|
|
TIMING
Det har pratats mycket under åren om fördröjningsproblem
i MIDI- överföringen. Låt oss se på en del fakta. Se även kortet thru.
Att sända ett enkelt NOTE-ON
meddelande via MIDI tar ungefär en millisekund (en tusendels sekund). Detta
kan först och främst jämföras med den tid som det tar innan meddelandet
egentligen sänds från det att du trycker på en tangent på MIDI-klaviaturen,
en siffra som varierar mellan olika instrument. I bästa fall är det runt en
millisekund (ms) och i värsta fall upp till 25 ms eller mer (med 5 till 10
ms som typiska värden). Lägg till detta reaktionstiden på synten som tar
emot meddelandet, dvs den tid det tar från det att
NOTE ON meddelandet kommer in på instrumentets midi-in och
tills dess att det låter. Denna tid kan vara lika lång (eller kort) som
klaviaturens reaktionstid.
Om man lägger samman dessa tider (upp till 50
millisekunder eller mer i värsta fall) så förstår man att MIDIs
överföringshastighet (1 millisekund för en ton) är det minsta problemet i
kedjan.
Det blir lite mer kritiskt när du spelar ackord, kanske
till och med flera ackord på flera MIDI-kanaler samtidigt. I början av en
takt kanske du har hihat, bastrumma, slagverk, en baston, fyra pianotoner,
brass, syntljud och så vidare, alla inlagda för att låta precis samtidigt
på första slaget. Detta kan bli något i stil med tio till tjugo noter om
musiken är riktigt tät. Eftersom det inte finns något som heter "samtidiga-händelser"
i MIDI (alla noter sänds efter varann, även i ett ackord) så finns det en
tidsskillnad på så många millisekunder som det finns noter mellan den
första och den sista (i vårt exempel mellan 10 och 20 ms). Detta är
fortfarande mindre än den direkta responsen från flera klaviaturer som har
accepterats av den stora allmänheten. Kom ihåg att ljudets hastighet i luft
är ca 3 millisekunder per meter. Det värsta fallet med MIDI-fördröjningarna
i vårt exempel motsvarar därför att ha medmusikanternas ljudkällor
utspridda på ett avstånd av ungefär 6 meter.
Så även om MIDI självt normalt inte är problemet, så kan
det hända att du måste kompensera för varje instruments interna fördröjning
när du spelar upp från en sequencer.
Se kortet FÖRDRÖJNING-AV-SPÅR.
Slagverksspelare
har rätten att kräva snabbare reaktionstider än klaviaturspelare, eftersom
de är mest känsliga för dessa saker. Det beror helt enkelt på den fysiska
skillnaden på att slå på en trumma och att slå an en pianotangent.
Sequencers
ska definitivt ge noter prioritet över andra MIDI- meddelanden för att
alltid hålla känslan i musiken intakt. Musikern kan hjälpa till med detta
genom att inte spela in oanvända MIDI-meddelanden som tangenttryck (Aftertouch).
Om du fortfarande upplever problem så kanske du vill köpa extra maskinvara
som ansluts direkt till din dator via en av dess snabbare utgångar och via
den ger dig flera separata midi-out
anslutningar. Blanda inte ihop detta med vanliga MIDI thru-boxar
som inte alls påverkar tidshållningen.
|
|
ACTIVE SENSING
Detta meddelande är till för att försäkra sig om att
sladdarna sitter i. Låt oss säga att du kopplat ihop två syntar. Den ena
sänder Active Sensing, en fast kod, till den andra, många gånger per
sekund. Om den mottagande synten upptäcker att dessa Active Sensing
meddelande plötsligt slutar komma kan den gissa att sladden har ramlat ur,
eller att något annat fatalt skett med den sändande synten. Då kan den
stänga av alla toner som för tillfället låter.
Det här är praktiskt i en live situation, men ganska
överflödigt när man arbetar med sequencer.
De flesta sequencers gör inget vettigt av Active Sensing, och spelar
absolut inte in den.
|
|
SYSTEM REAL TIME
MESSAGES
Dessa meddelanden har med Timing och liknande att göra.
Ingen av dem bär med sig några värden, utan är bara fasta koder för vissa
specifika ändamål.
11111000
Timing-Clock 11111001 Undefined 11111010 Start 11111011 Continue 11111100 Stop 11111101 Undefined 11111110 Active Sensing
11111111 System Reset{\fs18 }
|
|
ATARI ST/TT
Detta är den i Europa mest populära musikdatorn, av tre
skäl: den är billig, den har inbyggt MIDI och det finns en stor mängd
program och andra tillbehör att välja på. Cirka 65 av all musikhantering i
Sverige sker på denna dator. Å andra sidan är situationen i USA den omvända
där ST:n faktiskt t o m kan vara svår att få tag
på.
INTERFACE
Det finns flera extrainterface att få tag på till Atari
ST, från olika tillverkare. Dessa förser datorn med extra MIDI in och out
och i vissa fall även TIDKODsläsning
och skrivning (se kortet INTERFACE).
MULTITASKING
Det finns möjlighet att köra flera musik\-program samtidigt
(multitasking)
på en och samma Atari ST, men eftersom det finns flera olika system för
detta (i stort sett ett för varje stort programvaruhus) så kommer det att
dröja innan denna hantering är praktiskt genom\-förbar med alla program som
finns, om den någonsin blir det...
Ett varningens ord för er som använder eller tänker
använda Atari. Tramiel och pojkarna bestämde sig för att två kontakter var
allt man hade råd med, så Atari ST saknar midi-thru...
trodde ni! För att spara pengar tog man det dåliga beslutet att använda de
två lediga stiften på midi-out-kontakten
som MIDI Thru. Ett absolut aja-baja om man tittar i MIDI-specifikationen.
Dessutom har flera slarviga sladdtillverkare sålt MIDI-kablar där pinnar
varit byglade, bara för att det är lättare att löda så. Om man kombinerar
produkter från dessa slarvpellar får man en hårdvarubryggad MIDI
Thru-koppling som ställer till en massa problem. Kolla sladdarna innan du
köper!
Uppföljaren till ST:n heter TT,
men denna är ännu (när detta skrivs) ett osäkert kort, bara ett
programvaruhus har lovat att de ska göra nya program eller anpassa gamla
till denna modell.
|
|
BANK SELECT
En ganska ny kod i MIDI-standarden heter Bank Select och
är till för att råda bot på problem med PROGRAM-CHANGE.
De flesta maskiner har på ett eller annat sätt delat upp sina program i
banker, så det här meddelandet används alltså precis som program change,
fast för att välja en bank. Efter det kan man med vanligt program change
välja ett program ur banken. Det finns en tabell-för-Bank-Select
på ett annat kort där den exakta koden visas, för er som bryr er om det,
men det räcker långt att veta att man använt två stycken tidigare
ospecificerade controllernummmer för att kunna sätta ihop Banknummer mellan
0 och 16384.
Vad ska man med så många banker till? Om vi ser på
samplehantering t ex, finns det redan i dag CD-ROM skivor med hundratals
banker med ljud, och andra optiska lagringsmedia lovar ännu högre kapacitet
i framtiden. Så Bank Select kan komma väl till pass för att välja bland ett
stort antal ljudbanker med t ex ljudeffekter.
Men Bank Select dök upp i Augusti 1990, så maskiner producerade
före detta datum kan inte gärna ha funktionen implementerad (=inbyggd i
programvaran).
|
|
BANK SELECT
TABELL
Hexadecimalt Binärt
Bn 1011nnnn Cont. Controller Status Byte
00 00000000 Bank Select MSB
vv 0vvvvvvv Data Value MSB (endast 0-127)
Bn 1011nnnn Cont. Controller Status Byte
20 00100000 Bank Select LSB
vv 0vvvvvvv Data Value LSB (endast 0-127)
n/nnnn=MIDIkanalen vv/vvvvvvv=värdet (se nedan)
MSB- och LSB-värdena formar tillsammans banknumret
enligt följande (hexadecimalt)
MSB LSB
=== ===
00 00
Bank1
00 7F
Bank 128
01 00
Bank 129
01 01
Bank 130
7F 7F
Bank 16384
|
|
CHANNEL MODE
MEDDELANDEN
Controllers 121 till 127 är mycket speciella, och kallas
för CHANNEL-MODE-MESSAGES,
därför att de bland annat används för att försätta en synt i något av de
fyra MIDI-moderna.
De används sällan, så när som på två stycken. All Notes Off (123) är väl
den allra viktigaste, eftersom den är till för att stänga av alla toner som
för tillfället "hängt sig" på grund av uteblivna Note-Off
meddelanden. Om din synt eller MIDI-växel
har en panikfunktion, så bör den bland annat innebära att All Notes Off
sänds ut på alla MIDI-kanaler. Reset all Controllers (121) återställer alla
hjul och pedaler till ett tänkt nolläge.
På ett speciellt kort finns en tabell-över-alla-Controllers.
|
|
CHANNEL MODE
MESSAGES
I denna grupp återfinns de sista sju controllernumren,
som används till mycket speciella ändamål. Flera av dem fungerar dessutom
som All-Notes-Off.
Cntrllerstatus Cntrllernummer Värde & kanalnummer
1011nnnn 0ccccccc 0vvvvvvv
ccccccc = 121 Reset All Controllers
ccccccc = 122: Local
Control On/Off
ccccccc = 123: All Notes
Off
ccccccc = 124: Omni Mode
Off (All Notes Off)
ccccccc = 125: Omni Mode
On (All Notes Off)
ccccccc = 126: Mono Mode
On (Poly Mode Off)
(All Notes Off)
ccccccc = 127: Poly Mode
On (Mono Mode Off)
(All Notes Off)
|
|
CHANNEL PRESSURE
Channel Pressure är tryckkänslighet som är gemensam för
all tangenterna på en hel klaviatur. Ej att förväxla med POLYPHONIC-KEY-PRESSURE,
eller Velocity.
De flesta moderna klaviaturer är tryckkänsliga. Det
betyder att de kan känna av tryck på tangenterna efter att de kommit ned i
botten. För det mesta är tryckkänsligheten inte avläst per tangent, vilket
betyder att det inte spelar någon roll om man trycker på en tangent eller
alla, det är hela klaviaturen som läses av. Därför ger den här typen av
tryckkänslighet också samma mängd påverkan på alla toner som klingar, inte
olika på var och en.
På "MIDIska" kallas det meddelande som används
för detta officiellt för Channel Pressure, men ibland benämns det som
Aftertouch, som bara Pressure eller t o m Monofon Pressure. Channel
Pressure används ofta för att lägga på mer vibrato vid tryck, men man kan
använda det till volymändringar, filtervariationer (ljusare eller mörkare
klang), volym, styrning av hastigheten på vibratot, eller varför inte för
tonhöjdsändringar, som en form av pitch bend.
Observera att man ofta kan ställa in om en synt ska
skicka och/eller ta emot Channel Pressure. Om den är multitimbral kan man
ofta göra en sådan mottagarinställning per Program och en sändarinställning
separat för klaviaturen.
Återigen, MIDI har ingen uppfattning om vad man gör av
siffrorna, det bara förmedlar det faktum att man tryckt på tangenterna
efter att de kommit i botten. Ofta kan man på en synt välja vad Channel
Pressure ska användas till, och kopplar man det till volym kan det vara ett
sätt att via MIDI åstadkomma datamix
på äldre syntar som inte klarar av det mer moderna sättet med controllermeddelanden.
Se även kortet POLYPHONIC-KEY-PRESSURE.
|
|
CHANNEL VOICE
MESSAGES
I denna grupp återfinns de meddelanden som man kan
skicka på en viss midikanal.
De består av en Status-Byte
som dels innehåller koden för meddelandet och dessutom MIDIkanalnumret.
Därefter följer en eller två databyte.
Statusbyte Databyte 1 Databyte 2 Kommentar
1000nnnn
0kkkkkkk 0vvvvvvv Note-Off,
k=tangentnummer
v= Note Off velocity
1001nnnn 0kkkkkkk 0vvvvvvv NOTE-ON,
k=tangentnummer
v= Note On velocity
vvvvvvv=0 = Note Off
1010nnnn 0kkkkkkk 0vvvvvvv Poly-Key-Pressure
(Aftertouch)
k=tangentnummer.
v=
mängd pressure.
1011nnnn 0ccccccc 0vvvvvvv Control-Change,
c =
controllernummer
# (0-121).
v=controllervärde
c=122 till 127:
Reserverat för
Channel-Mode-medd.
1100nnnn 0ppppppp PROGRAM-CHANGE
p=prognummer (0-127)
1101nnnn 0vvvvvvv CHANNEL-PRESSURE
(After-Touch)
v=pressure value
1110nnnn 0vvvvvvv 0vvvvvvv PITCH-BEND
v= LSB/MSB
NOTERINGAR:
nnnn= midikanal 1-16
|
|
CONTROLLER
TABELL
Decimalt nummer
Definition
0 BANK-SELECT MSB
1 Modulation wheel or lever
2 Breath Controller
3 Undefined
4 Foot Controller
5 Portamento Time
6 Data Entry MSB
7 Main-Volume (MIDIvolym)
8 Balance
9 Undefined
10 Pan
11 Expression controller
12 Control 1 (effekttyp)
13 Control 2 (effekttyp)
14-15 Undefined
16-19 General Purpose Controllers 1-4
20-31 Undefined
32 Bank Select LSB
33-63 LSB for Controllers 1-31
64
Damper pedal (sustain)
65 Portamento
66 Sostenuto
67 Soft pedal
68
Undefined
69 Hold 2
70-79 Undefined
80-83 General Purpose Controllers 5-8
84-90 Undefined
91 Effect 1
92 Effect 2 (Tremolo Depth)
93 Effect 3 (Chorus depth)
94
Effect 4 (Celeste depth)
95 Effect 5 (Phaser depth)
96 Data increment
97 Data decrement
98 Non registered Parameter Number
LSB
99 Non registered Parameter Number
MSB
100 Registered Parameter Number
LSB
101 Registered
Parameter Number MSB
102-120 Undefined
121-127 Channel-Mode
messages (se det kortet)
Några punkter att förklara om listan med controllers.
Controller 33-63 är märkta som "LSB for Values
1-31". Det var tänkt för att situationer när man inte tyckte att det
dög med 127 värden på en inställning (det gör det nästan alltid), så då
skulle man koppla ihop två meddelanden till ett långt, extra noggrant.
Används nästan aldrig.
Controller Switches funkar oftast så att 0 är
"av" och 127 är "på", men det har rått lite förvirring
tidigare om vad som ska gälla.
Det finns alltså "bara" 127 olika controllernummer,
och man har ansett att det inte räcker. Controllers 98 till 101 är
resultatet av ett försök att utöka antalet genom att på ett krångligt sätt
förlänga nummerserien. Det har inte slagit igenom något vidare, och det är
synd, för "Non-registered Parameter Numbers" är enligt
MIDI-standarden tänkta för att man ska kunna påverka vilken parameter som
helst i vilken apparat som helst via MIDI. Få tillverkare har lyssnat och
lagt in detta.
|
|
CONTROLLERS
Controllers är ett samlingsnamn för de flesta reglage
som man kan använda för att påverka sina ljud. (PITCH-BEND
är dock inte en controller).
NUMRERAS
Det finns ett flertal saker man kan trycka på, dra i,
blåsa i o s v på en synthesizer. Och alla dessa vill man förstås
kommunicera via MIDI, för att kunna fjärrstyra syntar och spela in sina
rörelser i en sequencer.
För att alla dessa olika "reglage" ska kunna klämmas in i ett
koncept så har man helt enkelt valt att kalla dem alla för controllers.
Hur skiljer man dem då åt?
Genom att numrera dem.
Man skickar först ett meddelande som talar att det är
fråga om just en controller, och på vilken midikanal
den kommer. Sedan följer man upp med en siffra som talar om vilken
controller det är fråga om, och till sist dess värde, d v s vilket läge den
just nu har. Ett exempel: 176, 001, 127 (i vanliga decimala siffror)
betyder: controller på MIDIkanal 1, modulationshjul, fullt utslag. Rör man
på ett modulationshjul så sänds en ström controllermeddelanden ut, inte
bara ett enstaka, och vart och ett motsvarar hjulets position i ett visst
ögonblick. På ett annat kort finns en tabell-över-alla-Controllers.
Observera att man ofta kan ställa in om en synt ska
skicka och/eller ta emot Controllers, ofta olika controllernummer var för
sig. Om synten är multitimbral kan man ofta göra denna
mottagarinställningen per Program och sändarinställningen separat för
reglagen på panelen.
OLIKA VÄL DEFINIERADE
Några av controllernumren har en väldefinierad funktion,
t ex just modulationshjulet (01). Vissa är tänkta för kontinuerliga
ändringar och kallas då för continuous controllers, medan andra är
omkopplare (av/på) och kallas controller switches. Exempel på controllers
tänkta för omkoppling är Damper Pedal (sustain) och Data
Increment/Decrement. Vissa nummer är inte alls definierade (Undefined) och
åter andra får användas till lite vad som helst (General Purpose
Controllers).
Se även korten: Controllers-på-en-typisk-synt,
och Channel-Mode-meddelanden.
|
|
DATORER OCH MIDI
- ÖVERSIKT
VAD HAR MAN DATORN TILL?
Den vanligaste användningen för en dator i
MIDIsammanhang är som sequencer.
Men det finns fler områden där datorn kan komma in. Genom att skicka och ta
emot SYSTEM-EXCLUSIVE
kan man via datorn ändra en apparats inställningar, t ex "ratta
in" ett nytt ljud. Man kan också begära in en komplett karta över en
viss maskins inställningar så att dessa kan sparas tillsammans med musiken
på diskett, för senare bruk med samma apparat eller en annan av samma
modell. Datorprogram för dessa funktioner kallas editorer
(visar inställningar på skärmen) och biblioteksprogram,
(hanterar arkivering och katalogisering av ljud).Dessutom
kan datorn användas för mixning.
MULTITASKING
Det blir mer och mer en önskan att kunna flera program
samtidigt med sin sequencer, på samma dator så att inspelning, mixning och
ljudskapande blir en integrerad process. Om en dator kan köra flera program
samtidigt har den något som kallas för multitasking. \tx9620
NOTER
Musik som visas som noter på skärmen går förstås att
skriva ut på skri\-vare. Men eftersom noter är ett komplicerat och
icke-absolut språk så krävs speciella program för den som vill skapa riktiga
notbilder per maskin. Notutskrift på dator är ett område behäftat med sina
alldeles egna problem.
DATORN SOM LJUDKÄLLA
Observera än en gång att persondatorn för det mesta
endast använts för MIDIstyrning av utrustning, den har sällan haft någon
del i själva ljudet. Detta håller dock långsamt på att ändras i och med att
samplers och andra digitala ljudsystem långsamt blir en integrerad del av
själva datorn, genom instickskort och "lådor" som man kopplar
till.
På de följande korten kan du läsa om följande ämnen som
rör datorer: INTERFACE
DATORMÄRKEN
ATARI-ST/TT
APPLE-MACINTOSH
COMMODORE-AMIGA
MS-DOS-DATORER-(PC)
MIDI-FILER
|
|
ETT
NOTMEDDELANDE I DETALJ
Vad händer egentligen när man trycker ned en tangent på
sin synt? Syntens interna mikroprocessor läser av klaviaturen, så den vet
att en tangent trycktes ned, den vet också vilken tangent det var och hur
hårt det skedde (eller egentligen: hur snabbt). Denna information omvandlar
synten till MIDI och skickar ut via midi-out
utan att ha en aning om det finns någon mottagare i andra ändan. Det
datapaket som den skickar ut ser ut så här:
Byte 1: 1001kkkk Byte 2: 0ttttttt Byte 3: 0vvvvvvv
Krångligt? Det du ser är alltså tre databyte (uttalas
data-bajt), ordnade som ettor och nollor. Bokstäverna betyder bara att vi
inte fyllt i alla siffror eftersom vi inte ännu sagt något om t ex vilken MIDI-kanal
eller tangent
det ska vara, men vi ska strax byta ut bokstäverna mot siffror.
Varje byte är alltså skriven som åtta
ettor/nollor, d v s att den kan representera ett tal mellan 0 (00000000)
och 255 (11111111).
STATUS BYTE
Den första halvan av den första byten (1001) är helt
enkelt den fasta koden för "påbörja ton" (NOTE-ON),
och det är inget man behöver förstå, det är bara något som MIDI-gurusen
bestämt, andra MIDIhändelser har andra koder. Den andra halvan av den
första byten (skriven som kkkk ovan) kan vara litet vad som helst. Genom
olika kombinationer kan dessa fyra bitar nämligen representera ett tal
mellan 1 och 16, MIDI-kanalen.
Bytes som börjar med 1 innehåller alltid en specifik
MIDIkod och kallas Status Bytes. Ofta innehåller de också ett
MIDIkanalnummer.
DATA BYTE 1
Den andra byten börjar alltid med 0, därför att den är
ett värde (återigen inget att förstå, det bara är så). De följande sju
bitarna (t:na) kan vara vilka siffror som helst,
och utgör ett tal mellan 0 och 127, som betyder vilken tangent det
var som trycktes ned (observera tangent, inte tonhöjd).
Den C-tangent som ligger mitt på en vanlig fem oktavers klaviatur har
nummer 60, C#:et ovanför denna har nummer 61, D:et
därefter har nummer 62 o s v. Men, ingen klaviatur som vi har sett har 127
tangenter, och de flesta syntar reagerar heller inte på MIDI-meddelanden
som innehåller de allra lägsta och högsta tangentnumren (kanske kan de
komma till pass någon gång för jordbävningssimulation eller
delfinkommunikation?).
DATA BYTE 2
Den tredje byten börjar också med 0 och följs
av ett värde mellan 0 och 127, som motsvarar anslagsstyrkan i
tangenttrycket, på engelska Velocity.
Detta värde används av mottagarsynten för att bestämma t ex hur stark tonen
ska bli eller vilken klang den ska ha, så att ljudet kan bli olika beroende
på hur hårt man spelar.
Värdeord börjar alltid med 0 och kallas Data bytes.
Det var väl inte så mycket? Dessa tre byte är allt som
krävs för att starta en ton på en mottagarsynt. Medan tangenten är nere
sänds ingenting. Note On koden slår på tonen och den låter sedan tills den
stängs av med ett annat meddelande kallat Note Off. Detta ser precis ut som
Note On, det är bara den första koden som är 1000 istället för 1001.
Velocity värdet som ingår i detta kallas då Release-Velocity.
Nu kommer det allra viktigaste: När man trycker ned
tangenten sänds denna kod ut, men det säger egentligen ingenting om vad man
får höra! Du trycker ned ett C, men mottagarsynten kanske är inställd så
att den transponerar alla toner ett helt tonsteg uppåt, så den ton du hör
är ett D! Du trycker ned tangenten så snabbt du kan, men mottagarsynten
kanske inte är inställd att låta ljudet variera med anslaget, så
velocityvärdet är egentligen ointressant. Med andra ord: MIDI sänder bara
styrkoder som talar om vad du gjort med en klaviatur, ett modulationshjul,
en dataregel, en fotpedal eller liknande, MIDI säger egentligen
ingenting om exakt vilket musikaliskt resultat detta ska få.
Hoppa gärna direkt till MIDIKANALERNA-I-DETALJ.
|
|
FELSÖKNING
På detta kort finns en rad möjliga problem som kan dyka
upp i arbete med sequencers. Efter varje följer en kort förklaring och ett
eller flera fetstilshopp som gör att du kan söka efter detaljerna på
respektive kort.
Synten du spelar på låter inte.
Är strömmen på? Är volymen uppdragen? Har du trampat på
någon volympedal? Är den rätt uppkopplad och är den övriga ljudutrustningen
riktig? Står synten i Local-Off?
Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter? Har du skickat MIDIvolym
med värdet 0 till synten?
En av av ljudmodulerna låter inte.
Är strömmen på? Är volymen uppdragen? Är den rätt
uppkopplad och är den övriga ljudutrustningen riktig? Sänder du på rätt midikanal?
Är den inställd att ta emot på rätt midikanal?
Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter? Har du skickat MIDIvolym
med värdet 0 till den?
Inget blir inspelat i sequencern, fast den startar som den ska.
Kommer det ut MIDIdata från det du spelar på? Filtrerar
du bort någon typ av MIDIdata i sequencern? Är just den ingången på
sequencern aktiverad? (om den har flera) Har du kopplat rätt (midi-out
till midi-in).
Inget låter när du spelar upp från sequencern.
Kommer det ut MIDIdata från sequencern? Skickar du till
rätt utgång på sequencern (om den har flera)? Är alla spår mutade (solo
funktionen aktiverad)?
En viss synt låter inte när du spelar upp från sequencern.
Är spåret
du sänder på mutat? Sänder du på rätt midikanal?
Skickar du till rätt utgång på sequencern (om den har flera)? Tar du emot
på rätt midikanal
i synten? Har du aktiverat några datafilter
i sequencern? Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter? Har du skickat MIDIvolym
med värdet 0 till den?
Ett visst spår i sequencern hörs inte.
Se ovan
En synt spelar med fel ljud.
Sänder du och tar emot på rätt midikanaler?
Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter?
Du hör fler ljud än du tänkt dig.
Sänder du och tar emot på rätt midikanaler?
Är synten Multitimbral?
Kanske flera ljud är ställda att ta emot på samma MIDI-kanal
utan att du märkt det.
Ett ljud spelas upp med konstiga dubbleringar eller flangereffekter.
Har du spelat in samma sak flera gånger? (det är lätt
hänt när man spelar i en loop).
Det du ska spela in i sequencern hörs med konstiga dubbleringar eller
flanger effekter.
Står synten inte i Local-Off?
Är thru
aktiverat i sequencern fast det inte ska vara det?
En synt hörs inte medan du ska spela in i sequencern.
Är thru
inte aktiverat i sequencern? Skickar du till rätt utgång på sequencern (om
den har flera)? Kommer data ut på fel midikanal
när det går igenom sequencern? Är spåret mutat? Har du aktiverat några datafilter
i sequencern? Tar du emot på rätt midikanal
i synten? Har du valt ett program (kanske oavsiktligt via PROGRAM-CHANGE)
som inte låter? Har du skickat MIDIvolym
med värdet 0 till synten?
En synt spelar svagt eller starkt.
Har du skickat MIDIvolym
med ett lågt/högt värde till synten?
En synt spelar transponerat eller falskt.
Har du aktiverat transponering i sequencern? Har du
avslutat en inspelning utan att återställa PITCH-BEND
till utgångsläge? Har du editerat så att PITCH-BEND
data påverkats?
En synt har vibrato på hela tiden.
Har du avslutat en inspelning utan att återställa Modulation
till utgångsläge? Har du editerat så att modulations-data
påverkats?
Det går inte att styra volymen på en synt.
Kan synten verkligen ta emot MIDIvolym?
Sänder du verkligen MIDIvolym
till den? Har du stängt av mottagandet av alla Controllers
i synten? Har du stängt av (eller inte slagit på) mottagandet av MIDIvolym
i synten?
Dynamiken (anslaget) är konstigt.
Har du aktiverat en funktion i sequencern som påverkar Velocity?
Har du valt en underlig velocity-kurva på synten eller på klaviaturen du
spelar in med?
Ljuden klipps av.
Har rösterna i synten tagit slut? Är det en Roland synt?
I sådana fall kan det tänkas att den sänder All-Notes-Off
varje gång du lyfter alla fingrarna från tangentbordet. Detta kan påverka
inspelningen i sequencern om du använder samma ljud på flera spår. Ta bort
inspelade All Notes Off meddelanden.
Vissa toner låter inte.
Har rösterna tagit slut i synten? Har synten split
keyboard? Har sequencern en splitfunktion som delar upp tonerna över
klaviaturen? Har sequencern eller synten en funktion som påverkar (tar bort
eller byter MIDIkanal på) toner med vissa anslag?
En synt eller effektenhet reagerar inte på programbyten.
Sänder du verkligen PROGRAM-CHANGE
till den överhuvudtaget? Sänder du Program Change på rätt MIDIkanal? Är
enheten inställd att reagera på Program Change ?
På den MIDIkanalen? Sänder du ett högre Program Change nummer än apparaten
reagerar på? Filtreras Program Change bort av sequencern? Vid inspelning?
Vid uppspelning?
En eller flera toner hänger kvar.
Sänder du under Running-Status
till en gammal synt? Har du editerat bort någon Note-Off?
En synt tar inte emot System Exclusive meddelanden.
Sänder du verkligen ut SYSTEM-EXCLUSIVE
till den? Är synten inställd att reagera på System Exclusive? Står den i
rätt läge för att reagera på System Exclusive? Är den inställd på rätt midikanal
eller så kallat Device Number?
Du trycker på PLAY eller RECORD men sequencern startar inte.
Står den i External-Sync
läge?
En sequencer eller trummaskin startar inte när du skickar synk till
den.
Måste du kanske trycka på PLAY först? Sänder du MIDIklocka/MIDI-Time-Code
till den? Är den inställd att reagera på MIDIklocka
eller MIDI-Time-Code
? Står den i External-Sync
läge? Sitter sladdarna som de ska? Använder du en mergebox
eller midiväxel
att köra synk och annan MIDIdata igenom? Klarar den MIDIklocka och/eller
MIDI Time Code?
En sequencer eller trummaskin tappar synk mot band.
Är nivån från synksignalen på bandet för svag? För
stark? Är bandspelaren rätt trimmad? Har du använt brusreducering på
synkspåret? (det får man inte göra!) Använder du en mergebox
eller midiväxel
att köra synk och annan MIDIdata igenom? Klarar den MIDIklocka och/eller
MIDI Time Code?
En sequencer eller trummaskin följer inte med när du spolar band eller
annan trummaskin/sequencer.
Kan den läsa och reagera på Song-Position-Pointers?
En effektenhet reagerar inte på Controller meddelanden.
Sänder du verkligen Controller
meddelanden till den överhuvudtaget? Sänder du dem på rätt midikanal?
Är enheten inställd att reagera på Controller meddelanden? På den
MIDIkanalen? Har du verkligen kopplat den parameter du vill ändra till rätt
Controller nummer? Filtreras Controllermeddelanden bort av sequencern? Vid
inspelning? Vid uppspelning?
En trummaskin spelar inte en trumma eller spelar, men fel trumljud.
Har du det trumljudet kopplat till rätt notnummer?
Är ljudet inställt att ta emot på rätt midikanal?
På de följande korten finns datat i MIDIspecifikationen
visad i tabeller. Här finns också några extra tabeller som kan vara
användbara i vissa situationer. Dessa kort heter:
SAMMANFATTNING-AV-MIDIMEDDELANDEN
CONTROLLER-TABELL
MIDI-Mode-Tabell
PROGRAM-CHANGE-TABELL
BANK-SELECT-TABELL
|
|
INTERFACE
\tx9620 För att en dator ska kunna ta emot och sända
MIDI krävs att den har ett MIDI interface. Atari ST och Yamaha C1 har det
inbyggt, till andra datorer måste man köpa det löst.
Ett MIDIinterface är alltså i sin enklaste variant en
rent elektrisk historia som ser till att MIDIdata kommer fram till
mikroprocessorn. Ett simpelt sådant kostar hundralappar och har bara en midi-in och
en midi-ut.
Ett sådant är Apples eget till Macintoshdatorerna.
Ett interface till en MS-DOS-DATOR
(IBM PC eller kompatibel) har tidigare varit dyrare eftersom det
"buffrar" MIDIdata, d v s avlastar datorn en del av själva
MIDImottagandet och sändandet. Nu för tiden finns det dock andra typer av
interface till MS-DOS datorer. Atari ST har inbyggt MIDI
Interface (inte helt standardiserat!, se kortet ATARI-ST/TT)
men man kan sätta på mer avancerade varianter dessutom om man vill.
INTERFACE MED FLERA UTGÅNGAR
Vadå mer avancerat?
Jo, en sequencer kan ha flera MIDI In och ut, som var och
en är skild från den andra. Man kallar ofta dessa för "portar".
I programmet ber man då t ex ett spår sända till
MIDIport A, midikanal
3 och annan musik på MIDIport B, midikanal
3. Även om de då sänder på samma MIDIkanal så sänder de till två olika MIDI
Out kontakter, där två olika syntar tar emot. På så sätt kan man använda
samma MIDIkanal mer än en gång och utöka det effektiva antalet kanaler över
de sexton som är begränsningen i MIDIprotokollet (och som inte går att
komma runt utan allvarliga ingrepp i standarden).
Denna typ av MIDIinterface med flera separata in- och
utgångar finns numera till alla datormärken, men kolla att det program du
väljer verkligen förstår hur raffinerat interface du pluggat i. Det största
vi känner till har 15 MIDI Out! Skilj också separata utgångar från sådana
interface som har flera parallella utgångar, d v s egentligen bara en
utgång, men en inbyggd thru-box.
En specialbyggd sequencer kan förstås ha så många in-
och utgångar som tillverkaren tycker är lämpligt, men vi har aldrig sett
någon färdigbyggd som i efterhand gått att bygga ut med flera jackar.
INTERFACE MED TIDKOD
Ett MIDIinterface till en dator kan också ha synkronisering-till-band
inbyggt, t ex i form av TIDKOD,
vilket är oumbärligt om man tänkt sig att jobba mot bild (video).
Ju fler av dessa egenskaper, ju högre blir förstås
priset. Det dyraste interface vi vet kostar c:a
sjutusen, lika mycket som en hel dator!
|
|
KONTINUERLIG
DATA I SEPARAT TAGNING
Det finns flera typer av kontinuerlig data i MIDI: PITCH-BEND,
Aftertouch
samt Modulation,
MIDIvolym
och andra Controllers.
Det faktum att dessa inte har något med själva de toner som klingar att
göra, betyder att man kan hantera dem helt separat när man t ex gör en
inspelning i en sequencer.
Man gör först en tagning på de toner man vill ha, backar
"bandet", gör en ny inspelning på ett annat spår, men under denna
andra tagning så spelar man inget, utan rör bara på pitch bend hjulet,
modulationshjulet eller vad det kan vara. Förutsatt att de båda spåren
spelar upp på samma MIDI-kanal,
så att de "riktas" till samma ljud, så verkar det vid uppspelning
som om båda sakerna gjorts samtidigt.
Detta arbetssätt fungera förstås inte så bra med
Aftertouch, eftersom man också spelar nya toner när man lägger på
Aftertouch efteråt.
|
|
KONTINUERLIG
DATA I SEPARAT TAGNING
Det finns flera typer av kontinuerlig data i MIDI: PITCH-BEND,
Aftertouch
samt Modulation,
MIDIvolym
och andra Controllers.
Det faktum att dessa inte har något med själva de toner som klingar att
göra, betyder att man kan hantera dem helt separat när man t ex gör en
inspelning i en sequencer.
Man gör först en tagning på de toner man vill ha, backar
"bandet", gör en ny inspelning på ett annat spår, men under denna
andra tagning så spelar man inget, utan rör bara på pitch bend hjulet,
modulationshjulet eller vad det kan vara. Förutsatt att de båda spåren
spelar upp på samma MIDI-kanal,
så att de "riktas" till samma ljud, så verkar det vid uppspelning
som om båda sakerna gjorts samtidigt.
Detta arbetssätt fungera förstås inte så bra med
Aftertouch, eftersom man också spelar nya toner när man lägger på
Aftertouch efteråt.
|
|
MIDI, MASKINVARA
OCH PROGRAMVARA
MIDI består av två delar, maskinvara och programvara.
MASKINVARA
Den första delen är en standard för maskinvaran
som försäkrar att anslutningen mellan två MIDI-enheter inte ger några
elektriska problem. All MIDI-utrustning använder samma typ av kontakter och
elektriska standard.
Det finns inte en uppkoppling som du kan göra, eller
något som du kan sända via MIDI, som kan skada något av dina instrument.
(Det värsta som kan hända är att dina förprogrammerade ljud försvinner, ha
alltid dom dokumenterade).
MIDIsignaler går bara åt ett håll i varje sladd. Därför
finns det tre typer av MIDI anslutningar, midi-in, midi-out
och midi-thru.
Mer om maskinvaran finns på korten markerade ovan och på
kortet maskinvara.
PROGRAMVARA
Den andra delen är programvaran, MIDI-språket
eller "meddelandena". Dessa är koder precis som Morsealfabetet,
ASCII-tecknen eller någon annan internationell uppsättning av strikt
definierade koder. Denna uppsättning MIDI-meddelanden används för att
överföra musikaliska händelser, som ett anslag på en tangent eller rörelser
på ett hjul för tonböjning.
MIDI var från början tänkt för att man skulle koppla
ihop ett par tre syntar och få dubblerade ljud. Sedan dess har konceptet
växt något enormt och innefattar allt från dragspel till teaterljus. Men de
flesta som jobbar med MIDI använder det för sequencerarbete, och det är det
denna elektronisk bok handlar om...
Se även korten SAMMANFATTNING-AV-MIDIMEDDELANDEN
och MIDIteori--översikt.
|
|
MIDI, SERIELL
ÖVERFÖRING
I MIDI sker ingenting samtidigt. Alla meddelanden kommer
efter varandra på en lång rad, ofta toner och andra typer av MIDImeddelande
huller om buller. All information kommer alltså i en lång serie och man
säger därför att MIDI bygger på seriell överföring.
Det finns alltså ingenting som heter ackord när det
gäller MIDI. Alla toner kommer efter varandra, det är bara tiderna emellan
dem som gör att man uppfattar det som ett ackord. Kommer t ex tonerna C, E
och G mycket tätt så uppfattar örat det som ett C-dur ackord. Kommer de med
längre tidsintervall låter de som ett brutet ackord och med långt
tidsintervall emellan tycker man att de är en del av en melodi.
I en MIDIsladd kommer alltså alltid alla meddelanden i
en lång följd. Läs mer om effekterna av detta på kortet TIMING.
|
|
MIDI OUT
En apparat som själv kan "hitta på" MIDI-data
sänder ut detta via MIDI Out. Det kan vara någonting man spelat på
apparatens klaviatur eller strängar, det kan var synk-information eller nåt
annat och det kan naturligtvis vara flera typer av meddelanden blandat.
En apparat kan ha hur många MIDI-utgångar som helst, men
måste inte ha någon MIDIutgång alls. Vissa ljudmoduler
och effektenheter
saknar t ex MIDI Out.
Man skiljer på separata utgångar, d v s sådana där det
kommer ut olika data på varje utgång, och parallella utgångar som alla
sänder ut samma data. En klaviatur (en synt)
har för det mesta bara en MIDI Out, medan en avancerad sequencer
eller dator
kan ha t ex åtta separata MIDIutgångar.
Se även midi-in, midi-thru,
maskinvara,
SEQUENCERSPÅR-OCH-MIDIKANALER
och INTERFACE.
|
|
MIDI THRU
Den tredje typen av MIDI anslutning heter MIDI Thru och
är en typ av utgång (som midi-out),
men skickar inte ut data som apparaten själv producerat, utan ekar endast
sådant som kommit in via MIDI In. Detta är till för att man ska kunna
seriekoppla många maskiner. Den första tar emot på MIDI In, skickar vidare
samma information via sitt MIDI Thru, som är kopplat till nästa apparats midi-in. Den
i sin tur ekar vidare via MIDI Thru o s v.
En synt,
en effekt
en dator
eller liknade har normalt sett bara en Thru-anslutning.
Det som är viktigt att förstå i det här är att det som
kommer ut på MIDI Thru inte innehåller några MIDI-data som en apparat själv
har skapat, utan bara precis är en karbonkopia på det som kommit in via
MIDI In.
Om man t ex vill använda två syntar för att spela på en
tredje räcker det inte att att seriekoppla dem som beskrivet ovan, det är
bara den första som det är någon mening att spela på. Den andra synten står
förgäves och sänder ut sin klaviaturdata via sitt MIDI Out, utan att något
är anslutet till den.
Passa er för att använda för många Thru-jackar i serie
efter varandra. Det finns möjlighet att tappa data på det här sättet. En
tumregel säger att inte mer än tre, fyra apparater ska anslutas via MIDI
thru.
Ett bättre alternativ till att använda MIDI Thru är att
skaffa en thru-box,
eller t o m en komplett midiväxel,
kanske programmerbar och med merge
och andra processorfunktioner.
INGA FÖRDRÖJNINGAR
Observera att Thrukoppling via varje apparats MIDI Thru
inte ger några fördröjningar, det är en gammal seglivad myt! Några mycket
tidiga apparater hade det problemet, men de syns sällan till nuförtiden.
Problemet med att använda maskiners Thrujackar istället för en Thrubox
ligger i att man kan tappa signalen delvis eller helt och hållet, i slutet
av kedjan. Således: antingen fungerar det med Thru eller så fungerar det
inte alls. Fördröjningar blir det inte.
Se även midi-in, midi-out
och maskinvara.
|
|
MIDIKANALER
MIDIkanaler är ett system för att separera
MIDIinformationen, så att man i ett nätverk av sammankopplad MIDIutrustning
kan skicka olika information till olika enheter.
När man arbetar med en sequencer
är vitsen att ens syntar ska kunna producera trummor, bas, komp, solo o s
v. Man gör inspelningar av MIDIdata i sequencern, som sedan spelar på
syntarna. Hur ska man kunna skilja ut så att en viss stämma spelas av en
viss synt och så att bara trummorna går till trummaskinen? Man skulle kunna
dra en MIDI sladd från sequencern till varje instrument, men det blir snart
opraktiskt. (Se sequenceruppkoppling
för hur man verkligen kopplar) Istället kodar man själva MIDIdatat, med
hjälp av MIDIkanaler.
Det första man måste förstå för att begripa MIDIkanaler
är att det inte finns någonting som heter ackord eller samtidiga händelser
när det gäller MIDI. Se kortet MIDI-Seriell-överföring.
ATT SÄNDA PÅ EN VISS KANAL
I varje MIDImeddelande finns ett kanalnummer
inbakat. Exakt hur detta är uppbyggt beskrivs i MIDIKANALERNA-I-DETALJ.
Om du ställer in en synt så att den "sänder på MIDIkanal 3"
vilket du säkert kan göra genom tryckningar på panelen, så kommer alla
toner som sänds ut (och flera andra typer av MIDImeddelanden med för den
delen) att innehålla kanalnumret 3.
Från midi-out
på en sequencer
som spelar upp musik från flera spår kommer en ström av noter med ett
sammelsurium av MIDIkanaler. Dessa går in i alla syntar i systemet som är
sammankopplade med sequencern, via en thru-box
eller midi-thru
(se även sequenceruppkoppling).
ATT TA EMOT PÅ EN VISS KANAL
Om alla toner passerar in i alla syntar, varför spelar
de då inte alla tonerna, pianot, basen stråkarna om vart annat? Jo därför
att de är inställda på varsin MIDIkanal (eller flera MIDIkanaler var om de
är multitimbrala).
Om du ställer in din DX-7 på MIDIkanal 5 betyder det att den kollar alla
toner som kommer in, men bara spelar de som har MIDIkanalnumret 5 inbakat i
sig. Den struntar i alla andra. På så sätt kan man ställa in varje synt
(eller varje ljud om synten är multitimbral) på en MIDIkanal och på så sätt
separera basstämman från kompet och trummorna.
Men, slutsatsen av detta är alltså att i en MIDIsladd
kan man skicka toner på alla sexton MIDIkanalerna samtidigt.
|
|
MIDIKANALERNA I
DETALJ
Detta kort är en direkt fortsättning på kortet ETT-NOTMEDDELANDE-I-DETALJ.
ATT SÄNDA PÅ EN MIDIKANAL
Vad händer egentligen när du ställer in en klaviatur att
sända på MIDI-kanal 3? Jo du talar om att i varje NOTE-ON
och Note-Off
(och flera andra typer av MIDImeddelanden med, för den delen) som sänds ut,
så ska de sista fyra bitarna i den första byten (kkkk i tabellen på det
förra kortet) representera talet 3. Ställer du in den att "sända på
MIDI-kanal 5" så lägger den i stället in siffran 5.
SEQUENCERN OCH MIDIKANALER
Din klaviatur kanske skickar toner med ett enda
MIDIkanalnummer i taget, men en sequencer
kan ju spruta ur sig massor med toner som innehåller olika kanalnummer. Och
i en sequenceruppkoppling så går ju egentligen alla meddelanden till alla
syntar.
ATT TA EMOT PÅ EN MIDIKANAL
Hur ska då en viss maskin veta att den bara ska spela
basen? När vi säger att "basen kommer på MIDI-kanal 4" så betyder
det att alla Note On och Note Off i basstämman har nummer 4 som den del av
meddelandet som representerar kanalen.
Du ställer in på bassynten att den ska "ta emot på
MIDI-kanal 4". Det betyder att den kollar av alla toner som
kommer in via dess MIDI In och sedan väljer att strunta i alla de som inte
har numret 4 som MIDI-kanal. Lätt som en plätt... eller?
SAMMANFATTNING
Hela MIDIsystemet går alltså ut på att "koppla
isär" spelinstruktionerna och ljudet. För då kan man spela in i en
sequencer med ett visst ljud och sedan bara byta ljud på mottagarsynten vid
uppspelning, eller t ex transponera tonerna genom att stämma om synten.
Eller varför inte ställa in en synt till på samma MIDI-kanal, så spelar de
samma stämma unisont, med varsitt ljud. Allt detta utan att ändra i MIDI
data på något sätt, utan istället bara genom att se till att de tolkas på
ett annat sätt i mottagarsynten.
Läs gärna mer på kortet MIDI-MODER.
|
|
MIDIKLOCKA I
PRAKTISKT ARBETE
|
MULTITIMBRALITET
När man säger att en synt eller sampler är multitimbral
menar man att den kan spela flera olika ljud på en gång, t ex bas, piano
och trumset.
I en synt har man för det mesta en en mängd färdiga
ljud. De kallas Program, Patches, Sounds, Timbres eller något liknande. Låt
oss kalla det Program. Ett Program består av inställningar för
oscillatorer, samples, filter, förstärkare, osv
och utgör en enskild klang.
Om en synt är multitimbral kan man låta flera sådana
Program ta emot på varsin MIDI-kanal.
Det brukar gå till så att man gör ett så kallat Combi, Performance, Bank
eller liknande (låt oss kalla det Combi) där varje Program kan ställas in
så att det tar emot på en viss MIDI-kanal. Det är så man får separat piano,
bas, trummor o s v ur en och samma synt. Men man måste kunna ställa andra
parametrar för varje Program i Combit, t ex volym, omfång på klaviaturen,
vilken utgång det går till och - som det brukar vara - en oändlig mängd
"obegripliga" MIDIparametrar. Ofta kan man göra i ordning flera
Combi-uppsättningar och spara dessa i syntens minne.
Dessutom brukar det finns en del inställningar för hela
Combit, t ex om det ska reagera på PROGRAM-CHANGE.
Resultatet av att sätta en synt i Combiläge (även kallat
Multi Mode) är att den uppför sig precis som om den var flera syntar, som
var och en tar emot på en midikanal
(och som var och en står i MIDI-Mode
3). Är två Program inställda på samma MIDIkanal får man dubbla ljud när man
skickar toner på den kanalen.
Du kan läsa mer om exakt hur den multitimbrala synten
fungerar i en sequenceruppkoppling om du dubbelklickar på MULTITIMBRALA-SYNTAR-I-SEQUENCERUPPKOPPLINGAR.
INTE BARA NOTER
Vi kan alltså skicka noter till Programmen individuellt,
vilket faktiskt är bevis för att de separat kan ta emot alla MIDImeddelanden
som kan skickas på en viss kanal. Man kan skicka PITCH-BEND
till var och en, så att tonerna som spelas med ett ljud böjs utan att andra
ljud påverkas. Man kan skicka PROGRAM-CHANGE
så att ett av ljuden byts ut mot ett annat. man kan skicka Controllers
till var och en så att man lägger på vibrato
eller påverkar volymen
eller panoreringen
(mixar), o s v.
För det mesta finns det förutom en MIDIkanal för varje
Program i en Combi också en global-MIDIkanal
på vilken man kan skicka t ex Program Change för att byta hela Combit till
en annan.
|
|
NOTE ON OCH NOTE
OFF
Note On och Note Off är MIDIs meddelanden för att slå på
respektive stänga av toner.
Tangenterna på en synt är i MIDI numrerade nedifrån en
tänkt klaviatur och uppåt, vilket innebär att MIDI helt och hållet är
baserat på halvtonsskalan. Man tar alltså ingen hänsyn till tempererad
eller otempererad stämning eller något sånt, koderna motsvarar bara
tangenter som tryckts ned. En vanlig fem oktavers klaviatur har en
C-tangent någonstans i mitten som får numret 60. Denna kallas i
MIDI-specifikationen för C4. I en sequencer
skrivs samma tangent ut som C3! Det råder alltså en viss förvirring här vad
gäller nomenklaturen, och det kan vara olika mellan olika sequencers också.
SPLIT
Många klaviaturer har så kallat split-keyboard
vilket innebär att de kan sända toner med olika kanalnummer ovanför
respektive nedanför en specifik tangent. Det gör det möjligt att spela på
två olika ljudmoduler
(eller två ljud i en modul), t ex en med vänster och en med höger hand. Man
kan naturligtvis tänka sig mer än en splitpunkt också.
ATTACK VELOCITY
Velocityvärdet som är inbakat i varje notmeddelande är
en siffra som talar om hur snabbt man tryckt ned en tangent, alltså inte
hur hårt man gjorde det (även om skillnaden är marginell). Datorn i synten
mäter den tid det tar för en tangent att gå från sitt översta läge ned till
bottenläget, och ju snabbare, desto högre velocityvärde lägger man in i
Notemeddelandet.
Nuförtiden är i princip alla syntars klaviaturer
anslagskänsliga, och ljuddelen kan generera olika volym och klang beroende
på ett inkommande velocityvärde, men det har inte alltid varit så. Dessutom
kan man ju ställa in en synt så att den reagerar mer eller mindre på en
viss anslagsstyrka, så återigen är det så att MIDI inte säger något om hur
velocityvärdet ska tolkas, det ser bara till att det kommer fram.
RELEASE VELOCITY
Även i Note-Off
meddelandet finns ett velocity värde, så kallad release velocity. Likaväl
som man kan tänka sig att läsa av hur snabbt en tangent trycktes ned så kan
man tänka sig att mäta hur snabbt den släpptes upp, och det är just detta
som är release velocity. De flesta syntar begagnar sig inte av den här
informationen.
|
|
POLYPHONIC KEY
PRESSURE
Polyphonic Key Pressure är tryckkänslighet per tangent.
Ej att förväxla med CHANNEL-PRESSURE,
eller Velocity.
Varje tangent läses alltså av individuellt, vad avser
tryck. Sådana klaviaturer är dyra att bygga, därför är de ovanliga. Roland
har det bland annat på sina "mother keyboards" A-80 och A-50, och
Ensoniq på EPS, VFX och SQ-80 (det finns naturligtvis fler). Däremot är det
ganska vanligt att en synt (med eller utan klaviatur) kan ta emot
det här meddelandet och göra något vettigt av det.
Observera att man ofta kan ställa in om en synt ska
skicka och/eller ta emot Polyphonic Key Pressure. Om synten är multitimbral
kan man ofta göra en sådan mottagarinställning per Program och en
sändarinställning separat för klaviaturen.
Ett tips är att lägga pitchbend
på tangenterna när man spelar på en klaviatur med sådan här
"individuell tryckkänslighet", men det går förstås att använda
till samma saker som Channel Pressure och mer därtill.
|
|
SEQUENCERSPÅR
OCH MIDIKANALER
De flesta Sequencers
arbetar med en bandspelaranalogi. Det finns inspelningsknapp,
uppspelningsknapp, Fast Forward och Rewind. Det brukar också finnas spår,
för att man ska kunna organisera sin inspelningar, lägga hihat på ett spår,
baskagge och virvel på ett annat, bas på ett tredje o s v.
VAD HAR MAN SPÅR TILL?
Spår är alltså bara till för att man ska kunna organisera
sina data på ett vettigt sätt. Man väljer inspelning på ett spår och
trycker på Record. Man aktiverar kanske en Solofunktion så att man kan
lyssna på ett spår i taget.
MÅNGA MIDIKANALER PÅ ETT SPÅR?
MIDIkanaler är någonting annat än spår. På ett spår kan
nämligen ligga musik på en, två eller alla sexton MIDIkanalerna, det spelar
ingen roll. Det beror som beskrivet på kortet midikanaler
på att varje enskilt MIDImeddelande som finns lagrat i sequencern
innehåller ett kanalnummer. De ligger där i en lång rad i sequencerns minne
och väntar på uppspelning. När de sedan spelas upp går de ut till alla
enheter i systemet, vars MIDIkanalinställning avgör om de kommer att höras
eller inte.
SPÅR OCH UTGÅNGAR
Det är också vanligt om sequencern har flera MIDI Out,
att man kan skicka ett spår till en viss utgång. På så sätt kan man få en
sequencer att arbeta på flera än sexton MIDIkanaler. Man kan ju ha upp till
sexton MIDIkanaler per utgång. Se även kortet INTERFACE.
EN MIDIKANAL PER SPÅR
Det är trots förklaringen om flera MIDIkanaler på ett
spår ovan, vanligt att varje spår i en sequencer sänder på en, och bara en,
viss MIDIkanal, bara för att det blir praktiskt och överskådligt på så vis.
Vad betyder då det? Jo om du spelar in musik på spår 3 i
din sequencer och ställer in spåret så att det sänder på MIDIkanal 7 så
kommer datorn att i uppspelningsögonblicket att byta ut MIDIkanalnumret
i all MIDImeddelanden som ligger på det spåret, så att det blir 7 oavsett
vad det var innan. Det här är mycket praktiskt och gör att man lätt kan
prova att skicka ett spår till olika syntar utan att ändra sina
MIDIkanalinställningar på själva syntarna. Man ändrar istället i sequencern
vilken kanal spåret sänder på, kanske kan man t o m gör det medan musiken
spelar.
RECHANNELIZING ELLER INTE?
Detta koncept kallas rechannelizing
(omkanalisering) och beskrivs också i avsnittet MULTITIMBRALA-SYNTAR-I-SEQUENCERUPPKOPPLINGAR.
Alla sequencers jobbar inte på detta sätt, utan spelar
alltid upp MIDIdata som det verkligen spelades in. Exempel är Rolands
MC-sequencers.Det betyder att man redan från
början måste se till att sända in på rätt MIDIkanal, genom att ställa in
den på sin synt (eller vad man nu spelar in med). Många avancerade
sequencers låter en arbeta på båda sätten genom att man kan ställa spåret
på att antingen sända på en viss MIDIkanal eller på en sjuttonde
inställning kallad "No", "Original", "True"
eller något likande. Med denna inställning ändras alltså inga MIDIkanaler
vid uppspelning från spåret, utan man får ut exakt de data man spelade in.
Rechannelizing vid uppspelning ska inte förväxlas med
editering av MIDIkanaler, som är en funktion med vilken man permanent
ändrar MIDIkanalvärden i sina inspelningar.
Det är också vanligt numera att sequencers har flera
MIDI Out (se kortet midi-out).Då kan man ofta ställa in till vilken utgång och på
vilken MIDIkanal ett visst spår ska sända. På så sätt har man kunna bryta
vallen med sexton MIDI-kanaler och får istället sexton MIDI-kanaler per
utgång.
|
|
SONG POSITION
POINTERS
I det ursprungliga MIDI konceptet fanns endast MIDIklockan
och Start
Stop
och Continue
för synk. Till det har kommit något som kallas Song Position Pointers. Tänk
er följande: Mastern
har en Fast Forward knapp och en Rewind knapp. Om du spolar fram till takt
36 på mastern och trycker på Play vad ska slaven
då göra? Den vet ju inte att du har "spolat" mastern... eller?
Jo, om båda maskinerna kan hantera Song Position Pointers (ibland kallat
Song Pointer eller SPP) så vet den det. Dessa meddelanden är nämligen just
till för att tala om för en slav att den t ex ska "spola till takt
36". Om du spolar på mastern så skickar den alltså Song Position
Pointers till slaven så fort du spolat färdigt (eller t o m medan du
spolar). Sedan ställer sig slaven i ett "vänta" läge tills det
kommer ett Continue meddelande följt av MIDIklockor.
Och Basta: de två uppför sig som ett gift gammalt par,
de följer varandra oavsett vart den andra går och hur fort den gör det.
Äldre Sequencers
och Trummaskiner
kanske inte förstår Song Position Pointers, och nya billiga gör det ibland
inte heller. Som vanligt - kolla innan du köper.
SYNK-MELLAN-OLIKA-TYPER-AV-MIDIUTRUSTNING
MIDIklocka-i-praktiskt-arbete
SYNK-TILL-BAND
TIDKOD-OCH-MIDI-TIME-CODE--ÖVERSIKT
|
|
SYSTEM COMMON
MESSAGES
Dessa meddelanden gäller hela systemet (alltså inte
per midikanal)
och innehåller en samling skilda typer av Meddelanden:
StatusByte Databyte 1 Databyte 2 Kommentar
11110001 0nnndddd MIDI-Time-Code
Quarter Frame 11110010 0lllllll 0hhhhhhh Song-Pos-Pointer
l=minst signifikant h=mest signifikant 11110011 0sssssss Song-Select.
s=Songnummer 11110100 Odefinierad 11110101
Odefinierad 11110110 ingen Tune Request 11110111 ingen EOX:End
of System Exclusive".
|
|
SYSTEM REAL TIME
MESSAGES
Dessa meddelanden har med Timing och liknande att göra.
Ingen av dem bär med sig några värden, utan är bara fasta koder för vissa
specifika ändamål.
11111000
Timing-Clock 11111001 Undefined 11111010 Start 11111011 Continue 11111100 Stop 11111101 Undefined 11111110 Active Sensing
11111111 System Reset{\fs18 }
|
|
TIMING
Det har pratats mycket under åren om fördröjningsproblem
i MIDI- överföringen. Låt oss se på en del fakta. Se även kortet thru.
Att sända ett enkelt NOTE-ON
meddelande via MIDI tar ungefär en millisekund (en tusendels sekund). Detta
kan först och främst jämföras med den tid som det tar innan meddelandet
egentligen sänds från det att du trycker på en tangent på MIDI-klaviaturen,
en siffra som varierar mellan olika instrument. I bästa fall är det runt en
millisekund (ms) och i värsta fall upp till 25 ms eller mer (med 5 till 10
ms som typiska värden). Lägg till detta reaktionstiden på synten som tar
emot meddelandet, dvs den tid det tar från det att
NOTE ON meddelandet kommer in på instrumentets midi-in och
tills dess att det låter. Denna tid kan vara lika lång (eller kort) som
klaviaturens reaktionstid.
Om man lägger samman dessa tider (upp till 50 millisekunder
eller mer i värsta fall) så förstår man att MIDIs överföringshastighet (1
millisekund för en ton) är det minsta problemet i kedjan.
Det blir lite mer kritiskt när du spelar ackord, kanske
till och med flera ackord på flera MIDI-kanaler samtidigt. I början av en
takt kanske du har hihat, bastrumma, slagverk, en baston, fyra pianotoner,
brass, syntljud och så vidare, alla inlagda för att låta precis samtidigt
på första slaget. Detta kan bli något i stil med tio till tjugo noter om
musiken är riktigt tät. Eftersom det inte finns något som heter "samtidiga-händelser"
i MIDI (alla noter sänds efter varann, även i ett ackord) så finns det en
tidsskillnad på så många millisekunder som det finns noter mellan den
första och den sista (i vårt exempel mellan 10 och 20 ms). Detta är
fortfarande mindre än den direkta responsen från flera klaviaturer som har
accepterats av den stora allmänheten. Kom ihåg att ljudets hastighet i luft
är ca 3 millisekunder per meter. Det värsta fallet med MIDI-fördröjningarna
i vårt exempel motsvarar därför att ha medmusikanternas ljudkällor
utspridda på ett avstånd av ungefär 6 meter.
Så även om MIDI självt normalt inte är problemet, så kan
det hända att du måste kompensera för varje instruments interna fördröjning
när du spelar upp från en sequencer.
Se kortet FÖRDRÖJNING-AV-SPÅR.
Slagverksspelare
har rätten att kräva snabbare reaktionstider än klaviaturspelare, eftersom
de är mest känsliga för dessa saker. Det beror helt enkelt på den fysiska
skillnaden på att slå på en trumma och att slå an en pianotangent.
Sequencers
ska definitivt ge noter prioritet över andra MIDI- meddelanden för att
alltid hålla känslan i musiken intakt. Musikern kan hjälpa till med detta
genom att inte spela in oanvända MIDI-meddelanden som tangenttryck (Aftertouch).
Om du fortfarande upplever problem så kanske du vill köpa extra maskinvara
som ansluts direkt till din dator via en av dess snabbare utgångar och via
den ger dig flera separata midi-out
anslutningar. Blanda inte ihop detta med vanliga MIDI thru-boxar
som inte alls påverkar tidshållningen.
|
|
UPPKOPPLING 7 -
EDITOR/BIBLIOTEKS-PROGRAMMET
Om man väljer en dator istället för en fristående
sequencer kan man ju välja att köra många olika program, t ex editorer
(visar inställningarna som utgör ett ljud i en synt eller en effektenhet,
på skärmen) och biblioteksprogram
(katalogiserar och arkiverar ljuden i t ex en synt). Då krävs att man har
kommunikation åt båda hållen med varje synt, man vill ju både
kunna ta emot värden och sända ut ändringar.
Vill man komma åt flera maskiner på detta sätt måste
man ha en programmerbar MIDI-växel,
det går inte att komma undan.
|
|