Δευτέρα 8 Ιανουαρίου 2018

Lilypond, η Λίμνη των Κρίνων

Πέρασαν σχεδόν είκοσι πέντε χρόνια από τότε που πάλευα να γράψω νότες με το Notator SL (που έγινε Logic, μας πούλησε η Emagic και το πούλησε  στην Apple), το Score Perfect (πέθανε νεότατος ο δημιουργός του Klaus Kleinbrahm, στα 53 του), το Encore (που έχει πια βρυκολακιάσει) και το Music Prose (που έγινε Finale), και τριάντα πέντε χρόνια από τότε που έγραψα μια μελωδιούλα στον Spectrum ZX. Έκτοτε τα προγράμματα μουσικής σημειογραφίας (ΠΜΣ) έχουν κάνει μεγάλα προς τα μπρος βήματα, όχι όμως άλματα· το μετέωρο βήμα του Dorico ίσως γίνει άλμα κάποια στιγμή, μένει να το δούμε …

Το ειδύλλιο με τον κώδικα ξεκίνησε με το LaTex και ο καινούριος χρόνος με βρήκε να μιμούμαι τον Mr. Robot και να προσπαθώ να γράψω ένα ντο ολόκληρο στη σφηνοειδή γραφή της Λίμνης με τα (ακανθώδη) Κρίνα. Η εμμονική και πεισματάρικη φύση του ζωδίου μου, με βοήθησαν να ξεπεράσω τις αρχικές - φαινομενικά ανυπέρβλητες -  δυσκολίες του προγράμματος και σε σύντομο σχετικά διάστημα να αντιγράψω το Solfeggietto του CPE Bach. Το Lilypond δεν έχει GUI (γραφικό περιβάλλον), τον κώδικα / παρτιτούρα τον γράφει κανείς σε ένα απλό text file (plain text). Δεν είναι γλώσσα προγραμματισμού, αλλά markup language, “προσημασμένη γλώσσα” όπως και το LaTex. Όταν γράφεις νότες δεν τις βλέπεις, χρειάζεται compiling, όπως λεν οι ειδικοί, για να εμφανιστεί η παρτιτούρα σε ένα PDF. Υπάρχουν και κάποιοι editors που κάνουν τη δουλειά πιο εύκολη (Frescobaldi), θυμίζουν κάπως περιβάλλον Sibelius δηλαδή, αλλά αυτοί έχουν άλλα προβλήματα.

Να ένα δείγμα τις δουλειάς των διακοπών (προσέξτε την πολυμετρία, ποιο άλλο πρόγραμμα το κάνει αυτό χωρίς διάφορα τρικ;):

Να κι ένα τμήμα του κώδικα:

Γιατί όλη αυτή η φασαρία σε μια μικρή και δύσκολη ζωή, θα αναρωτηθεί κανείς. Παραθέτω τα υπέρ και τα κατά σε ένα κατάλογο, έτσι όπως τα έζησα αυτές τις λίγες μέρες που ασχολούμαι με το πρόγραμμα:

ΥΠΕΡ
• Είναι δωρεάν (άδεια χρήσης GNU), τέρμα τα σπασμένα που λείπει κάποιο .dll και οι αγενείς και αδηφάγες εταιρείες (βλέπε AVID).
• Είναι αποτέλεσμα κάποιου / κάποιων που αγαπούν πολύ αυτό που κάνουν και μοιράζονται το προϊόν της εργασίας τους και την αγάπη τους με τους άλλους.
• Ο κώδικας είναι ανοικτός, αν ξέρει κάποιος προγραμματισμό μπορεί να τον συμπληρώσει / διορθώσει / βελτιώσει.
• Όμορφες παρτιτούρες, οι πιο άρτιες αισθητικά, αν τις συγκρίνουμε με αυτές που παράγουν τα άλλα ΠΜΣ. Εν πολλοίς οφείλεται στη γραμματοσειρά FETA που είναι και κομψή και πιο ανθρώπινη (sic) από την Maestro (πιο κρύα κι από υγρό άζωτο), την Opus και τις άλλες.
• Άπαξ και μάθεις τον κώδικα δεν ασχολείσαι τόσο με το formatting όσο με το περιεχόμενο της σύνθεσης.
• Θεωρητικά άπειρες δυνατότητες σημειογραφίας, ούτε στο ελάχιστο δεν πλησιάζουν τα άλλα ΠΜΣ. Αν φανταστείς κάτι μπορείς να το κάνεις.
• Απόλυτος έλεγχος του υλικού, χειρίζεσαι αριθμούς και οι αριθμοί, εκτός κι αν τους χειρίζονται πολιτικοί, φέρνουν πάντα ευτυχία.
• Δέχεται αρχεία MusicXML και τα μετατρέπει σε Lilypond. Αυτό διευκολύνει πολύ την κοπιώδη εργασία του να περάσεις χοντρικά τις νότες. Παλιότερες εκδόσεις του musescore εξήγαγαν σε αρχεία .ly (Lilypont), δυστυχώς όχι η τελευταία έκδοση.
• Τα help files είναι πληρέστατα, τα snippets βοηθητικότατα και η κοινότητα χρηστών εξυπηρετικότατη.

