Download - Θεωριασ Midi

Transcript
Page 1: Θεωριασ Midi

ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ MIDI

Τί είναι το MIDI;

Το MIDI (Musical Instrument Digital Interface) είναι ένα πρωτόκολλο επικοινωνίας μεταξύ 2 ή

περισσοτέρων ηλεκτρονικών μουσικών οργάνων. Μέσω του πρωτοκόλλου αυτού διοχετεύονται

διάφορες πληροφορίες που αφορούν διάφορες παραμέτρους μιας νότας (ή γενικότερα ενός

ήχου) όπως πχ το τονικό της ύψος, η έντασή της, κάποιο εφέ της (πχ vibrato). Οι συσκευές

μεταξύ τους συνδέονται με το καλώδιο MIDI.

Καλώδιο MIDI Υποδοχές MIDI

Το MIDI σαν πρωτόκολλο δεν μεταφέρει Audio πληροφορίες δηλαδή ΔΕΝ περιλαμβάνει ηχητικό

σήμα. Οι πληροφορίες αφού φτάσουν σε μία γεννήτρια ήχου που υποστηρίζει το MIDI

πρωτόκολλο (πχ ένα synthesizer) αναπαράγονται μέσω ενός ήχου που μπορούμε να επιλέξουμε.

Το καλώδιο MIDI (βλ. παραπάνω εικόνα) περιλαμβάνει στο εσωτερικό του 16 καλώδια και κάθε

ένα από αυτά αντιστοιχεί σε ένα κανάλι επικοινωνίας μεταξύ των 2 συσκευών.

Πώς είναι φτιαγμένος ο κώδικας MIDI;

Ο κώδικας MIDI είναι 8-bit και μεταδίδεται σειριακά από την μία συσκευή στην άλλη (δηλαδή οι

εντολές η μία μετά την άλλη και όχι ταυτόχρονα). Όταν λέμε 8-bit εννοούμε ότι μία MIDI εντολή

αναπαριστάται με μία σειρά 8 ψηφίων που αποτελείται μόνο από 0 και 1.

Παράδειγμα:

0 0 0 0 1 0 0 1

128 64 32 16 8 4 2 1

Page 2: Θεωριασ Midi

Τα 4 τελευταία ψηφία μας δείχνουν το κανάλι όπου υπάρχει επικοινωνία μεταξύ 2 MIDI

συσκευών. Είναι στο δυαδικό σύστημα που είναι η γλώσσα που «καταλαβαίνει» ένας

υπολογιστής.

Για να το μεταφράσουμε στο 10δικό σύστημα που καταλαβαίνει ο άνθρωπος ακολουθούμε την

εξής διαδικασία: Το πρώτο ψηφίο από τα δεξιά μας (ο τελευταίος άσσος) μας λέει πόσες

μονάδες υπάρχουν. Το δεύτερο από τα δεξιά πόσες δυάδες, το τρίτο (παντα από τα δεξιά) τις

τετράδες το τέταρτο τις οχτάδες, το πέμπτο τις 16αδες, το έκτο τις 32αδες το έβδομο τις 64αδες

και το όγδοο τις 128αδες όπως παρατηρούμε στο παραπάνω σχήμα. Βλέπουμε ότι έχουμε 1

μονάδα και 1 οχτάδα. Άρα τα 4 τελευταία ψηφία μας δείχνουν τον αριθμό 9.

Στον κώδικα MIDI όμως επειδή ο αριθμός 0 αντιστοιχεί στο κανάλι 1, ο αριθμός 9 αντιστοιχεί

στο κανάλι 10. Ας γίνει πιο κατανοητό από τον παρακάτω πίνακα:

ΚΩΔΙΚΑΣ 4 ΤΕΛΕΥΤΑΙΩΝ ΨΗΦΙΩΝ ΔΕΚΑΔΙΚΟ ΣΥΣΤΗΜΑ ΑΡΙΘΜΟΥ ΠΟΥ ΑΠΕΙΚΟΝΙΖΕΙ Ο ΚΩΔΙΚΑΣ

MIDI CHANNEL

