Προς το περιεχόμενο

Best Audio Programming Language!


alterego

Προτεινόμενες αναρτήσεις

Σε καμία περίπτωση δεν θέλω να ασχοληθώ με virtual audio programming.

 

Τι εννοείς virtual audio programming?

 

Ενδιαφέρομαι να μάθω ποιά αντικειμενοστραφής γλώσσα προγραμματισμού(λόγω java αντικειμενοστραφής) είναι κατάλληλη για την δημιουργία μουσικών προγραμμάτων(sequencer, filter ακόμα και VST). Θέλω να γράφω κώδικα και όχι απλά να μου κάνει generate τον κώδικα.

 

Επειδή διαπιστώνω κάποια σύγχιση, ένα από τα σημαντικότερα πλεονεκτήματα του OOP είναι η επαναχρησιμοποίηση κώδικα. Σε μία Visual γλώσσα προγραμματισμού, δεν χρειάζεται να εφεύρεις τον τροχό από την αρχή (όχι βέβαια ότι δεν μπορείς). Όταν, π.χ. σε Visual C++ φέρνεις στο interface ένα κουμπάκι, αυτό ουσιαστικά είναι μία κλάση, και σε run-time θα στιγμιοτυποποιηθεί και θα παράγει ένα αντικείμενο. Αν κάνεις δεξί κλίκ και properties σ' αυτό το κουμπί θα δεις διάφορα πράγματα που μπορείς να τροποποιήσεις, με άλλα λόγια μπορείς να γράψεις κώδικα για το τι θα κάνει όταν ο χρήστης κλικάρει πάνω του. Αυτά είναι τα γενικά..

 

Τα ειδικά τώρα.. πρέπει να μάθεις C++ π.χ. για να μπορέσεις να γράψεις αυτές τις κλάσεις τις οποίες θα χρησιμοποιήσεις στο πρόγραμμά σου, είτε αυτό είναι sequencer είτε οτιδήποτε άλλο. Και να ξέρεις ότι θα χρειαστείς ΑΠΕΙΡΗ υπομονή αν ξεκινήσεις από την αρχή. Το πλεονέκτημα σε αυτή την περίπτωση είναι ότι θα έχεις αποκομίσει πολύ βαθιά γνώση στο θέμα μέσω εμπειρίας και όχι μέσω θεωρίας.

 

Επίσης να αναφέρω ότι στην πραγματικότητα η C++ δεν είναι *καθαρόαιμη* αντικειμενοστραφής γλώσσα, αν και αυτό στην προκειμένη περίπτωση δεν παίζει ρόλο.

 

Xekina me genika pragmata (loops, conditions, circular buffer, functions, classes, etc...).

An den katanohseis auta polu kala, den uparxei periptwsh na kaneis tpt me to SDK h' me o,tidipote allo afora audio...

 

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντήσεις 38
  • Πρώτη
  • Τελευταία

Περισσότερες συμμετοχές

Περισσότερες συμμετοχές

Απλά ρε παιδί μου λέω όποια και να είναι η γλώσσα προγραμματισμού στην τελίκη η κάρτα ήχου δεν είναι υπευθηνει για την ποιότητα του αλγορίθμου σου(δεν αναφέρομαι ουτε σε αποδοτικότητα ούτε σε πολυπλοκότητα αλγορίθμου )?

 

Η ποιότητα του αλγόριθμου εξαρτάται από το πόσο καλά είναι υλοποιημένος κατ' αρχάς σε συνδυασμό με το που τρέχει και τι χρησιμοποιεί.

 

Αυτό που θέλω να ρωτήσω τώρα είναι ότι οποιάδηποτε και να είναι η γλωσσα προγραμματισμού η ποιότητα πχ. του Osc σε έναν ατέρμον βρόχο δεν εξαρτάται μόνο απο το sampling rate της κάρτας ήχου όπου τρέχει η εφαρμογή? Επομένως όπως συνηθίσει κανείς. ΣΩΣΤΑ?

 

Λάθος, το sampling rate δεν αποτελεί τμήμα του σήματος.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

OurDarkness απλά το κουμπί θέλω να το φτιάξω από την αρχή(το ξέρω οτι ακούγεται κάπως.. αλλά ο κάθε άνθρωπος έχει και τα στραβά του).

Σωστά?

Η δειγματοληψία δεν παίζει ρόλο σε ένα ψηφιακό σήμα?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Λάθος, το sampling rate δεν αποτελεί τμήμα του σήματος.

 

σωστα, αλλα το D/A conversion αποτελει... αλλα νομιζς πως ειναι ανουσιο να ασχολιθεις με τοση λεπτομερεια. Αν ο κωδικας ειναι καλος, θα ακουγεται και καλα

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Η δειγματοληψία δεν παίζει ρόλο σε ένα ψηφιακό σήμα?

 