ΚΑΤΑ
• Κώδικας, αυτή η λέξη για κάποιους είναι από μόνη της αποτρεπτική.
• Δεν βλέπεις τις νότες όταν τις γράφεις.
• Δεν ακούς τις νότες όταν τι γράφεις. Εξάγει σε MIDI file, δεν μπορεί όμως να συγκριθεί κάτι τέτοιο, με το επίπεδο παιξίματος του Sibelius για παράδειγμα.
• Άνθρωποι είμαστε, λάθη κάνουμε κι εδώ τα λάθη δεν συγχωρούνται. Ένα κόμμα να λείπει, compilation δεν γίνεται κι αν η παρτιτούρα είναι μεγάλη, ψάχνεις ψύλλο στ΄ άχυρα. Θα βοηθούσαν προγράμματα όπως το texmaker και το BBedit στο debugging, δυστυχώς όμως μόνο το TeXShop είναι συμβατό με το Lilypond και το TeXShop δεν είναι και το καλύτερο. Αν εκδώσει εκτελέσιμο (dmg) το Frescobaldi θα είναι μια λύση.
• Δύσκολα ένα γέρικο άλογο μαθαίνει νέα κόλπα.

Δίνω τώρα τα τέσσερα πρώτα μέτρα από το Sofeggietto σε Finale, Sibelius, musescore, Dorico και Lilypond για σύγκριση. Δεν έχω “πειράξει” τις παρτιτούρες, ό,τι δίνει το default template του κάθε προγράμματος:





Κάντε κλικ στις εικόνες για μεγέθυνση

11 σχόλια:

γεράσιμος μπερεκέτης είπε...

Εξαιρετικά διαφωτιστικά όσα παραθέτεις.
Έχεις δίκιο για το γέρικο άλογο.
Μήπως να ξαναθυμηθούμε το χέρι; Ίσως ξαφνικά να αφυπνιστούν γραφιστικές ιδέες, κρυμμένες τόσα χρόνια κάτω από το χαλι (το άφησα επίτηδες χωρίς τόνο, για να διαλέξεις συλλαβή) το χαλι των διαφόρων προγραμμάτων...

Dimitri Sykias είπε...

Θυμάμαι τον Κλεάνθη Γρίβα στις “Πύλες του Ανεξήγητου” του Χαρδαβέλλα να λέει ότι η Αναγέννηση (Καρτέσιος, Γαλιλαίος, Νεύτωνας) είναι η πηγή όλων των κακών της ανθρωπότητας! Δεν αποκλείεται να έχει και δίκιο. Στο Quora διάβασα επίσης το εξής ενδιαφέρον: “αναλφάβητος στον 21ο αι. θα είναι αυτός που δεν θα μπορεί να μάθει, να ξεμάθει και να ξαναμάθει”. Κι οι συνθέτες του παρελθόντος κώδικα έγραφαν (δες τα ορνιθοσκαλίσματα του Beethoven) κι είχαν τους αντιγραφείς και τους εκδοτικούς οίκους να κάνουν το debugging και το compilation.

γεράσιμος μπερεκέτης είπε...