0 0 0 0 0 1

0 0 0 1 1 2

0 0 1 0 2 3

0 0 1 1 3 4

0 1 0 0 4 5

0 1 0 1 5 6

0 1 1 0 6 7

0 1 1 1 7 8

1 0 0 0 8 9

1 0 0 1 9 10

1 0 1 0 10 11

1 0 1 1 11 12

1 1 0 0 12 13

1 1 0 1 13 14

1 1 1 0 14 15

1 1 1 1 15 16

Τί μηνύματα μεταφέρονται μέσω του κώδικα MIDI;

Στον κώδικα MIDI οι εντολές (ή μηνύματα) χωρίζονται σε 2 βασικές κατηγορίες. Τα Channel

Messages και τα System Messages.

Channel Messages

Είναι οι εντολές που περιλαμβάνουν πληροφορίες που επηρρεάζουν αποκλειστικά ένα

μόνο MIDI κανάλι επικοινωνίας μεταξύ 2 MIDI συσκευών που είναι συντονισμένες σε

αυτό το κανάλι.

Page 3: Θεωριασ Midi

System Messages

Οι εντολές που επηρρεάζουν όλο τον MIDI κώδικα σε ένα σύστημα συνδεδεμένων

μεταξύ τους MIDI συσκευών.

Αναλυτικά περί Channel Messages:

Ένα Channel Message αποτελείται από 3 bytes δηλαδή 3 οχτάδες bits (3 ακολουθίες 8ψηφιων

που αποτελούνται ΜΟΝΟ από 0 και 1). Η πρώτη οχτάδα λέγεται Status Byte, η δεύτερη 1st Data

Byte και η τρίτη Second Data Byte.

Status Byte

Βασικό του χαρακτηριστικό είναι ότι ΠΑΝΤΑ ξεκινάει με τον αριθμό 1. Η 3αδα ψηφίων

μετά τον πρώτο άσσο μας δηλώνει το είδος της εντολής (note on, note off, pitch bend)

και η τελευταία 4αδα ψηφίων το MIDI κανάλι στο οποίο διοχετεύεται η εντολή. Ο

πίνακας με τον κώδικα τον εντολών δίνεται σε πίνακα παρακάτω.

Παράδειγμα: 1 0 0 1 0 0 0 0

Είδος εντολής MIDI Κανάλι

Στο παραπάνω παράδειγμα το Status Byte μας δείχνει την εντολή με κώδικα 001 που

αντιστοιχεί στο note on δηλαδή «να παιχτεί η νότα» και το κανάλι με κώδικα 0000 που

αντιστοιχεί στο MIDI Κανάλι 1.

1st Data Byte

Το 1st Data Byte μας δείχνει μία νότα σε συγκεκριμένη οκτάβα: Την νότα που θα

ακολουθήσει την εντολή που αναγράφεται στο Status Byte.

Παράδειγμα: 0 1 0 0 0 0 0 0

Page 4: Θεωριασ Midi

Μετατρέποντας τον κώδικα στο δεκαδικό σύστημα βλέπουμε ότι το 1st Data Byte μας

δείχνει τον αριθμό 64. Με δεδομένο ότι το ΝΤΟ της 3ης οκτάβας αντιστοιχεί στον αριθμό

60 και τον παρακάτω πίνακα μπορούμε να καταλάβουμε ότι ο κώδικας μας υποδηλώνει

την νότα ΜΙ της 3ης οκτάβας.

Πίνακας 1st Data Byte Νότα

2nd Data Byte

Το 2nd Data Byte μας απεικονίζει έναν αριθμό που δηλώνει την «δυναμική» της εντολής,

δηλαδή το πόσο «έντονα» θα εκτελεστεί η εντολή που μας δείχνει το Status Byte. Πχ: Για

την εντολή «Note On» το 2nd Data Byte θα μας δείξει το πόσο δυνατά θα παιχτεί η νότα

μας (γνωστό και ως Velocity).

Τα Data Bytes πάντα ξεκινάνε με ΜΗΔΕΝ.

