ελληνική μουσική
292 online   ·  204.221 μέλη

Περιβάλλον ανάπτυξης προγραμμάτων επεξεργασίας ήχου

xrousaios
Περαστική Νότα
Chat
11.07.2013, 13:51

Καλημέρα,

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

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

Ο γιός μου έχει σπουδάσει Μουσική Τεχνολογία και Ακουστική στο ΤΕΙ Κρήτης και αναπτύσει προγράμματα επεξεργασίας ήχου στην MAX/MSP. Όπως μου λέει, η MAX/MSP είναι ιδανική γιά prototyping, αλλά δεν μπορεί με αυτήν να υλοποιήσει : 
- Την αισθητική και καλλιτεχνική προσέγγιση που αναζητά στην σχεδίαση του GUI των εικονικών συσκευών και, 
- Μία ευέλικτη και δυναμική επεξεργασία των δεδομένων, την οποία να ελέγχει ο ίδιος  

Προκειμένου να τον συνδράμω όσο μπορώ, αναζητώ ένα κατάλληλο περιβάλλον ανάπτυξης προγραμμάτων γιά την δημιουργία εικονικών ψηφιακών συσκευών επεξεργασίας ηχητικού σήματος (π.χ. step sequencer, ψηφιακή κονσόλα, μείκτες κ.λ.π).

Ως κατάλληλο, θα θεωρούσα το εξής GUI περιβάλλον :
- Δυνατότητα σχεδιασμού όλων των εικονικών πλήκτρων (Faders, sliders, Knobs κ.λ.π), με καλή αισθητική.
- Δυνατότητα χρήσης γλώσσας προγραμματισμού C++ και Object Oriented C ή όποια άλλη γλώσσα που να θεωρείται κατάλληλη γιά επεξεργασία ηχητικού σήματος.  

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

Ευχαριστώ όλους γιά την προσοχή σας

Γιώργος Νικ. Κωνσταντακόπουλος   


#1   
mpjxprt
Συγχορδία Μινόρε
Chat
11.07.2013, 23:25