Οι μηχανές είναι σύμφυτες με τον κομφορμισμό. Δεν φτιάχνεται μία μηχανή για να εξυπηρετήσει τις ιδέες ενός, αλλά για να εξυπηρετήσει ή και να διαμορφώσει ή ακόμα (ηθελημένα ή άθελα) για να περιχαρακώσει τον μέσο όρο. Τα ορνιθοσκαλίσματα του Μπετόβεν ως πρόβλημα προς επίλυση των εκδοτών προχωράνε τις εκδοτικές τεχνικές της εποχής του και τις εμπλουτίζουν. Αντιθέτως τα προγράμματα μουσικής σημειογραφίας στα χέρια των συνθετών περιορίζουν βασανιστικά τις συνθετικές ιδέες σε πλαίσια, από τα οποία για να ξεφύγει ένας συνθέτης, γίνεται ο ίδιος ένας μικροεφευρέτης διαφορών τρικ, εκ των οποίων πολύ λίγα ενσωματώνονται στα προγράμματα έστω ως plugins - αν και εφόσον βρεθεί ένας προγραμματιστής που θα συμμεριστεί ένα μέρος των αναγκών που γέννησαν τα τρικ. Οι αντιγραφείς διάσημων συνθετών, είναι γνωστό, ότι δουλεύουν συνδυάζοντας προγράμματα διαφορετικού προσανατολισμού, π.χ. προγράμματα σημειογραφίας και προγράμματα γραφιστικά. Όπως επίσης είναι γνωστό (και εξ ιδίας πείρας) ότι οι συνθέτες που οι ίδιοι «παράγουν-εκδίδουν» τις παρτιτούρες τους, φλερτάρουν παραλλήλως με τη δυνατότητα παραγωγής μιας αυτόματης ηχητικής μακέτας των έργων τους, δυνατότητα που έχει αναπτυχθεί παρέα με τον σημειογραφικό τομέα των προγραμμάτων μουσικής σημειογραφίας, αλλά και εγκλωβίζονται στις περιορισμένες «ερμηνευτικές» δυνατότητες των προγραμμάτων αυτών. Αλλά και οι κατασκευαστές των προγραμμάτων είναι υποχρεωμένοι να πελαγοδρομήσουν ανάμεσα στο σημειογραφικό θέμα και το ψευδοερμηνευτικό για να υπηρετήσουν την γόνιμη-άγονη αγωνία του συνθέτη να ακούσει έστω σε μορφή μακέτας το έργο του.
Πολύ λίγοι συνθέτες έχουν την δυνατότητα να μεταφέρουν σε απόλυτο βαθμό τον προβληματισμό τους για να δημιουργηθούν μηχανές που να τον εξυπηρετούν. Κλασσικό παράδειγμα η Πολυαγωγία. Η ιδέα ήταν του Ξενάκη, αλλά δεν κατασκευάστηκε από τον Ξενάκη. Δούλεψε γι' αυτήν το CEMAMu και επιχορηγήθηκε από την γαλλική κυβέρνηση.
Ουσιαστικά το πρόβλημα του περιορισμού που γεννούν τα προγράμματα μουσικής σημειογραφίας, δεν είναι ένα πρόβλημα τεχνικής φύσεως αλλά κοινωνικής. Δεν είναι δυνατόν να εξατομικευτεί, δηλαδή ένας συνθέτης να έχει παραλλήλως άψογες σπουδές στον προγραμματισμό ώστε να κατασκευάσει ο ίδιος τα εργαλεία του. Αντιθέτως απαιτεί την σύμπραξη πολλών και εξειδικευμένων υπό την μορφήν ομάδας παραγωγής, κάτι που αποτελεί προνόμιο των λίγων και καθιερωμένων συνθετών. Οι υπόλοιποι …. σκάβουν.

Μιχάλης Χριστιάς είπε...

Έχω χρησιμοποιήσει αρκετά την Lilypond και νομίζω ότι το άρθρο περιγράφει με ακρίβεια τα υπέρ και τα κατά.
Θα πρόσθετα τα εξής:
Κατά:
Αν δέχεται κανείς τις προεπιλογές (defaults) της Lilypond όλα δουλεύουν γρήγορα, αν όμως θελήσει κάτι διαφορετικό, π.χ. να μετακινήσει ένα σημείο δυναμικής ή ένα φθογγόσημο από την προκαθορισμένη θέση θα δυσκολευτεί αρκετά.
Υπέρ:
Η ανάμειξη κειμένου και μουσικής γίνεται με πολύ φυσικό τρόπο στην Lilypond καθιστώντας την το καλύτερο εργαλείο για να γράψει κανείς ένα θεωρητικό κείμενο όπως για παράδειγμα ένα βιβλίο Αρμονίας.

Σκέπτομαι να αντικαταστήσω την Lilypond με το Musescore γιατί τυπώνει το ίδιο ωραία (γραμματοσειρά Emmentaler) και είναι πολύ πιο εύχρηστο. Προσπαθώ πάντοτε να χρησιμοποιώ ελεύθερο - ανοικτό λογισμικό.
Όμως αυτό το τελευταίο πλεονέκτημα της Lilypond (ανάμειξη κειμένου και μουσικής) είναι αποφασιστικό, ελπίζω το Musescore να κάνει κάποια βήματα βελτίωσης σε επόμενες εκδόσεις.