Ας συνοψίσουμε τα παραπάνω σε ένα παράδειγμα:

Page 5: Θεωριασ Midi

Έχουμε τον κώδικα MIDI:

1 0 0 1 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1

Note On Midi Channel Ποια νότα Πόσο δυνατά θα παιχτεί η νότα

Ποια MIDI εντολή στέλνεται;

Η 3άδα ψηφίων μετά τον πρώτο άσσο στο Status Byte μας δηλώνει το είδος της εντολής.

Στο παράδειγμά μας η εντολή είναι η NOTE ON δηλαδή «να παιχτεί η νότα». Τα 4

τελευταία ψηφία του Status Byte μας δηλώνουν το MIDI κανάλι. Ο αριθμός που

απεικονίζουν τα 4 τελευταία ψηφία του Status Byte είναι ο αριθμός 1. Αλλά επειδή ο

αριθμός 0 αντιστοιχεί στο MIDI Channel 1 τότε το κανάλι μας είναι το 2. Το 1st Data Byte

μας δείχνει την νότα. Ο αριθμός που μας δείχνει το 1st Data Byte είναι το 67 που

σύμφωνα με τον πίνακα στην σελίδα 4 αντιστοιχεί στο ΣΟΛ της 3ης οκτάβας. Το 2nd Data

Byte μας δείχνει με πόση ένταση παίζει η νότα μας. Στη συγκεκριμένη περίπτωση η

ένταση της νότας μας είναι 69. Άρα η εντολή που στέλνεται είναι:

Να παιχτεί στο MIDI κανάλι 2 η νότα ΣΟΛ 3ης οκτάβας με ένταση 69.

Παράδειγμα 2ο:

Έστω ο κώδικας MIDI:

1 0 0 1 0 0 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1 1 1 1

Ποια εντολή στέλνεται;

Πρώτη τριάδα ψηφίων μετά τον πρώτο άσσο στο Status Byte: 001. Άρα η εντολή είναι

Note On.

4 τελευταία ψηφία στο Status Byte είναι το MIDI κανάλι. Κανάλι 4 απεικονίζει ο κώδικας

(δείχνει τον αριθμό 3 ο κώδικας αλλά ΕΠΕΙΔΗ Ο ΑΡΙΘΜΟΣ ΜΗΔΕΝ ΑΝΤΙΣΤΟΙΧΕΙ ΣΤΟ

ΚΑΝΑΛΙ 1 ΤΟΤΕ ΑΥΤΟ ΕΙΝΑΙ ΤΟ ΚΑΝΑΛΙ 4).

Το 1st Data Byte μας δείχνει τον αριθμό που αντιστοιχεί η νότα μιας συγκεκριμένης

οκτάβας. Ο αριθμός είναι το 27 και αντιστοιχεί στο ΜΙ ΥΦΕΣΗ της 1ης οκτάβας.

Page 6: Θεωριασ Midi

Το 2nd Data Byte μας δείχνει το Velocity για την εντολή NOTE ON (πόσο δυνατά θα

παιχτεί η νότα) και ο αριθμός είναι 127 που είναι η μέγιστη ένταση στον κώδικα MIDI.

Άρα η εντολή λέει:

Να παιχτεί στο MIDI CHANNEL 4 η νότα MI ΥΦΕΣΗ της 1ης οκτάβας με ένταση 127.

Στον παρακάτω πίνακα δίνονται οι εντολές που απαντώνται σε ένα Status Byte και τα

Data Bytes του.

ΚΩΔΙΚΑΣ ΕΝΤΟΛΗΣ ΕΙΔΟΣ ΕΝΤΟΛΗΣ 1ST DATA BYTE 2ND DATA BYTE

0 0 1 Note On (να παιχτεί

η νότα) Ποια νότα Πόση ένταση

0 0 0 Note Off (να

σιωπήσει η νότα) Ποια νότα Είναι ίσο με μηδέν

0 1 0

Keys Aftertouch (εφέ που λαμβάνει χώρα

με την πίεση συγκεκριμένου

πλήκτρου)

Ποια νότα