Αυτό το θέμα από μόνο του θέλει πάρα πολύ ανάλυση. Να μην ξεχνάς ποτέ ότι από την στιγμή που παραχθεί ή αποθηκευθεί κώδικας, είμαστε στον ψηφιακό κόσμο. Επίσης έχω μία ελαφρά ανησυχία για την εφαρμογή του θεωρήματος της δειγματοληψίας (το θεώρημα Shannon δηλαδή) στην παραγωγή audio (και όχι στην δειγματοληψία) αλλά επειδή δεν έχω κατασταλλάξει, δεν θα ήθελα να αναφέρω κάτι περισσότερο επ' αυτού (τουλάχιστον όχι τώρα). Έχοντας κατά νου, ότι ένα σήμα είναι σε ψηφιακή μορφή όμως, να θυμάσαι ότι αυτοί οι αριθμοί δεν είναι ξεκάρφωτοι, δηλαδή κάτι αντιπροσωπεύουν. Απλά άλλο το περιγράφον και άλλο το περιγραφόμενο, άλλο είναι το όνομα κάποιου και άλλο αυτός ο ίδιος, και μια που μιλάμε και για C++, άλλο η κλάση και άλλο το αντικείμενο.

 

σωστα, αλλα το D/A conversion αποτελει... αλλα νομιζς πως ειναι ανουσιο να ασχολιθεις με τοση λεπτομερεια. Αν ο κωδικας ειναι καλος, θα ακουγεται και καλα

 

Ναι φυσικά και αποτελεί.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

OurDarkness να σε ρωτήσω κάτι για μην μπλέκουμε πολύ το θέμα.

Έχω έναν αλγόριθμο σε C++ όπου η δουλεία του είναι πχ να παράγει σήμα για ένα δευτερόλεπτο από τον SinOsc(με τις κατάλληλες βιβλιοθήκες φυσικά).Τον ίδιο αλγόριθμο και κατάλληλα τροποποιημένο τον έχω και στην Java και στην ChucK(και όπου θες δηλαδή).

Και οι τρεις περιπτώσεις τρέχουν στο ίδιο μηχάνημα.Τώρα το αποτέλεσμα που θα πάρω θα είναι το ίδιο και απο τα 3 ή κάποιο θα είναι καλύτερο και γιατί.

Αυτή είναι η κυριότερη απορία μου :) Σορρυ που καταντάω κουραστικός ???

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Τώρα το αποτέλεσμα που θα πάρω θα είναι το ίδιο και απο τα 3 ή κάποιο θα είναι καλύτερο και γιατί.

 

Χρησιμοποίησε τα αυτιά σου ως προς το καλύτερο. Παράλληλα, στείλε το audio σε έναν παλμογράφο και δες την καμπύλη της κυματομορφής.

 

Προγραμματιστικά, ο καλύτερος κώδικας είναι ο βελτιστοποιημένος και τεκμηριωμένος κώδικας (από κάθε άποψη). Δηλαδή, τι να το κάνω αν έχεις γράψεις 5 σειρές σε C++ και ο ίδιος κώδικας σε Java έχει 50;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Προγραμματιστικά, ο καλύτερος κώδικας είναι ο βελτιστοποιημένος και τεκμηριωμένος κώδικας (από κάθε άποψη). Δηλαδή, τι να το κάνω αν έχεις γράψεις 5 σειρές σε C++ και ο ίδιος κώδικας σε Java έχει 50;

 

Αληθεύει ότι αν χρησιμοποιηθούν σωστά και οι δυο, για την επίτευξη ακριβώς του ίδιου αποτελέσματος ηχητικής επεξεργασίας συνήθως η Java θα έχει τις λιγότερες;

Fear no more the heat o' the sun

Nor the furious winter's rages

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Και οι τρεις περιπτώσεις τρέχουν στο ίδιο μηχάνημα.Τώρα το αποτέλεσμα που θα πάρω θα είναι το ίδιο και απο τα 3 ή κάποιο θα είναι καλύτερο και γιατί.

 

Να ξεκαθαρίσουμε ότι οποιαδήποτε διεργασία D/A και Α/D είναι θέμα της κάρτας ήχου. Αυτο σημαίνει ότι αυτό που εσύ επηρεάζεις με τον αλγόριθμο σε κάθε περίπτωση (Java, C++ κτλ) είναι τα δεδομένα που φτάνουν στο Α/D κ όχι την ποιότητα του ήχου. Δεν ξέρω αν έγινα κατανοητός αλλά το εύχομαι...

 

Αν θες να φτάσεις πολύ βαθιά στον ήχο έχω την εντύπωση ότι πρέπει να ασχοληθείς με OpenAL ή DirectX.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργήστε λογαριασμό

Γραφτείτε στην παρέα μας. Είναι εύκολο!

Δημιουργία λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Σύνδεση

×
×
  • Δημοσιεύστε κάτι...

Τα cookies

Τοποθετήθηκαν cookies στην συσκευή σας για να είναι πιο εύκολη η περιήγηση στην σελίδα. Μπορείτε να τα ρυθμίσετε, διαφορετικά θεωρούμε πως είναι OK να συνεχίσετε. Πολιτική απορρήτου