Ο δρόμος

ΠΕΤΡΑΛΙΑΣ ΝΙΚΟΣ

AVClub Addicted Member
3 February 2007
2,363
Αθήνα
Με ένα φίλο φτιάχνουμε δικό μας low level software σε C για αναπαραγωγή flac και wav. Πρώτα αποσυμπιέζει στη RAM (αν πρόκειται για flac) σε PCM και στη συνέχεια κάνει αναπαραγωγή, απ' τη RAM πάντα.
Τα πρώτα αποτελέσματα άψογα, καμμία διαφορά του flac με το wav.
Εννοείται πως μόλις ολοκληρωθεί θα δοθεί μαζί με τον κώδικα.
 

backousis

Supreme Member
18 June 2006
3,482
Ηρακλειο
Με ένα φίλο φτιάχνουμε δικό μας low level software σε C για αναπαραγωγή flac και wav. Πρώτα αποσυμπιέζει στη RAM (αν πρόκειται για flac) σε PCM και στη συνέχεια κάνει αναπαραγωγή, απ' τη RAM πάντα.
Τα πρώτα αποτελέσματα άψογα, καμμία διαφορά του flac με το wav.
Εννοείται πως μόλις ολοκληρωθεί θα δοθεί μαζί με τον κώδικα.

?

κατι σαν component στο foobar;
 
10 July 2006
5,257
Θεσσαλονίκη
Απάντηση: Re: Ο δρόμος

Με ένα φίλο φτιάχνουμε δικό μας low level software σε C για αναπαραγωγή flac και wav. Πρώτα αποσυμπιέζει στη RAM (αν πρόκειται για flac) σε PCM και στη συνέχεια κάνει αναπαραγωγή, απ' τη RAM πάντα.
Τα πρώτα αποτελέσματα άψογα, καμμία διαφορά του flac με το wav.
Εννοείται πως μόλις ολοκληρωθεί θα δοθεί μαζί με τον κώδικα.

Μπράβο, μπράβο !!!
Να προσπεράσουμε σιγά-σιγά και τα φετίχ :award:
 

Φίλιππος Φ.

Supreme Member
12 February 2007
3,910
Αθήνα
Με ένα φίλο φτιάχνουμε δικό μας low level software σε C για αναπαραγωγή flac και wav. Πρώτα αποσυμπιέζει στη RAM (αν πρόκειται για flac) σε PCM και στη συνέχεια κάνει αναπαραγωγή, απ' τη RAM πάντα.
Τα πρώτα αποτελέσματα άψογα, καμμία διαφορά του flac με το wav.
Εννοείται πως μόλις ολοκληρωθεί θα δοθεί μαζί με τον κώδικα.

Και δεν είπες τίποτα βρε κτήνος; :bigcry:

Τώρα φταίω εγώ να κρατήσω μούτρα; Εεεεεε;;;; :damnyou:

Σοβαρά τώρα, αξιέπαινος Νικόλα ! Ζηλεύω γιατί θα γούσταρα να συμμετάσχω αν και ξέρω οτι δύσκολα θα έβρισκα τόσο χρόνο ...

Εκείνο που θα κάνω όμως είναι να δώ αν παίρνει speed / space optimizations (συνήθειο απο τότε που έπαιζα με embedded programming, σε C πάντα !) όταν θα ανεβάσετε τα sources :smile:

Και πάλι συγχαρητήρια, οχι μόνο για την ιδέα αλλά και για το μέράκι -bye-
 

ΠΕΤΡΑΛΙΑΣ ΝΙΚΟΣ

AVClub Addicted Member
3 February 2007
2,363
Αθήνα
Η πρώτη μου παρατήρηση είναι πως ο driver του m2tech είναι για τον π@$#%0, καθώς θέλει τουλάχιστον 300msec latency και 1024B buffer chunks για να μην κάνει underflow. Γι' αυτό δεν τολμούν να τον δώσουν για Linux...

Ξεπερνώντας όμως αυτή την "κρυάδα", η αναπαραγωγή είναι εξαιρετική είτε μιλάμε για την κάρτα ήχου είτε για το m2tech και η καθυστέρηση πριν την έναρξη κάθε κομματιού (αποσυμπίεση flac στη RAM) είναι κάτω από 4 sec κι αυτό σε ένα ταπεινό netbook.
 
Last edited:

tmjuju

Administration Team
Staff member
21 January 2007
21,651
Μπράβο.
Η libflac πάντως είναι καρατσεκαρισμένη και αποτελεί τη σίγουρη βάση για κάθε software.
Αυτή είναι η δύναμη του Open source!
Σε αντίθεση με τα closed / proprietary formats.
 

tmjuju

Administration Team
Staff member
21 January 2007
21,651
Η πρώτη μου παρατήρηση είναι πως ο driver του m2tech είναι για τον π@$#%0, καθώς θέλει 300msec latency και 1024B buffer chunks για να μην κάνει underflow. Γι' αυτό δεν τολμούν να τον δώσουν για Linux...