Πόση πίεση – με πόση δυναμικότητα

θα λάβει χώρα το εφέ

1 0 1

Channel Aftertouch (εφέ που λαμβάνει χώρα με την πίεση

οποιουδήποτε πλήκτρου)

Δεν έχει 1st Data Byte (καθώς

υφίσταται με όλα τα πλήκτρα δεν

χρειάζεται byte που θα μας λέει την

νότα)

Πόση πίεση – με πόση δυναμικότητα

θα λάβει χώρα το εφέ

1 0 0 Program Change (Αλλαγή ήχου)

Σε ποιον ήχο θα γίνει η αλλαγή

Δεν έχει 2nd Data Byte

1 1 0 Pitch Bend Κατά πόσο Κατά πόσο

0 1 1

Control Change (μία ηχητική παράμετρος

που μπορούμε να ελέγξουμε.

Περιλαμβάνει ένα ολόκληρο σύστημα

εντολών).

Ποια ηχητική παράμετρος

Κατά πόσο θα μεταβληθεί

Τα υπόλοιπα Channel Messages:

Όπως βλέπουμε στον παραπάνω πίνακα τα υπόλοιπα Channel Messages αφορούν

παραμέτρους όπως το Aftertouch, το Pitch Bend, Program Change και Control Change.

Page 7: Θεωριασ Midi

Οι εντολές Aftertouch

Ορισμένα MIDI Keyboards έχουν ενσωματωμένο έναν αισθητήρα στα πλήκτρα τους ο οποίος

θέτει σε λειτουργία ένα εφέ της επιλογής μας (πχ vibrato) μόλις το πλήκτρο αυτό πατηθεί.

Ανάλογα με την πίεση που θα ασκήσουμε στο πλήκτρο, τόσο δυνατό ή αισθητό θα είναι το εφέ.

Το Aftertouch το χωρίζουμε σε 2 εντολές. Το Keys Aftertouch (ή αλλιώς Poly Pressure) και το

Channel Aftertouch (ή αλλιώς Mono Pressure). Το Keys Aftertouch είναι το εφέ που απαντάται

σε ένα συγκεκριμένο πλήκτρο του Clavier σε ένα συγκεκριμένο κανάλι όταν αυτό πατηθεί ενώ

το Channel Aftertouch είναι κοινό για όλα τα πλήκτρα του MIDI Keyboard μας σε ένα

συγκεκριμένο κανάλι. Το Aftertouch Effect (που μπορεί να είναι vibrato ή delay για παράδειγμα)

ορίζεται από τις παραμέτρους της γεννήτριας ήχου.

Παράδειγμα Keys Aftertouch (MIDI Κώδικας: 010)

1 0 1 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1

Keys Aftertouch MIDI CHANNEL Ποια νότα Κατα πόσο (δυνατά) θα ασκηθεί το εφέ

Αποκωδικοποιώντας βρίσκουμε ότι το κανάλι μας είναι το 4, η νότα μας είναι το ΜΙ 3ης

οκτάβας και το 2nd Data Byte μας δείχνει τον αριθμό 11.

Άρα η εντολή λέει:

Στην νότα ΜΙ 3ης οκτάβας στο κανάλι 4 να δοθεί Aftertouch Effect με δυναμική ίση με 11.

Παράδειγμα Channel Aftertouch (MIDI Κώδικας 101)

1 0 1 0 0 0 0 0 Δεν έχει 1st Data Byte 0 0 0 0 0 1 1 1

Channel Aftertouch MIDI Channel Κατά πόσο δυνατά θα ασκηθεί το εφέ

Από τη στιγμή που το Channel Aftertouch απαντά σε όλες τις νότες που υφίστανται στο

συγκεκριμένο κανάλι δεν χρειάζεται ο κώδικας να υποδηλώσει νότα άρα δεν χρειαζόμαστε 1st

Data Byte. Άρα η εντολή λέει:

Στο MIDI κανάλι 1 να ασκείται Aftertouch Effect με δυναμική ίση με 7.

Page 8: Θεωριασ Midi

