ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ 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. Παράδειγμα: 128 64 32 16 8 4 2 1 0 0 0 0 1 0 0 1
Τα 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 συσκευών που είναι συντονισμένες σε αυτό το κανάλι.
System Messages Οι εντολές που επηρρεάζουν όλο τον MIDI κώδικα σε ένα σύστημα συνδεδεμένων μεταξύ τους MIDI συσκευών. Αναλυτικά περί Channel Messages: Ένα Channel Message αποτελείται από 3 bytes δηλαδή 3 οχτάδες bits (3 ακολουθίες 8ψηφιων που αποτελούνται ΜΟΝΟ από 0 και 1). Η πρώτη οχτάδα λέγεται Status Byte, η δεύτερη 1 st 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. 1 st Data Byte Το 1 st Data Byte μας δείχνει μία νότα σε συγκεκριμένη οκτάβα: Την νότα που θα ακολουθήσει την εντολή που αναγράφεται στο Status Byte. Παράδειγμα: 0 1 0 0 0 0 0 0
Μετατρέποντας τον κώδικα στο δεκαδικό σύστημα βλέπουμε ότι το 1 st Data Byte μας δείχνει τον αριθμό 64. Με δεδομένο ότι το ΝΤΟ της 3 ης οκτάβας αντιστοιχεί στον αριθμό 60 και τον παρακάτω πίνακα μπορούμε να καταλάβουμε ότι ο κώδικας μας υποδηλώνει την νότα ΜΙ της 3 ης οκτάβας. Πίνακας 1 st Data Byte Νότα 2 nd Data Byte Το 2 nd Data Byte μας απεικονίζει έναν αριθμό που δηλώνει την «δυναμική» της εντολής, δηλαδή το πόσο «έντονα» θα εκτελεστεί η εντολή που μας δείχνει το Status Byte. Πχ: Για την εντολή «Note On» το 2 nd Data Byte θα μας δείξει το πόσο δυνατά θα παιχτεί η νότα μας (γνωστό και ως Velocity). Τα Data Bytes πάντα ξεκινάνε με ΜΗΔΕΝ. Ας συνοψίσουμε τα παραπάνω σε ένα παράδειγμα:
Έχουμε τον κώδικα 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. Το 1 st Data Byte μας δείχνει την νότα. Ο αριθμός που μας δείχνει το 1 st Data Byte είναι το 67 που σύμφωνα με τον πίνακα στην σελίδα 4 αντιστοιχεί στο ΣΟΛ της 3 ης οκτάβας. Το 2 nd 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). Το 1 st Data Byte μας δείχνει τον αριθμό που αντιστοιχεί η νότα μιας συγκεκριμένης οκτάβας. Ο αριθμός είναι το 27 και αντιστοιχεί στο ΜΙ ΥΦΕΣΗ της 1 ης οκτάβας.
Το 2 nd Data Byte μας δείχνει το Velocity για την εντολή NOTE ON (πόσο δυνατά θα παιχτεί η νότα) και ο αριθμός είναι 127 που είναι η μέγιστη ένταση στον κώδικα MIDI. Άρα η εντολή λέει: Να παιχτεί στο MIDI CHANNEL 4 η νότα MI ΥΦΕΣΗ της 1 ης οκτάβας με ένταση 127. Στον παρακάτω πίνακα δίνονται οι εντολές που απαντώνται σε ένα Status Byte και τα Data Bytes του. ΚΩΔΙΚΑΣ ΕΝΤΟΛΗΣ ΕΙΔΟΣ ΕΝΤΟΛΗΣ 1 ST DATA BYTE 2 ND DATA BYTE 0 0 1 Note On (να παιχτεί η νότα) Ποια νότα Πόση ένταση 0 0 0 Note Off (να σιωπήσει η νότα) Ποια νότα Είναι ίσο με μηδέν 0 1 0 1 0 1 Keys Aftertouch (εφέ που λαμβάνει χώρα με την πίεση συγκεκριμένου πλήκτρου) Channel Aftertouch (εφέ που λαμβάνει χώρα με την πίεση οποιουδήποτε πλήκτρου) Ποια νότα Δεν έχει 1 st Data Byte (καθώς υφίσταται με όλα τα πλήκτρα δεν χρειάζεται byte που θα μας λέει την νότα) Σε ποιον ήχο θα γίνει η αλλαγή Πόση πίεση με πόση δυναμικότητα θα λάβει χώρα το εφέ Πόση πίεση με πόση δυναμικότητα θα λάβει χώρα το εφέ 1 0 0 Program Change Δεν έχει 2 nd Data (Αλλαγή ήχου) Byte 1 1 0 Pitch Bend Κατά πόσο Κατά πόσο Control Change (μία ηχητική παράμετρος 0 1 1 που μπορούμε να Ποια ηχητική Κατά πόσο θα ελέγξουμε. παράμετρος μεταβληθεί Περιλαμβάνει ένα ολόκληρο σύστημα εντολών). Τα υπόλοιπα Channel Messages: Όπως βλέπουμε στον παραπάνω πίνακα τα υπόλοιπα Channel Messages αφορούν παραμέτρους όπως το Aftertouch, το Pitch Bend, Program Change και Control Change.
Οι εντολές 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 ης οκτάβας και το 2 nd Data Byte μας δείχνει τον αριθμό 11. Άρα η εντολή λέει: Στην νότα ΜΙ 3 ης οκτάβας στο κανάλι 4 να δοθεί Aftertouch Effect με δυναμική ίση με 11. Παράδειγμα Channel Aftertouch (MIDI Κώδικας 101) 1 0 1 0 0 0 0 0 Δεν έχει 1 st Data Byte 0 0 0 0 0 1 1 1 Channel Aftertouch MIDI Channel Κατά πόσο δυνατά θα ασκηθεί το εφέ Από τη στιγμή που το Channel Aftertouch απαντά σε όλες τις νότες που υφίστανται στο συγκεκριμένο κανάλι δεν χρειάζεται ο κώδικας να υποδηλώσει νότα άρα δεν χρειαζόμαστε 1 st Data Byte. Άρα η εντολή λέει: Στο MIDI κανάλι 1 να ασκείται Aftertouch Effect με δυναμική ίση με 7.
Η εντολή Program Change (MIDI Κώδικας 100) Η επιλογή ήχου μέσα από μία μπάνκα ήχων που υφίστανται για συγκεκριμένο κανάλι γίνεται μέσω της εντολής Program Change (ή αλλιώς και Patch Change) 1 1 0 0 0 0 1 0 0 1 1 0 0 0 1 1 Δεν έχει 2 nd Data Byte Program Change MIDI Channel Σε ποιον ήχο θα «μεταπηδήσουμε» Από τη στιγμή που η εντολή Program Change σε ένα συγκεκριμένο κανάλι δεν μεταφέρει πληροφορίες που αφορούν νότες, το 1 st 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.
Οι εντολές 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 κανάλι. Το 1 st Data Byte μας δείχνει ποια παράμετρος ελέγχου θα αλλάξει και το 2 nd Data Byte κατά πόσο θα αλλάξει. Το 1 st Data Byte που μας δίνει τον αριθμό μηδέν, αντιστοιχεί στην εντολή «Bank Select» (ακολουθεί πίνακας που δείχνει την αντιστοιχία αριθμών με εντολές). Το 2 nd Data Byte μας δείχνει σε ποια μπάνκα ήχων μεταβήκαμε. Άρα η παραπάνω εντολή λέει: Στο MIDI κανάλι 1 να μεταβούμε στην 3 η μπάνκα ήχων. ΠΙΝΑΚΑΣ ΕΝΤΟΛΩΝ CONTROL CHANGE (CC σημαίνει Control Change) Control Change CC#0 CC#1 CC#2 CC#3 CC#4 CC#5 CC#6 CC#7 CC#8 CC#9 CC#10 CC#11 CC#12 CC#31 Είδος εντολής Bank Select Modulation Wheel Breath Controller Assignable Foot Pedal Portamento Time Data Entry Volume Balance Assignable Pan Expression Assignable Η αριστερή κάθετος του πίνακα μας δίνει τον αριθμό που προκύπτει από το 1 st Data Byte και η δεξιά σε ποια παράμετρο αντιστοιχεί.
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 Ποιά παράμετρος θα μεταβληθεί Κατά πόσο θα μεταβληθεί Το 1 st Data Byte μας δίνει τον αριθμό 1 άρα από τον πίνακα βλέπουμε ότι η εντολή αφορά το Modulation Wheel. Συνεπώς η εντολή αυτή λέει: Στο κανάλι 1 το Modulation Wheel να μεταβληθεί κατά 11 μονάδες. Control Change 2 Breath Controller Το Breath Controller είναι μία MIDI συσκευή που χρησιμοποιείται όταν θέλουμε να αναπαράγουμε όσο πιο πειστικά γίνεται τις δυναμικές και την εκφραστικότητα ενός πνευστού μουστικού οργάνου μιας και με το «πιανιστικό» παίξιμο με τα χέρια αυτό είναι ιδιαίτερα δύσκολο. Breath Controller Οι εντολές του Breath Controller στο 1 st Data Byte μας δίνουν τον αριθμό 2 και στο Second Data Byte το ποσό της μεταβολής. Στο Status Byte πάντα έχουμε τον κώδικα 011 μετά τον πρώτο άσσο.
Control Change 3 Assignable Είναι στη διάθεσή μας να του αναθέσουμε όποια παράμετρο ή εφέ θέλουμε εμείς. Control Change 4 Foot Pedal Το Foot Pedal είναι ένας εξωτερικός Controller που μπορεί να μεταβάλλει την αξία μιας παραμέτρου που ορίζεται από τον χρήστη (πχ Volume, Wah, Pitch Bend) με το πάτημα του ποδιού. Το 2 nd Data Byte της εντολής εκφράζει το πόσο πατήθηκε το πεντάλ. Foot Pedal Control Change 5 Portamento Time Το πορταμέντο είναι ένα εφέ μεταξύ 2 νοτών που παίζονται η μία μετά την άλλη. Καθώς έχουμε παίξει την πρώτη νότα και μεταβαίνουμε στην επόμενη ο ήχος περνάει από όλο το συχνοτικό φάσμα μεταξύ των δύο αυτών νοτών. Δηλαδή σε μουσική ορολογία, μεταβαίνει στην επόμενη νότα «χρωματικά». Το Portamento Time είναι η εντολή η οποία εκφράζει στο 2 nd Data Byte σε πόσο χρόνο θα πραγματοποιηθεί το χρωματικό ανέβασμα από την μία νότα στην επόμενη. Το 2 nd Data Byte δεν εκφράζει μονάδα χρόνου (πχ millisecond) αλλά μία αριθμητική παράμετρο που αντιστοιχεί σε συγκεκριμένο χρονικό διάστημα. Control Change 7 Volume Η εντολή Volume εκφράζει την τελική ένταση που έχουμε στο 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. Ο μέγιστος αριθμός που μπορεί να αποδώσει ένα 2 nd Data Byte από μόνο του είναι 127. Σε όλες τις εντολές όμως συχνά επιθυμούμε τιμές μεγαλύτερες του 127. Για να τις εκφράσουμε χρησιμοποιούμε ακόμα μία σειρά από 3 οχτάδες bits στην οποία: - Το Status Byte παραμένει το ίδιο μιας και αναφερόμαστε σε Control Change εντολή και στο ίδιο MIDI κανάλι - Το 1 st Data Byte εκφράζει τον αριθμό στον οποίο αντιστοιχεί η συγκεκριμένη παράμετρος στο εύρος CC#32 CC#63. Η σειρά είναι η ίδια όπως στο CC#0 CC#31 δηλαδή το CC#32 αντιστοιχεί στο Bank Select, το CC#33 στο Modulation Wheel, το CC#34 στο Breath Controller και ούτω καθ εξής. - Το 2 nd Data Byte συνδυάζεται με το 2 nd Data Byte της πρώτης σειράς για να αποδώσει 14- bit κώδικα και συνεπώς τιμές πολύ μεγαλύτερες του 127. Όταν τα 1 st Data Byte έχουν διαφορά 32 τότε πρόκειται για την ίδια εντολή που στέλνει τιμή μεγαλύτερη του 127 μέσω του κώδικα MIDI.
Για να γίνει πιο κατανοητό ας δώσουμε το παράδειγμα: 10110000 00000001 00000011 10110000 00100001 00000110 Αν κοιτάξουμε τα 1 st Data Byte των εντολών παρατηρούμε ότι το πάνω εκφράζει τον αριθμό 1 και το κάτω τον αριθμό 33. Η διαφορά τους είναι 32 άρα πρόκειται για την ίδια Control Change εντολή (αφού και το Status Byte μας δείχνει το χαρακτηριστικό 011). Είναι η Control Change εντολή που αφορά το Modulation Wheel. Ο συνδυασμός των δύο Second Data Byte (που στην προκειμένη περίπτωση το πρώτο λέγεται Most Significant Byte και το δεύτερο Less Significant Byte) μας δίνει τον αριθμό 771 που είναι και η τιμή μεταβολής της παραμέτρου.