Σε απλή αναπαραγωγή ευτυχώς δε μας πειράζει και τόσο το Latency :)
 
Η πρώτη μου παρατήρηση είναι πως ο driver του m2tech είναι για τον π@$#%0, καθώς θέλει τουλάχιστον 300msec latency και 1024B buffer chunks για να μην κάνει underflow. Γι' αυτό δεν τολμούν να τον δώσουν για Linux...

Ξεπερνώντας όμως αυτή την "κρυάδα", η αναπαραγωγή είναι εξαιρετική είτε μιλάμε για την κάρτα ήχου είτε για το m2tech και η καθυστέρηση πριν την έναρξη κάθε κομματιού (αποσυμπίεση flac στη RAM) είναι κάτω από 4 sec κι αυτό σε ένα ταπεινό netbook.

Νίκο, συγχαρητήρια για την εξαιρετική προσπάθεια! Άντε, και με ένα υποτυπώδες GUI για τους κοινούς θνητούς.. :p

Οπότε, θεωρείς ότι οι διαφορές που ακούσατε μεταξύ flac και wav προέρχονταν από την real time αποσυμπίεση του flac?
 

ΠΕΤΡΑΛΙΑΣ ΝΙΚΟΣ

AVClub Addicted Member
3 February 2007
2,363
Αθήνα
Νίκο, συγχαρητήρια για την εξαιρετική προσπάθεια! Άντε, και με ένα υποτυπώδες GUI για τους κοινούς θνητούς.. :p

Οπότε, θεωρείς ότι οι διαφορές που ακούσατε μεταξύ flac και wav προέρχονταν από την real time αποσυμπίεση του flac?

Ναι, μιλώντας πάντα για το foobar...
 

tmjuju

Administration Team
Staff member
21 January 2007
21,651
Όχι μεν αλλά πιθανά να μπορέσω λίγο να βοηθήσω σε alpha / beta testing.

Νίκο, μιας και δε ξέρω και πολλά για την υλοποίηση σας, παίζετε είδη με wasapi / asio ?
 

ΠΕΤΡΑΛΙΑΣ ΝΙΚΟΣ

AVClub Addicted Member
3 February 2007
2,363
Αθήνα
Όχι, κάνουμε decode (libflac), φόρτωμα στη RAM και στη συνέχεια ανοίγουμε buffer στο waveout. Το UI θα είναι κάτι πολύ απλό σε VB ή οτιδήποτε το οποίο απλά θα παρέχει δυνατότητα browse, Open Audio CD, Open/Save Playlist και θα καλεί το core από cmd...
 

tmjuju

Administration Team
Staff member
21 January 2007
21,651
ΙΜΗΟ, καθώς όπως έχω πει στην περίπτωση μου pc-dac-lan-εγκατάσταση γενικά δεν υπάρχει διαφορά μεταξύ ramdrive/Ethernet … αξίζει να κυνηγήσετε το wasapi/asio . Θα κάνει διαφορά :)

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

Ρίξε μια ματιά και στον koon θα βρείς τον κώδικα που ανοίγει το wav, πάρει το pcm και κάνει resampling παίρνοντας υπόψη ψαλιδισμούς http://koonlab.com/CUDA_RealFIR/CUDA Real FIR.html είναι απλός αλγόριθμος μεν και δε συγκρίνεται με άλλες βιβλιοθήκες αλλά μπορείς να φτιάξεις κάτι βασισμένος στον κώδικα στα γρήγορα.

Έχει κι άλλα καλούδια, είχα ξεκινήσει κάποτε να μετατρέψω τον cuda FIR kernel σε openCL, αλλά μου χρειάζονται κάποια κιλά διάβασμα ακόμα…

Τέλος, να προτείνω να στεγάσουμε το Player σε διπλανό νύμα ?
 

Musicalicius

Banned
20 May 2008
1,429
Η πρώτη μου παρατήρηση είναι πως ο driver του m2tech είναι για τον π@$#%0, καθώς θέλει τουλάχιστον 300msec latency και 1024B buffer chunks για να μην κάνει underflow. Γι' αυτό δεν τολμούν να τον δώσουν για Linux...

Ξεπερνώντας όμως αυτή την "κρυάδα", η αναπαραγωγή είναι εξαιρετική είτε μιλάμε για την κάρτα ήχου είτε για το m2tech και η καθυστέρηση πριν την έναρξη κάθε κομματιού (αποσυμπίεση flac στη RAM) είναι κάτω από 4 sec κι αυτό σε ένα ταπεινό netbook.

Από Ιταλούς δυστυχώς αυτά μπορεί και να τα περιμένεις.
Μας μοιάζουν στην άρπα κόλα.