Αudio: Για την ηχογράφηση της φωνής και την ακρόαση του μόνιτορ χρησιμοποιώ την κάρτα ήχου της "Solid State Logic" "SSL 2+". Οπότε θα την επιλέξω ως κύρια είσοδο και έξοδο του ήχου από το ableton χρησιμοποιώντας τον driver "asio4all". Όλα τα project μου θα ηχογραφηθούν σε sample rate 44100 και bitdepth 24bit. Έχω θέσει το buffer size στα 128samples με συνολικό latency τα 10ms για ισορροπία σωστής ακρόασης και σωστής απόδοσης από τον υπολογιστή μου.
MIDI: Ως MIDI keyboard θα χρησιμοποιήσω το UMX610 της behringer. Χρειάζομαι να στέλνω νότες καθώς και CC εντολές οπότε θα ενεργοποιήσω το "track" και το "remote" στις ρυθμίσεις της MIDI εισόδου για το UMX610.
Automations: Θέλω αφού τελειώσω το performance να μπορέσω να ανακαλέσω όλες τις ενέργειες που έχω κάνει προκειμένου να κάνω export το audio. Οπότε είναι σημαντικό να έχω ενεργοποιημένο το automation record button.
Μετά το πέρας του performance τα automation που γράφτηκαν μοιάζουν έτσι:
Instruments and effects:
Για τα κρουστά χρησιμοποίησα ήχους μέσα απο το stock library του ableton.
Kick: Η μπότα απο το drum kit "Jarble Kit"
Snare: To Snare απο το drum kit "Subtle Electronics Kit"
Hat: Ableton sample "Hihat Closed Chirp Hat"
Perc: Ableton sample "Wood Bright"
Harmony: Στο harmony group το οποίο περιέχει τα επόμενα 3 instruments έχω προσθέσει ένα EQ του οποίου to high cut, το εχω κάνει mapping σε ένα knob του keyboard μου προκειμένου να μπορώ να το μεταβάλω την ώρα του performance. Επίσης έχω κάνει mapping τα sends του group στα return tracks "Reverb" και "Echo".
Pianoid Melody:Ableton sample "Git Proc Loop"
Piano: Kontakt Library "NOIRE"
Strings: Ableton Instrument "Synthetic Strings"
Audio Recordings: Εχω δημιουργήσει ένα group στο οποίο βρίσκονται 3 audio tracks τα οποία έχουν σαν input το μικρόφωνο που έχω μπροστά μου με σκοπό μέσα στο performance να ηχογραφήσω μια τρίφωνη χωροδία. Το κάθε audio track έχει autotune στην τονικότητα του τραγουδιού και το group που τα εμπεριέχει, έχει tremolo effect.
Return Tracks:
A Reverb: Ένα γενικό reverb για το perfomance με μεσαίο decay και το effect "Reverb"
B Echo: Ένα γενικό delay για το performance με το knob του feedback mapped σε knob του keyboard μου. Effect "Εcho"
C VOX Reverb: Ένα reverb για τις ηχογραφημένες φωνές με αρκετά μεγάλο decay. Effect "Vocal Hall".
MΙΞΗ:
Γενικά ήθελα το κομμάτι να είναι κάπως ατμοσφαιρικό και μυστήριο οπότε χρησιμοποίησα μεγάλα reverb και high cut στα περισσότερα elements. Στα κρουστά το high cut παραμένει καθ' όλη την διάρκεια του performance ενώ στα υπόλοιπα elements το χειρίζομαι με knob.
Ως γενικό κανόνα για το eq. Ξεκίνησα αφαιρώντας τις συχνότητες οι οποίες είναι προβληματικές για το σύνολο. Και στην συνέχει αύξησα τις θεμελιώδεις συχνότητες του κάθε track και κάποιες πιο ψηλές για clarity και presence.
Compression χρησιμοποίησα μόνο στα tracks που υπήρχε μεγάλη δυναμική περιοχή και χρειαζόταν περιορισμό. Όπως τα vox, τα strings, και το Pianoid.
Μετά από την δοκιμή της πρώτης μίξης άκουσα το αποτέλεσμα σε στούντιο με sub ηχείο και η μπότα είχε υπερβολικές χαμηλές συχνότητες οπότε τις περιόρισα στο eq.
Τέλος στο main track πρόσθεσα ένα eq για τελικές συχνοτικές διορθώσεις και ένα limiter για mastering στα -14LUFS.
PROJECT 2:
ARDUINO:
Ως board χρησιμοποίησα το arduino uno rev3. Οι σένσορες που αποφάσισα να χρησιμοποιήσω είναι:
Ο HC-SR04 Ultrasonic Sensor, ο οποίος στέλνει υπερηχητικά σήματα και στην συνέχεια λαμβάνει πίσω την ανάκλαση του σήματος. Υπολογίζοντας την διαφορά χρόνου αναπαραγωγής και ακρόασης το arduino επιστρέφει στον χρήστη την απόσταση που έχει το πιο κοντινό αντικείμενο από τον σένσορα.
Ο MPU6050 Accelerometer, πρόκειται για ένα επιταχυνσιόμετρο και γυροσκόπιο τριών αξόνων. Για το συγκεκριμένο project με ενδιαφέρει η λειτουργία του γυροσκόπιου δηλαδή η γωνία που έχει ο σένσορας σε κάθε άξονα και όχι η επιτάχυνση του.
Ο WAVESHARE Liquid Level Sensor, ο οποίος χρησιμοποιώντας κατακόρυφες μεταλλικές επαφές και αξιοποιώντας την αγωγιμότητα του νερού, επιτρέπει στο arduino να επιστρέψει στον χρήστη την τιμή ανάλογα με την στάθμη του υγρού στο οποίο μέσα βρίσκετε ο σένσορας.
Πρώτα διάβασα τις οδηγίες εγκατάστασης για τον κάθε σένσορα:
Μετά βρήκα τα διαγράμματα με την σωστή συνδεσμολογία
Για την σύνδεση του ultrasonic sensor χρησιμοποίησα τα digital pins 12,13 και όχι τα 9,10 όπως φαίνεται στην εικόνα επάνω.
Ο MPU6050 δεν είχε έτοιμα pins για σύνδεση όπως οι άλλοι δύο σένσορες οπότε για την αρχική δοκιμή τον σύνδεσα με καλώδια τύπου κροκοδειλάκι
Και στην συνέχεια έκανα συγκόλληση του εξαρτήματος με το οποίο ήρθε ο σένσορας
Σύνδεσα τον κάθε σένσορα ξεχωριστά επάνω στο arduino, και άρχισα να ψάχνω τον εκάστοτε κώδικα. Μέσα απο το library του Arduino IDE βρήκα τους κώδικες για τον κάθε σένσορα.
HC-SR04:
MPU6050:
WAVESHARE Liquid Level Sensor:
Δοκίμασα τον κάθε σένσορα ξεχωριστά και αφού είδα ότι δουλεύουν ξεκίνησα να συγχωνεύω τους 3 κώδικες σε έναν, έτσι ώστε να μπορέσω να λειτουργήσω και τους 3 σένσορες ταυτόχρονα.
Στην συνέχεια με βάση τις φωτογραφίες δημιούργησα ένα δικό μου διάγραμμα κατά το οποίο και οι τρεις σένσορες συνδέονται ταυτόχρονα επάνω στο arduino
Ως αποτέλεσμα οι 3 σένσορες δούλεψαν ταυτόχρονα και στο serial output έλαβα το εξής κάθε 10ms:
Όπου Distance είναι η απόσταση του ultrasonic σένσορα σε εκατοστά από 0 έως 400
Water level είναι η στάθμη του νερού από 0 έως 650.
Και angle x,y,z είναι η γωνία στην οποία βρίσκεται το γυροσκόπιο σε κάθε άξονα από -90 εως +90 περίπου.
MAX MSP:
Για να επικοινωνήσει το arduino με το ableton έφτιαξα το εξής max patch.
Στο πρώτο μέρος ζητάω από το max να κάνει print τις διαθέσιμες θύρες και αφού είδα ότι το arduino μου είναι στην θύρα f, έθεσα το Object να λαμβάνει πληροφορίες από αυτήν την θύρα. Σε συνδυασμό με ένα object metro λαμβάνουμε καινούρια πληροφορία από το arduino κάθε 10 ms.
Στο δεύτερο μέρος χρησιμοποιώντας το object unpack, διαχωρίζω το output του arduino σε μέρη προκειμένου να κρατήσω μόνο τους αριθμούς με με ενδιαφέρουν. Έτσι καταλήγω να έχω 5 numbers τα οποία αντιστοιχούν σε: Απόσταση, Στάθμη, Γωνία x,y,z.
Στην συνέχεια με το object scale μετατρέπω τις το εύρος τιμών που μου δίνουν οι σένσορες σε εκατοστά και μοίρες, σε τιμές που μπορώ να αξιοποιήσω σε midi πληροφορία.
Για παράδειγμα, ο σένσορας απόστασης μου δίνει τιμές από 1 έως 400 εκατοστά. Πέραν του ότι δεν πρόκειται να κάνω τόσο μεγάλη κίνηση αυτός ο αριθμός δεν με εξυπηρετεί σε κάτι, οπότε θέτω ότι από τα 10 έως τα 30 εκατοστά θέλω να μου δίνει τιμές από 127 έως 0. Αρα όσο πιο κοντά πάω το χέρι μου τόσο η τιμή ανεβαίνει μέχρι να φτάσω τα 10 εκατοστά. Μετά πρόσθεσα 2 if objects προκειμένου να οριοθετήσω το εύρος τιμών που λαμβάνω.
Στο τρίτο μέρος θέλω να μετατρέψω τις τιμές που έχω λάβει σε CC MIDI εντολές τις οποίες μετά μπορώ να διοχετεύσω στο object "midiformat". Για παράδειγμα όταν το αριστερά number λαμβάνει μία τιμή 70 από τον σένσορα απόστασης, συνδυάζεται με ένα pack object και δημιουργεί την CC MIDI εντολή "110 70" το οποίο σημαίνει ότι το ρυθμιστικό 110 έχει πάρει τιμή 70.
Στο τελευταίο μέρος αφού έχουμε την raw midi πληροφορία θέλουμε να την μεταφέρουμε εκτός του max. Οπότε χρησιμοποιώ ένα object "midiout" το οποίο έχει ως output το πρόγραμμα "LoopBe1 internal midi" μέσω του οποίου θα μεταφέρω την πληροφορία μέσα στο ableton.
MAX FOR LIVE DEVICES:
LOOPER:
Με αρχικό σκοπό την χρήση του σε αυτό το coursework δημιούργησα ένα max for live device το οποίο βοηθάει στην διαχείριση χρόνου και κινήσεων για πιο εύκολη ηχογράφηση στο περιβάλλον του session view του ableton.
Το έχω ονομάσει "NEXT LOOP" και το έχω ανεβάσει στο comunity των max4live devices διαθέσιμο για download:
To device αυτό, το χρησιμοποίησα και κατά την εκτέλεση του performance σε όλα τα project της εργασίας.
Το πρώτο button λειτουργεί σαν start/stop, διαβάσει το πρώτο clip στο selected track, άμα δεν υπάρχει clip ξεκινάει να ηχογραφεί το clip, εάν βρισκόμαστε σε ηχογράφηση και έχει δημιουργηθεί clip τότε σταματάει την ηχογράφηση.
Το δεύτερο button λειτουργεί σαν looper και κάνει τις εξής διαδικασίες:
Αναγνωρίζει ποιο είναι το selected track.
Εάν δεν υπάρχει clip, οπλίζει το selected track και ξεκινάει να ηχογραφεί το πρώτο clip
Εάν ξαναπατηθεί αφοπλίζει το selected track, σταματάει την ηχογράφηση του, οπλίζει και κάνει select το επόμενο track και ξεκινάει την ηχογράφηση του.
Εάν στο επόμενο track υπάρχει clip δεν το σβήνει απλά ξεκινάει την αναπαραγωγή του.
Για το ableton ακολούθησα τις ίδιες διαδικασίες με τo project 1 με μερικές ακόμα διαδικασίες.
Όπως ανέφερα επάνω έχω στείλει την Midi πληροφορία από το arduino στο πρόγραμμα "LoopBe1 internal midi". Οπότε για να εισάγω την πληροφορία μέσα στο Ableton έθεσα στις MIDI ρυθμίσεις ως MIDI Input το device "LoopBe1 internal MIDI".
Instruments and effects:
Freeze Ignition: Kontakt Library "Ignition Keys". Μέσα σε αυτό το instrument έχω προσθέσει ένα chain από effects τα οποία θα χειρίζομαι με τους arduino sensors.
"Spacious" Ένα reverb με μεγάλο decay το οποίο έχει δυνατότητα freeze έτσι ώστε να δημιουργηθεί ένας ήχος τύπου pad που δεν θα σταματάει να παίζει αμα δεν πατήσω ξανα το κουμπί freeze.
"Warm up Lows" για drive στις χαμηλές συχνότητες
"Pitch Trails" για έλεγχο του τονικού ύψους
"Wide Stereo" για για αύξηση της στέρεο ηχητικής εικόνας
Εχω δημιουργήσει ένα Group "Group ALL" το οποίο περιέχει όλα τα tracks και έχω κάνει mapping το C SEND του στον σένσορα απόστασης προκειμένου να το χρησημοποιήσω κατα την διάρκεια του performance.
Return Tracks:
A Reverb: Ένα γενικό reverb effect "Reverb"
B Echo: Ένα γενικό delay "Delay"
C Distance Reverb: Ένα reverb στο οποίο πηγαίνουν όλα τα tracks με αρκετά μεγάλο decay. Effect "Reverb".
Midi Mapping:
Χρησιμοποιώντας την λειτουργία MIDI Mapping του Ableton αντιστοίχησα την midi πληροφορία που μου δίνει η MAX σε knobs και faders:
Distance Sensor -> Send του "Group All" στο return track "Distance Reverb" στο οποίο έχω προσθέσει ένα Reverb με μεγάλο Decay.
Liquid Level Sensor -> Track volume του track "freeze ignition"
Gyroscope X-axis -> "Pitch Trails" Shift Knob
Gyroscope Y-axis(+) -> "Tremolo" Amount knob
Gyroscope Y-axis(-) -> Group All EQ High Cut Freq Knob
Μετά το performance τα automation έμοιαζαν έτσι:
MΙΞΗ:
Οι ήχοι σε αυτό το project είχαν μεγαλύτερη ανάγκη για επεξεργασία οπότε σε κάθε track πρόσθεσα eq κατά το οποίο αφαίρεσα ενοχλητικές συχνότητες οι οποίες δημιουργούν πρόβλημα στο σύνολο και ενίσχυσα συχνότητες που βοηθάνε στο να γίνει πιο ξεκάθαρο το κάθε track. Πρόσθεσα compression σε όλα τα tracks καθώς υπήρχε μεγάλη δυναμική περιοχή.
PROJECT 3:
RESOLUME ARENA:
Πρώτα άλλαξα μερικές παραμέτρους στα preferences
Audio: Audio output device: None, διότι δεν θα χρειαστεί να λάβω η να στείλω ήχο έξω από το resolume
Midi: Ενεργοποίησα το MIDI Input του "LoopBe Internal MIDI" καθώς μέσω αυτού θα λάβω midi πληροφορία από το Ableton.
Recording: Έθεσα το Recording Output Directory στον φάκελο που θέλω να αποθηκευτεί το video.
Μετά, ενεργοποίησα το link στο ableton και στο resolume και έτσι τώρα το resolume δέχεται clock και tempo από το ableton, και τα προγράμματα είναι συγχρονισμένα.
Για πηγή βίντεο χρησιμοποίησα την κάμερα του κινητού μου να δείχνει την επιφάνεια του γραφείου μου έτσι ώστε να φαίνεται το μπάσο και το midi keyboard όταν παίζω, το κινητό μου είναι συνδεδεμένο με wifι μέσω του προγράμματος "Iriun Webcam" για να στέλνει βίντεο στον υπολογιστή μου.
Σταθερά Effects:
Χρησιμοποίησα 2 video effects τα οποία είναι ενεργά σε όλη την διάρκεια του βίντεο. Το ένα είναι το "Acuarela" το οποίο παραμορφώνει την εικόνα δημιουργώντας κυματισμούς και το δεύτερο είναι το "Delay RGB" το οποίο καθυστερεί το red,green η blue channel της εικόνας κατά όσο χρόνο το ορίσω.
Μεταβαλλόμενα Effects:
Χρησιμοποίησα 3 video effects τα οποία ενεργοποιούνται και απενεργοποιούνται μέσω του κουμπιού bypass καθώς το resolume δέχεται midi εντολές από το Ableton. Το πρώτο εφέ αφαιρεί τα green και blue channels και κάνει την εικόνα κόκκινη και ενεργοποιείται κάθε φορά που εκτελείται η νότα του snare. Αντίστοιχα το επόμενο εφέ κάνει την εικόνα μπλε όταν εκτελείται η μπότα και το τελευταίο effect που ονομάζεται "fragment" δημιουργεί εφέ σεισμού κάθε φορά που παίζει το μπάσο.
2ο Column:
Τέλος αντέγραψα το 1ο column στο δεύτερο και πρόσθεσα ένα effect που λέγεται "kaleidoscope" και το οποίο δημιουργεί εφέ καλειδοσκόπιου. Το τοποθέτησα πριν από τα μεταβαλλόμενα effects έτσι ώστε όταν εκτελούνται να είναι πιο αισθητά στην όψη.
Midi Mapping:
Μέσα από το μενού shortcuts -> Edit MIDI έθεσα το mapping για την Midi πληροφορία που δέχεται το resolume από το ableton.
Blue Substract Bypass <- Νότα Kick
Red Substract Bypass <- Νότα Snare
Fragment Bypass <- Νότες Μπάσου
Έθεσα ως output την δεύτερη οθόνη μου προκειμένου να βλέπω δεξιά μου το αποτέλεσμα και πριν την έναρξη του performance πάτησα Record για να γράψω το βίντεο.
ABLETON LIVE:
Για το ableton ακολούθησα τις ίδιες διαδικασίες με τo project 1 με μερικές ακόμα διαδικασίες.
Μέσα από τα settings ενεργοποίησα το show link toggle προκειμένου να έχω την δυνατότητα να συγχρονίσω το ableton με το resolume και στην συνέχει πάτησα το κουμπί link έτσι ώστε το ableton να αναμένει σύνδεση.
Όρισα ως midi έξοδο το πρόγραμμα "LoopBe Internal MIDI" έτσι ώστε να μπορώ να στείλω Midi νότες στο Resolume.
Μετά δημιούργησα ένα midi track το οποίο λαμβάνει πληροφορία midi από το track "Kick and Snare" την δρομολογεί στο "LoopBe output CH1" και είναι πάντα στο monitoring in προκειμένου να μην χρειάζεται να είναι οπλισμένο και επανέλαβα την ίδια διαδικασία για το track "SUB BOOM BASS".
Instruments:
Kick: Ο συνδυασμός του layering 2 kick δειγμάτων "Kick Beryl" και "Kick Shadow" απο το drum instrument "Boom Bap Kit"
Snare: To Snare από το drum kit "Boom Bap Kit"
Hat: To Closed Hat από το drum kit "Boom Bap Kit"
Bass: Ο συνδυασμός του layering με 2 οκτάβες από το instument "Basic Sub Boom"
Harmony
LOFI Pad: Ableton Instrument "Shy LoFi Keys"
Left Piano: Ableton Instrument "Childhood Home Piano"
Right Guitar: Kontakt Library "Evolution Modern Nylon"
Melodies
NEY: Kontakt Library "Breath of anatolia"
Kanun: Kontakt Library "Strings of anatolia"
Audio Recordings: Δημιούργησα ένα audio track με όνομα "Bass Melody" το οποίο δέχεται είσοδο από το φυσικό όργανο μπάσο μέσω της κάρτας ήχου και περνάει μέσα από το effect "Guitar Rig 7".
Return Tracks:
A Reverb: Ένα γενικό reverb με μεσαίο decay και το effect "Reverb"
B Delay: Ένα γενικό delay effect "Delay"
C Snare Delay: Ένα reverb για τo δεύτερο snare.
MΙΞΗ:
Το project αυτό περιέχει hip hop boom bap μουσική η οποία είθιστε να είναι "βρώμικη" ηχητικά οπότε απο την στιγμή που ήμουν ευχαριστημένος με τον ήχο του κάθε track δεν ήθελα να επέμβω συχνότικα οπότε μόνο κανένα track δεν έχει αφαιρετικό eq. Από την άλλη οι δυναμικές περιοχές ήταν πολύ καλές οπότε δεν χρειάστηκε να κάνω ούτε compression.
Στο main track έκανα πολύ μικρές διορθώσεις στο eq και στην συνέχεια πρόσθεσα ένα limiter για να κάνω mastering στα -14LUFS.
OBS STUDIO (ΓΙΑ ΟΛΑ ΤΑ PROJECT):
Μόλις τελειώσει το performance, πέρα από τις κάμερες που γράφουν τον χώρο, θα ήθελα να έχω και ένα βίντεο με το ableton προκειμένου να μπορώ να κάνω video editing και να φαίνονται οι ενέργειες που κάνω στον υπολογιστή.
Για την ενέργεια αυτή χρησιμοποίησα το OBS STUDIO.
Ρυθμίσεις:
Όρισα ως recording path τον φάκελο στον οποίο θέλω να αποθηκευτεί το βίντεο. Για καλή ποιότητα βίντεο, αλλά και όχι υπερβολική η οποία απλά θα μου φάει χώρο στον δίσκο εξέλεξα Indistinguishable Quality με τύπο αρχείου .mp4. Δεν επέλεξα κανένα audio track καθώς δεν έχω εισάγει κάποια πηγή ήχου μέσα στο πρόγραμμα διότι γράφω τον ήχο μέσω του ableton.
Δημιούργησα μία σκηνή η οποία περιέχει ένα window capture το οποίο δείχνει το GUI του kontakt. Έτσι πατώντας το κουμπί fade απεικονίζεται στην έξοδο του OBS ότι ενέργεια κάνω μέσα στο παράθυρο του Ableton.
Tέλος πατώντας το κουμπί "start recording" ξεκινάει η εγγραφή του παραθύρου και μπορώ να εκτελέσω το performance.
ADOBE PREMIERE PRO (ΓΙΑ ΟΛΑ ΤΑ PROJECT)):
Για την επεξεργασία του βίντεο και το μοντάζ χρησιμοποίησα το πρόγραμμα "Premiere Pro 2024" της εταιρίας "Adobe". Εισήγαγα τα βίντεο τις εγγραφές οθόνης και τον ήχο μέσα στο πρόγραμμα, τα συγχρόνισα και έφτιαξα εναλλαγές μεταξύ αυτών προκειμένου ο ακροατής να μπορεί να βλέπει πως χειρίζομαι τον εξοπλισμό αλλά και τα προγράμματα του υπολογιστή ταυτόχρονα.
ΕΞΟΠΛΙΣΜΟΣ:
VIDEO:
Κάμερες: Google Pixel 8 Pro και Samsung Galaxy A50.
Comments
Post a Comment