Η εντολή Program Change (MIDI Κώδικας 100)

Η επιλογή ήχου μέσα από μία μπάνκα ήχων που υφίστανται για συγκεκριμένο κανάλι γίνεται

μέσω της εντολής Program Change (ή αλλιώς και Patch Change)

1 1 0 0 0 0 1 0 0 1 1 0 0 0 1 1 Δεν έχει 2nd Data Byte

Program Change MIDI Channel Σε ποιον ήχο θα «μεταπηδήσουμε»

Από τη στιγμή που η εντολή Program Change σε ένα συγκεκριμένο κανάλι δεν μεταφέρει

πληροφορίες που αφορούν νότες, το 1st Data Byte δεν μας δείχνει τονικό ύψος νότας αλλά τη

θέση του ήχου που επιλέξαμε. Συνεπώς η εντολή αυτή λέει:

Στο MIDI κανάλι 3 να επιλεγεί ο ήχος που βρίσκεται στη θέση 99 της μπάνκας ήχων.

Η εντολή Pitch Bend (MIDI Κώδικας 110)

Σε πολλά MIDI Keyboards συναντάμε στην κάτω αριστερή γωνία τους μία ροδέλα που αν την

μετατοπίσουμε από την αρχική της θέση την ώρα που παίζουμε μία νότα, θα ακούσουμε ότι το

τονικό της ύψος αλλάζει ανάλογα με το πόσο μετακινήσαμε την ροδέλα. Αυτό ονομάζεται Pitch

Bend δηλαδή «λύγισμα» του τονικού ύψους και η εντολή που στέλνεται μέσω του πρωτοκόλλου

MIDI έχει την μορφή:

1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

Pitch Bend MIDI Channel Less significant Byte Most Significant Byte

Ο κώδικας λέει: Να μεταβληθεί το τονικό ύψος στο MIDI κανάλι 1 κατά 1 μονάδα. Πρέπει να

σημειωθεί ότι το 1ο Data Byte δεν μας δείχνει ποια νότα ούτε το 2ο το πόσο μεταβλήθηκε το

τονικό ύψος. Αντιθέτως, τα 2 Data Bytes συνεργάζονται μεταξύ τους ώστε ο κώδικας να

μεταβληθεί σε 14-bit για να μπορούμε να εκφράσουμε πολλές παραπάνω τιμές. Δηλαδή ακόμα

και στην πρώτη οχτάδα ψηφίων κάθε ψηφίο από τα δεξιά προς τα αριστερά εκφράζει: 128αδες

256αδες, 512αδες, 1024αδες και ούτω καθ’ εξής.

Να σημειωθεί ότι στην εντολή Pitch Bend η τελευταία οχτάδα bits ονομάζεται Most Significant

Byte και η πριν από αυτή Less Significant Byte.

Page 9: Θεωριασ Midi

Οι εντολές Control Change (MIDI κώδικας 011)

Οι εντολές Control Change αφορούν παραμέτρους τις οποίες μπορούμε να ελέγξουμε μέσω

κάποιου ποτενσιόμετρου πάνω στην MIDI συσκευή μας όπως πχ Volume, Balance, Pan,

Portamento είτε μέσω ενός ξεχωριστού controller όπως θα δούμε. Μία εντολή Control Change

έχει την παρακάτω μορφή:

1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1

Control Change MIDI Channel Ποιά παράμετρος θα μεταβληθεί Κατά πόσο θα μεταβληθεί

Μία εντολή Control Change χαρακτηρίζεται από την τριάδα ψηφίων μετά τον πρώτο άσσο στο

Status Byte που είναι 011. Τα 4 τελευταία ψηφία στο Status Byte όπως πάντα δηλώνουν το MIDI

κανάλι. Το 1st Data Byte μας δείχνει ποια παράμετρος ελέγχου θα αλλάξει και το 2nd Data Byte

κατά πόσο θα αλλάξει.

Το 1st Data Byte που μας δίνει τον αριθμό μηδέν, αντιστοιχεί στην εντολή «Bank Select»