… χμμ … δυσκολάκι … {#emotions_dlg.eek}

Θα προσπαθήσω να περιγράψω τις διαθέσιμες προγραμματιστικές πλατφόρμες, σύμφωνα πάντα με τη δική μου εμπειρία  …

  1.  ΜΑΧ/MSP (και puredata (pd) για windows) – H πιο παλιά πλατφόρμα – αρχικά σε MAC-  ισχυρή και ευέλικτη, αλλά με 3 σοβαρά μειονεκτήματα … δουλεύει σωστά μόνο σε Mac, δεν μπορείς να φτιάξεις αυτόνομα προγράμματα  και φυσικά το interface του(ς) είναι σαφώς ξεπερασμένο …
  2. NI Reaktor. Είναι μια πλατφόρμα με επίσης τεράστιες δυνατότητες, πολλά free προγραμματάκια και βοηθήματα, παραμετροποιήσιμο –πια- interface και πολύ support  … το πρόβλημα εδώ είναι ότι δεν υποστηρίζονται γλώσσες προγραμματισμού (όχι με την έννοια της γλώσσας) αλλά μόνο γραφικό περιβάλλον (πχ. Αν θέλεις να προσθέσεις /αθροίσεις δύο audio σήματα δεν γράφεις κώδικα, απλά προσθέτεις ένα κουτάκι «αθροιστή» με δύο εισόδους και τις συνδέεις αντίστοιχα)
  3. (Steinberg) VST πλατφόρμα.  Εδώ παρέχεται ένα σταθερό Ι/Ο περιβάλλον, και ο προγραμματιστής –απερίσπαστος-  πρέπει να παλέψει με την ουσία (αλγόριθμοι) και το περιβάλλον (GUI) – Δηλαδή πρέπει να τα φτιάξει μόνος του (σε C (ή C++) αν θυμάμαι καλά) … Βέβαια, υπάρχουν αρκετές «έτοιμες» βιβλιοθήκες κώδικα, αλλά θέλει πολλή … πολλή … πολλή μιλάμε … δουλειά.
  4. Καμία ειδική audio πλατφόρμα, μόνο C++ …  εδώ, εκτός από τα όμορφα του Νο 3, έχεις να παλέψεις και με θεματάκια επικοινωνίας  (π.χ. Audio drivers !!! ΧΑ !! … η κόλαση η ίδια  !!! ). Εκτός βέβαια αν φιλοδοξείς να φτιάξεις Cubase ή Logic, οπότε από εδώ πρέπει να ξεκινήσεις  …

Καταλαβαίνετε βέβαια ότι οι δύο πρώτες πλατφόρμες αναφέρονται κυρίως σε ερευνητές/φοιτητές/χομπίστες και οι δύο τελευταίες σε εταιρείες (ειδικά η 4). Απ τη άλλη, η Steinberg (No 3 ) έχει ανοιχτό το VST πρωτόκολλο για  προφανείς λόγους, και έχει προσελκύσει  πολλούς (και επαγγελματίες και ερασιτέχνες) προγραμματιστές και εξαιρετικές δουλειές … {#emotions_dlg.rockon}

Αυτά σε πρώτη φάση …

/Πέτροc Cool


-----------------

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

[ τροποποιήθηκε από τον/την mpjxprt, 11-07-2013 23:27 ]


#2   
xrousaios
Περαστική Νότα
Chat
13.07.2013, 16:59

Ευχαριστώ γιά τον κόπο και τον χρόνο.

Φαίνεται ότι, εξαιρουμένης της περίπτωσης 4, οι άλλες περιπτώσεις προσφέρουν μία κάποιοα λύση.
Άρα, τα δεδομένα έχουν ως εξής :
- Η ΜΑΧ, δεν προσφέρει καλό GUI και αντιπαθεί τα Windows, άρα μειώνει και την εμπορευσιμότητα του προϊόντος.
- Η ΝΙ Reactor, προσωμοιάζει στην ΜΑΧ, άρα δεν αφήνει πολύ χώρο ελεύθερο γιά αυτοδημιουργία σε επίπεδο αλγορίθμων.
- Η VST πλατφόρμα, επβάλλει να τρέχουν οι εφαρμογές ως ένθετες σε αυτήν. Ωστόσο, παίρνει πάνω της το γύρω περιβάλλον και τις συνδέσεις και αφήνει πολύ χώρο γιά αυτοδημιουργία στους αλγορίθμους και στο GUI.   

Στο πλαίσιο της VST πλατφόρμας, έτσι όπως την κατάλαβα και ελπίζω να μην έχω κάνει αντιληπτικό λάθος, έψαξα και κάποιες άλλες περιπτώσεις που μπορούν να "κουμπώσουν" πάνω της:
- C++ σε περιβάλλον Visual Studio ή Eclipse: Πέρα απο τις βιβλιοθήκες που υπάρχουν, είναι εφικτό, με πολλή δουλειά, να δημιουργήσει κανείς ΚΑΙ τις δικές του βιβλιοθήκες.  
- Java σε περιβάλλον .ΝΕΤ : Την απέρριψα στο τέλος επειδή νομίζω ότι, λόγω του interpreter, θα έχει αντιληπτή χρονική υστέρηση στην έξοδο του προγράμματος. 

Προσθέτω ότι, ως παλιός -πολύ παλιός- προγραμματιστής, ξέρω καλά πόσος κώδικας χρειάζεται για να υλοποιήσεις κάτι απο την αρχή. Επίσης ξέρω ότι, ένα καλό GUI αποτελεί το 30% σχεδόν της συνολικής δουλειάς.
Αν το δείς μακροπρόθεσμα όπως ο γυιός μου που είναι σε σχετικά μικρή ηλικία ακόμα, μάλλον αξίζει τον κόπο. 

Ύστερα από αυτά, μία πιθανή λύση θα ήταν :
-  C++  μαζί με κάποιο γραφικό περιβάλλον.
- Δέσιμο στην VST πλατφόρμα
- Συνεργασία στην αρχή με έναν γραφίστα (φαίνεται αναπόφευκτο) γιά την σχεδιάση των εικονικών πλήκτρων, έως ότου δημιουργηθεί μία καλή βιβλιοθήκη εικόνων.

Λοιπόν, χρειάζεται αρκετή μελέτη ακόμα το πράγμα προκειμένου να ισορροπίσει κάπου.

Σε ευχαριστώ πολύ και πάλι γιά την καλή σου διάθεση.  

Γιώργος Νικ. Κωνσταντακόπουλος 


#3   
danijoss
Περαστική Νότα
Chat
13.07.2013, 20:48

Καλησπέρα.

Εκ των πραγμάτων το σημαντικότερο πράγμα είναι το deployment, και πολύ σημαντικό είναι το αν θα πρέπει να μπορεί να πουληθεί το αποτέλεσμα, ή αν είναι για προσωπική χρήση, freeware, open source κτλ. 

Το εξαιρετικό εργαλείο για πάσης φύσεως audio δημιουργίες είναι το Supercollider. Είναι free και open source (GPL), οπότε και οι δημιουργίες με αυτό θα πρέπει να διανέμονται με τον ίδιο τρόπο. Επίσης, δεν βοηθάει καθόλου για UI. Από την άλλη, επικοινωνεί με τον "έξω κόσμο" μέσω Open Sound Control, του πλέον σύγχρονου πρωτοκόλλου για τέτοια θέματα, χρησιμοποιώντας μάλιστα tcp ή udp interface. Επομένως, ένα οποιοδήποτε εκτελέσιμο, φτιαγμένο σε οποιοδήποτε περιβάλλον με οποιονδήποτε τρόπο σε οποιαδήποτε γλώσσα, που να μπορεί να δεχθεί μια βιβλιοθήκη για Open Sound Control δικτύωση θα μπορεί να επικοινωνήσει με αυτό, το οποίο μπορεί να τρέχει στο background σαν daemon. Το Supercollider χρησιμοποιεί τη δική του object-oriented γλώσσα, που μοιάζει λίγο με Smalltalk, και διαθέτει μια αχανή βιβλιοθήκη με αντικείμενα σαν building blocks για οτιδήποτε έχει σχέση με audio και όχι μόνο.

Για να γίνει κάτι σε C++/Obj C κτλ, το σημαντικό είναι το πώς ζητάμε να τρέχει, και πώς να επικοινωνεί με άλλα προγράμματα, ώστε να έχει και χρηστική αξία. Δηλαδή, αν ζητάμε κάτι που να μπορεί να συνεργαστεί εύκολα με ένα DAW, προφανώς θα φτιάξουμε plugin. Αν θέλουμε το τελευταίο να είναι και standalone, μπορούμε εύκολα να φτιάξουμε έναν μικρό host που το μόνο που θα κάνει είναι να δίνει I/O στον audio driver. Προφανώς, το ζήτημα του cross-platform είναι αρκετά περίπλοκο.

Επίσης, μιλάμε π.χ. για ένα step-sequencer που θα κάνει sequencing σε τι; Αν χρειαστεί βιβλιοθήκη ήχων, πέρα από τη δημιουργία της ίδιας, θα χρειαστεί και file I/O, indexing, metadata engine κτλ. Αν μιλάμε για έναν ψηφιακό "μείκτη", κοινώς ένα summing engine που προφανώς θα πρέπει να κάνει κάτι παραπάνω από προσθέσεις, από ΤΙ πηγές; Αν θέλουμε summing των αναλογικών εισόδων του audio interface, πάμε για ένα εκτελέσιμο που να χρησιμοποιεί το εκάστοτε API για interfacing με audio drivers (Core Audio/HAL, ASIO, κτλ). Αν μιλάμε για streaming από τον δίσκο, και δεν θέλουμε να φτιάξουμε ένα καινούριο DAW, είναι καλύτερο να κάνουμε κάτι που να δέχεται ήχο μέσω Rewire ή κάποιου 3rd party virtual interapplication audio bus driver (π.χ. soundflower), και να επιστρέφει σε αυτόν, ή να επιστρέφει στο hardware, στο δίσκο, ή και σε όλα ακόμα.

Επομένως, κατά τη γνώμη μου, το ΤΙ θέλουμε να κάουμε θα μας δείξει και τα εργαλεία για να πραγματοποιηθεί, ώστε να "δένει" λειτουργικά με τα υπόλοιπα audio εργαλεία που θα μπορούσε να χρησιμοποιήσει κάποιος.

Ελπίζω να βοήθησα και να μην μπέρδεψα.

Dani Joss

music production services

www.danijoss.com


#4   
xrousaios
Περαστική Νότα
Chat
14.07.2013, 18:27

Δεν μπέρδεψες καθόλου ! Έτσι όπως τα λές είναι.

Άλλωστε, όλα αυτά είναι και μέρος του γενικώτερου προβληματισμού, περί ενός καλού συνδιασμού UI και εργαλείων ανάπτυξης.
Ο βασικός περιορισμός είναι ότι, οι εφαρμογές θα διατίθενται πρός πώληση. Η επαγγελματική απασχόληση περιγράφεται ως sound engineer and audio application designer.
Επομένως δεν μπορούν να χρησιμοποιηθούν freeware και opensource εργαλεία.

Στη γενική κατεύθυνση που ψάχνω αυτόν τον καιρό, έπεσα πάνω στο Microsoft Expression Blender. Δεν το έχω ψάξει καλά ακόμα γιά να δώ τι,  πρόσθετα και βιβλιοθήκες τρίτων, δέχεται.
Επίσης, μου είναι ακόμα ασαφές αν διαθέτει Interpreter ή παράγει native κώδικα.

Γενικώς, το ψάξιμο συνεχίζεται, αλλά, δεν μπορεί να κρατήσει γιά πολύ. 

Σε ευχαριστώ γιά την καλή σου διάθεση.


#5   
danijoss
Περαστική Νότα
Chat
15.07.2013, 11:22

Ok... επομένως, η C/C++ είναι μάλλον μονόδρομος. Παρεμπιπτόντως, ο κώδικας για DSP σπάνια γράφεται object-oriented... (περισσότερο για να γλιτωθεί το overhead με method lookup). Ένα plugin δηλαδή είναι συνήθως ένα C struct με functions και "παραδοσιακό" memory management. Το UI και τα παρεμφερή βέβαια μπορεί να είναι διάφορα πράγματα. Αν δουλεύουμε ένα standalone application, ουσιαστικά δημιουργούμε views σε ένα παράθυρο, χρησιμοποιώντας τις βιβλιοθήκες του λειτουργικού. Εδώ είναι και το μη cross-platform κομμάτι... το UI, τα disk I/O, audio I/O, και γενικά η επικοινωνία με τον έξω κόσμο, καλό είναι να γράφονται με "ορθόδοξο" τρόπο σε σχέση με το τι θεωρεί το λειτουργικό αποδεκτό, ώστε να μην προκύπτουν και προβλήματα με updates κτλ. Είναι καλό να υποστηρικτούν τουλάχιστον 2 λειτουργικά συστήματα (Mac OSX και Windows), ενώ αν υπάρχει νόημα να τρέχει η εφαρμογή σας σε tablets ή/και κινητά, η αγορά είναι τεράστια και δεν πρέπει να αγνοηθεί, οπότε θα πρέπει να υποστηριχθεί και iOS, Android, τουλάχιστον. Φυσικά όλα αυτά μπορούν να γίνουν σιγά σιγά.

Εννοείται, επειδή όπως σίγουρα γνωρίζετε ένα βασικότατο θέμα στον προγραμματισμό είναι να μην ξαναεφευρίσκουμε τον τροχό, πολλές φορές είναι καλύτερη ιδέα να κάνουμε ένα plugin, αντί για application. Αυτό είναι και εμπορικά καλύτερη λύση, καθώς το κόστος του development είναι σαφώς χαμηλότερο, και δεν υπάρχει ζήτημα conversion του target group μας: εν ολίγοις, δεν "ζητάμε" από τον υποψήφιο αγοραστή να σταματήσει να δουλεύει με το αγαπημένο του DAW ή άλλο application, απλά προσθέτουμε μια δυνατότητα επιπλέον σε αυτό. Επομένως, η αγορά είναι πολύ πολύ μεγαλύτερη και πάλι. Στην περίπτωση των plugins, έχουμε targets για VST, που είναι το προτεινόμενο format για Win-PCs, καο όπου μπορούμε παράλληλα να έχουμε Mac VSTs για περιορισμένα όμως applications σχετικά αναίμακτα, αλλά αν μας ενδιαφέρει η αγορά των Mac users που στο audio είναι τεράστια, πρέπει να υποστηρίξουμε και Audio Units. Εκεί τα πράγματα είναι σίγουρα πιο εύκολα στο development από πλευράς optimisation, συμβατότητας με hosts κτλ. Τώρα, αν θέλουμε και άλλους υποψήφιους users, θα κοιτάξουμε το θέμα του RTAS ή/και AAX για Protools, αλλά για "μικρούς", από πλευράς business, developers, τα targets γίνονται πολλά και μάλλον θα γίνει δύσκολη η υποστήριξη.

Τα αναφέρω όλα αυτά γιατί υπάρχουν έτοιμα παραδείγματα, τα οποία μπορούν να τροποποιηθούν ώστε να κάνουν αυτό που θέλουμε. Π.χ. υπάρχει έτοιμο VST plugin template, και για FX και για VSTi (instrument δηλαδή), που στην ουσία δεν κάνουν τίποτα, αλλά στήνουν το memory allocation και βασικά I/O να είναι έτοιμα για τις πιο απλές δουλειές, με δοκιμασμένο και γρήγορο κώδικα. Ομοίως, τα developer tools της apple δίνουν παραδείγματα και templates για AU fx/instruments, όπως και HAL (harware abstraction layer - βασικά επικοινωνία με driver) κώδικα, και πλούσιο documentation. Για το UI, το κάθε format θέλει λίγο διαφορετικά πράγματα. Κατ' αρχήν, το development μπορεί να αρχίσει χωρίς αυτό, καθώς όλες οι public μέθοδοι (για user interaction δηλαδή) θα είναι δηλωμένες, με τύπους, input ranges κτλ, οπότε ο host θα φτιάξει αυτόματα ένα απλό interface με generic sliders το οποίο θα είναι πλήρως λειτουργικό. Στη συνέχεια, αφού το DSP θα δουλεύει κανονικά, αυτό που γίνεται με τον έναν ή άλλο τρόπο είναι να ζητάμε από τον host (ΟΧΙ από το λειτουργικό!) ένα viewport. Σε αυτό το viewport βέβαια, φορτώνουμε ό,τι εικόνα θέλουμε. Καλό είναι να μην το παρακάνουμε με τα graphics βέβαια... Το συνηθισμένο είναι να έχουμε μια "μάσκα" με το background, και τα elements ένα ένα να τοποθετούνται πάνω από αυτήν, ορίζοντας συμπεριφορές ποντικιού, ή και touch κτλ. Πολύ βασικό να κρατήσουμε το UI ασύγχρονο σε σχέση με το audio.

Mπορεί στην αρχή όλα αυτά να φαίνονται πολλή δουλειά, αλλά πραγματικά υπάρχει πολύ πράγμα ήδη έτοιμο, ανάλογα πόσο περίπλοκο είναι αυτό που θέλουμε να κάνουμε. Θα έλεγα πως η διαφορά με visual εργαλεία όπως το Max/MSP, από πλευράς workflow, είναι ότι δεν θα προγραμματίσουμε ποτέ κατευθείαν πάνω σε UI "objects". Ο κώδικας οφείλει να είναι 100% abstract, να είναι γραμμένος στο ενδεδειγμένο στυλ, ανάλογα με την πλατφόρμα μας, και το UI να είναι κουμπωμένο από πάνω, συνήθως αργότερα. Οπότε, προσωπικά δεν θα ανησυχούσα για αυτό τόσο για αρχή.

Τέλος, καλή αρχή αποτελούν τα fx plugins, σε αντίθεση με τα synths, γιατί δεν υπάρχει disk I/O και περίεργο memory management: Συνήθως, ένα buffer μπαίνει, ένα βγαίνει (συχνά μάλιστα αυτό είναι το ίδιο, αυτό που λέγεται in-place processing), και το πολύ να θέλουμε λίγη ελάχιστη μνήμη για feedback μεταξύ διαφορετικών signal vectors. Το target είναι επίσης πολύ απλό, συνήθως μόνο ένα αρχείο με ελάχιστα resources.

Αυτά από εμένα, αν μπορώ να βοηθήσω με κάποιον άλλο τρόπο, θα χαρώ να το κάνω. Σημ: εδώ δεν μπαίνω πολύ συχνά, αλλά μπορείτε να βρείτε email στη σελίδα μου: www.danijoss.com (δεν το γράφω εδώ για προφανείς λόγους).


#6   
danijoss
Περαστική Νότα
Chat
15.07.2013, 11:26

Α, σε σχέση με το development environment: για mac αυτό είναι μονόδρομος, είναι τα πάρα, πάρα πολύ καλά developer tools της apple (xCode κτλ). Για windows δυστυχώς δεν γνωρίζω, αλλά γενικά το visual programming δεν "πάει" πολύ καλά με το audio... αφήστε που δεν θα βρεθούν εύκολα και τα templates.


#7   
mpjxprt
Συγχορδία Μινόρε
Chat
16.07.2013, 14:03

O Φίλτατος danijoss βλέπει τα πράγματα μάλλον από τη σκοπιά του Επαγγελματία και μάλιστα σε iOs (Mac, Apple) πλατφόρμα –την οποία ελάχιστα γνωρίζω (ομολογώ πως δεν ήξερα καθόλου το Supercollider) …

Προσωπικά, Φίλτατε xrousaios, αν ήμουν στη θέση σου θα προσπαθούσα να ξεκαθαρίσω από ποια «σκοπιά» βλέπω τα μουσικά πράγματα.

Αν είμαι περισσότερο μουσικός (και θέλω εργαλεία για τον ήχο μου ή να διερευνήσω περισσότερο κάποια πράγματα) θα διάλεγα το Reaktor (της Native Instruments –NI) ως πρώτη επιλογή και κατόπιν το pd (για windows πλατφόρμα) – για Mac δεν ξέρω, αλλά φαντάζομαι εκεί κατατάσσεται το Supercollider, και φυσικά το ΜΑΧ/MSP. 

Αν είμαι προγραμματιστής και προσανατολίζομαι σε μουσικές εφαρμογές -σε περιβάλλον windows-, τότε η VST πλατφόρμα –αρχικά- και η C++ είναι μονόδρομος (φτιάχνεις και δοκιμάζεις αλγορίθμους, βιβλιοθήκες, interfaces κλπ). Και σε περίπτωση που θέλεις να επεκταθείς, μπορούν όλα να χρησιμοποιηθούν στην κατηγορία 4 (όπως προείπα). Για θέματα Mac (ή και Cross Platform) θα συμφωνήσω με τον φίλτατο danijoss.

 

/Πέτροc Cool

  


#8   
xrousaios
Περαστική Νότα
Chat
18.10.2013, 10:06

Πέρασε καιρός αλλά, νομίζω ότι αυτά που προέκυψαν στο μεταξύ αξίζουν μιάς αναφοράς πρός όλους όσοι ενδιαφέρονται γιά μουσικόπρογραμματισμό.

  1.  Ερεύνησα τις δυνατότητες της πλατφόρμας Juce (www.juce.com). Αυτή η πλατφόρμα, έχει χρησιμοποιθεί και γιά την ανάπτυξη της τελευταίας έκδοσης της MAX/MSP.  Τα κύρια χαρακτηριστικά της είναι τα εξής :
    - Αποτελείται από μία πολύ μεγάλη συλλογή κλάσεων και συναρτήσεων σε C++ γιά την ανάπτυξη οποιουδήποτε είδους εφαρμογών.
    - Διαθέτει μία εξ ίσου μεγάλη γκάμα έτοιμων κλάσεων και συναρτήσεων γιά Audio Programming.
    - Προσφέρει ένα "Περιβάλλον Ανάπτυξης", γιά την διαχείριση του κώδικα. Δεν είναι ακριβώς ένα IDE, είναι ένα εργαλείο που βοηθάει στην διατήρηση της συμβατότητας του κώδικα με διαφορετικές πλατφόρμες.
    - Μέσα απο το εργαλείο που διαθέτει (IntroJucer) Μπορεί κανείς να εκδόσει τον κώδικά του σε πολλές διαφορετικές πλατφόρμες(Visual studio, Xcode, Android, iOS...) 
    - Παράγει κώδικα γιά VST και γιά AU  σε
    - Το κυριώτερο : Είναι λογισμικό ανοικτού κώδικα, παρέχεται ολόκληρο κάτω από την άδεια  GNU Public Licence, αλλά προσφέρει και Εμπορική άδεια χρήσης ανά Εταιρεία και major version και όχι ανάπροϊόν ή ετήσια.
  2. Επειδή η τεκμηρίωση που διατίθεται στο site είναι κάπως χαώδης, προσπάθησα και έκανα ένα συμμάζεμα. Δηλαδή, από τις σκόρπιες(?) σελίδες τεκμηρίωσης δημιούργησα μία μικρή βάση δεδομένων και έναν τρόπο παρουσίασης αυτών (με Access και VB).
  3. Ένας καλός άνθρωπος από το New Jersey, έκανε μία μικρή Audio εφαρμογή με το Juce και εξηγεί τον τρόπο που εργάσθηκε  βήμα πρός βήμα στην σελίδα του http://blog.artlogic.com/2013/02/20/developing-audio-applications-with-juce-part-1/       

Όπως συμβαίνει συνήθως με το ανοικτό λογισμικό, η τεκμηρίωση δεν είναι το καλλίτερο σημείο του. Παρ' όλα αυτά, σχημάτισα την ισχυρή εντύπωση  ότι αυτή η πλατφόρμα είναι ένα εξαιρετικό εργαλείο, υπό την προϋπόθεση ότι θα ξοδέψη κανείς αρκετό χρόνο να την εξερευνήση και να μάθη να την χρησιμοποιεί με ευχέρεια.

Πρός αυτή την κατεύθυνση κινούμαι τώρα.

Όποιος ενδιαφέρεται ας ρίξη μιά ματιά στο www.juce.com καθώς και στον ιστοτόπο του artlogic.

Καλή συνέχεια σε όλους

Όταν προκύψει κάτι ενδιαφέρον θα επανέλθω

Γιώργος Νικ. Κωνσταντακόπουλος

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

  

 


#9