Είναι δύσκολο να μάθει κανείς σε βάθος ένα πρόγραμμα μουσικής σημειογραφίας ώστε να το κρίνει με εγκυρότητα, για αυτό είναι χρήσιμο να μοιραζόμαστε τις εμπειρίες που έχουμε με αυτά.

Dimitri Sykias είπε...

Γεια σου Μιχάλη
ενδιαφέρον το σχόλιο σου. Aναρωτιέμαι αν το Lilypond υποστηρίζει υφενισμό και γενικότερα μια πιο προχωρημένη μορφοποίηση κειμένου με στόχο ένα καλαίσθητο και χρηστικό μουσικολογικό / ωδειακό κείμενο (Ασκήσεις, Θεωρία κ.τ.λ.). Πέρα από κάποια πρώτα πειράματα δεν έχω την πολυτέλεια του χρόνου να το ψάξω περισσότερο. Η μουσική γραμματοσειρά που χρησιμοποιεί είναι όντως από τις καλύτερες αν όχι η καλύτερη.

Αν, κι όπως γράφεις, προτιμάς τα ανοικτά λογισμικά, εντούτοις το Dorico με την καινοτομία των Frames, δίνει, ή πιο σωστά θα δίνει, την δυνατότητα ευέλικτης ανάμιξης κειμένου και μουσικής (κάτι σαν το InDesign για μουσική). Η γραμματοσειρά Bravura επίσης, συναγωνίζεται σε κάλλος την Emmentaler…

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

Μιχάλης Χριστιάς είπε...

Δύο δείγματα, ρυθμικές ασκήσεις και φύλλο εξετάσεων Οργανογνωσίας με πολύ κείμενο και λίγη μουσική :
Rythmisian Lilypond Samples

Πολύ ενδιαφέρον δείγμα είναι και το βιβλίο του Clementi που υπάρχει στο imslp:
Clementi
(Αναζήτηση στην σελίδα για "Lilypond")

Τελευταία έριξα μια πρόχειρη ματιά στο MuseScore 2.1 και φαίνεται να διαθέτει πλαίσια κειμένου (frames), δεν γνωρίζω αν είναι κάτι παρόμοιο με αυτό που υπόσχεται το Dorico.
Έτσι το MuseScore πλησιάζει κάπως, αλλά χρειάζονται ακόμη μερικές δυνατότητες για να γίνεται η ανάμειξη κειμένου και μουσικής με φυσικό τρόπο, χωρίς τεχνάσματα.

Dimitri Sykias είπε...

Εξαιρετικά και ζηλευτά τα δείγματα που μου στείλατε. Μιας και σας αρέσει το ελεύθερο λογισμικό το LibreOffice διαθέτει ένα plugin που ενσωματώνει κώδικα Lilypond μέσα σε έγγραφο κειμένου. Αυτό είναι πολύ βολικό, αν θέλει κανείς να κάνει διορθώσεις επί τόπου. Το ίδιο βέβαια κάνει και το XeLaTeX, μάλιστα με ένα package δίνεται η δυνατότητα χρήσης της Emmentaler μέσα στο κώδικα (περιορισμένη χρήση συμβόλων μόνο).

Μιχάλης Χριστιάς είπε...

Είναι δύσκολο να γνωρίζει κανείς και να χρησιμοποιεί πολλά διαφορετικά προγράμματα.
Αν αποφάσιζα να συνδυάσω την Lilypond με κάποιο άλλο εργαλείο θα ήταν μάλλον HTML (γραμμένη στο χέρι).
Προσπαθώ όμως, για απλότητα, να κάνω την δουλειά χρησιμοποιώντας ένα μόνο πρόγραμμα.

Με την ευκαιρία, Δημήτρη, θα ήθελα να σε συγχαρώ για την ακούραστη δημιουργικότητά σου. Είναι σημαντική προσφορά όλα αυτά που δημοσιεύεις και μοιράζεσαι.

Dimitri Sykias είπε...

Σ’ ευχαριστώ πολύ για τα καλά σου λόγια. Αν ανεβάσεις κάτι, ή αν έχεις κάποιο ιστολόγιο στο διαδίκτυο, πες μου.

Μιχάλης Χριστιάς είπε...

Σε αυτήν την ιστοσελίδα (πάνω αριστερά στο περιθώριο):
Ρυθμοτεχνικός
υπάρχουν δύο links που οδηγούν σε ένα ιστολόγιο και ένα κανάλι στο youtube.
Πολύ σπάνια όμως ανεβάζω κάτι.

Dimitri Sykias είπε...

Ευχαριστώ πολύ.