(ακολουθεί πίνακας που δείχνει την αντιστοιχία αριθμών με εντολές). Το 2nd Data Byte μας

δείχνει σε ποια μπάνκα ήχων μεταβήκαμε. Άρα η παραπάνω εντολή λέει:

Στο MIDI κανάλι 1 να μεταβούμε στην 3η μπάνκα ήχων.

ΠΙΝΑΚΑΣ ΕΝΤΟΛΩΝ CONTROL CHANGE (CC σημαίνει Control Change)

Control Change Είδος εντολής

CC#0 Bank Select

CC#1 Modulation Wheel

CC#2 Breath Controller

CC#3 Assignable

CC#4 Foot Pedal

CC#5 Portamento Time

CC#6 Data Entry

CC#7 Volume

CC#8 Balance

CC#9 Assignable

CC#10 Pan

CC#11 Expression

CC#12 – CC#31 Assignable

Η αριστερή κάθετος του πίνακα μας δίνει τον αριθμό που προκύπτει από το 1st Data Byte και η

δεξιά σε ποια παράμετρο αντιστοιχεί.

Page 10: Θεωριασ Midi

Control Change 1 – Modulation Wheel

Συχνά δίπλα από το Pitch Bend υπάρχει μία ακόμα ροδέλα η οποία μπορεί να μετατοπιστεί και

να αναπαράγει κάποιο εφέ το οποίο μπορούμε να ορίσουμε εμείς. Οι αλλαγές θέσης της

ροδέλας αυτής εκφράζονται με τον MIDI κώδικα και είναι της μορφής:

1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 1

Control Change MIDI Channel Ποιά παράμετρος θα μεταβληθεί Κατά πόσο θα μεταβληθεί

Το 1st Data Byte μας δίνει τον αριθμό 1 άρα από τον πίνακα βλέπουμε ότι η εντολή αφορά το

Modulation Wheel.

Συνεπώς η εντολή αυτή λέει:

Στο κανάλι 1 το Modulation Wheel να μεταβληθεί κατά 11 μονάδες.

Control Change 2 – Breath Controller

Το Breath Controller είναι μία MIDI συσκευή που χρησιμοποιείται όταν θέλουμε να

αναπαράγουμε όσο πιο πειστικά γίνεται τις δυναμικές και την εκφραστικότητα ενός πνευστού

μουστικού οργάνου μιας και με το «πιανιστικό» παίξιμο με τα χέρια αυτό είναι ιδιαίτερα

δύσκολο.

Breath Controller

Οι εντολές του Breath Controller στο 1st Data Byte μας δίνουν τον αριθμό 2 και στο Second Data

Byte το ποσό της μεταβολής. Στο Status Byte πάντα έχουμε τον κώδικα 011 μετά τον πρώτο

άσσο.

Page 11: Θεωριασ Midi

Control Change 3 – Assignable

Είναι στη διάθεσή μας να του αναθέσουμε όποια παράμετρο ή εφέ θέλουμε εμείς.

Control Change 4 – Foot Pedal

Το Foot Pedal είναι ένας εξωτερικός Controller που μπορεί να μεταβάλλει την αξία μιας

παραμέτρου που ορίζεται από τον χρήστη (πχ Volume, Wah, Pitch Bend) με το πάτημα του

ποδιού. Το 2nd Data Byte της εντολής εκφράζει το πόσο πατήθηκε το πεντάλ.

Foot Pedal

Control Change 5 – Portamento Time

Το πορταμέντο είναι ένα εφέ μεταξύ 2 νοτών που παίζονται η μία μετά την άλλη. Καθώς έχουμε

παίξει την πρώτη νότα και μεταβαίνουμε στην επόμενη ο ήχος περνάει από όλο το συχνοτικό

φάσμα μεταξύ των δύο αυτών νοτών. Δηλαδή σε μουσική ορολογία, μεταβαίνει στην επόμενη

νότα «χρωματικά». Το Portamento Time είναι η εντολή η οποία εκφράζει στο 2nd Data Byte σε

πόσο χρόνο θα πραγματοποιηθεί το χρωματικό ανέβασμα από την μία νότα στην επόμενη. Το

2nd Data Byte δεν εκφράζει μονάδα χρόνου (πχ millisecond) αλλά μία αριθμητική παράμετρο

που αντιστοιχεί σε συγκεκριμένο χρονικό διάστημα.

Control Change 7 – Volume

Η εντολή Volume εκφράζει την τελική ένταση που έχουμε στο MIDI κανάλι μας.

Page 12: Θεωριασ Midi

Control Change 8 – Balance

To Balance εκφράζει την ισορροπία μεταξύ LEFT και RIGHT καναλιού όταν πρόκειται για stereo

ήχους.

Control Change 9 - Assignable

Όπως και στο CC#3 είναι διαθέσιμο να του αναθέσουμε όποια παράμετρο ή εφέ επιθυμούμε.

Control Change 10 – Pan

To Pan που είναι συντομογραφία για το Panorama ορίζει σε ποιο στερεοφωνικό κανάλι (Left ή

Right) θα ακούγεται πιο πολύ η μελωδία μας.

Control Change 11 - Expression

Το Expression αφορά πιο πολύ την παράμετρο του Volume. Χρησιμοποιείται για τον έλεγχο της

έντασης μέσα στα όρια του δεδομένου Volume.

Οι Control Change από 12 μέχρι 31 είναι διαθέσιμες για χρήση οποιασδήποτε παραμέτρου ή

εφέ.

Τί γίνεται όμως όταν θέλουμε να χρησιμοποιήσουμε τιμές μεγαλύτερες του 127 για μία

εντολή Control Change;

Από το το CC#32 μέχρι το CC#63 είναι στη σειρά οι ίδιες εντολές όπως στο CC#0 – CC#31. Ο

μέγιστος αριθμός που μπορεί να αποδώσει ένα 2nd Data Byte από μόνο του είναι 127. Σε όλες

τις εντολές όμως συχνά επιθυμούμε τιμές μεγαλύτερες του 127. Για να τις εκφράσουμε

χρησιμοποιούμε ακόμα μία σειρά από 3 οχτάδες bits στην οποία:

- Το Status Byte παραμένει το ίδιο μιας και αναφερόμαστε σε Control Change εντολή και

στο ίδιο MIDI κανάλι

- Το 1st Data Byte εκφράζει τον αριθμό στον οποίο αντιστοιχεί η συγκεκριμένη

παράμετρος στο εύρος CC#32 – CC#63. Η σειρά είναι η ίδια όπως στο CC#0 – CC#31

δηλαδή το CC#32 αντιστοιχεί στο Bank Select, το CC#33 στο Modulation Wheel, το CC#34

στο Breath Controller και ούτω καθ’ εξής.

- Το 2nd Data Byte συνδυάζεται με το 2nd Data Byte της πρώτης σειράς για να αποδώσει 14-

bit κώδικα και συνεπώς τιμές πολύ μεγαλύτερες του 127.

Όταν τα 1st Data Byte έχουν διαφορά 32 τότε πρόκειται για την ίδια εντολή που στέλνει τιμή

μεγαλύτερη του 127 μέσω του κώδικα MIDI.

Page 13: Θεωριασ Midi

Για να γίνει πιο κατανοητό ας δώσουμε το παράδειγμα:

10110000 00000001 00000011

10110000 00100001 00000110

Αν κοιτάξουμε τα 1st Data Byte των εντολών παρατηρούμε ότι το πάνω εκφράζει τον αριθμό 1

και το κάτω τον αριθμό 33. Η διαφορά τους είναι 32 άρα πρόκειται για την ίδια Control Change

εντολή (αφού και το Status Byte μας δείχνει το χαρακτηριστικό 011). Είναι η Control Change

εντολή που αφορά το Modulation Wheel. Ο συνδυασμός των δύο Second Data Byte (που στην

προκειμένη περίπτωση το πρώτο λέγεται Most Significant Byte και το δεύτερο Less Significant

Byte) μας δίνει τον αριθμό 771 που είναι και η τιμή μεταβολής της παραμέτρου.