Από ότι γνωρίζω τα ψηφιακά δεδομένα σε ένα IP δίκτυο μεταδίδονται για ευκολία στο routing σπασμένα σε μικρότερα πακέτα (TCP/IP packets) τα οποία φθάνουν στο DAC και συναρμολογούνται σε ένα ενιαίο stream. Υπάρχει περίπτωση από ένα μέτριας ή κακής ποιότητας καλώδιο ethernet να αλλοιώνονται κάποια από τα πακέτα αυτά και να δημιουργούν κάποια ακουστά σφάλματα (glitches) στο audio stream;
Το tcp/ip περιλαμβάνει error detection και error correction, οπότε αν κάποιο πακέτο για οποιοδήποτε λόγο γίνει corrupt θα ανιχνευθεί και θα ζητηθεί να ξανα-αποσταλεί.
Οι εφαρμογές που συζητάμε έχουν buffering σε διάφορα επίπεδα, οπότε είναι εξαιρετικά σπάνιο να καταφέρουμε να "ξεμείνουμε από δεδομένα".
Οπότε, για αρχή δεν υπάρχει περίπτωση να φτάσει στο DAC corrupt δεδομένο. Το χειρότερο που μπορεί να συμβεί είναι να αδειάσουν όλα τα buffers με αποτέλεσμα το streamer να ξεμείνει από δεδομένα και να ακούσουμε μια διακοπή στον ήχο. Αλλά θα είναι διακοπή, δεν θα είναι glitches.
Θυμάμαι ότι ακόμα και στα πρώτα CD players η στιγμιαία απώλεια δεδομένων ήταν μια πραγματικότητα είτε λόγω σφάλματος ανάγνωσης της κεφαλής laser ή ατέλειας στην αλουμινένια επιφάνεια του δίσκου. Για αυτό το λόγω οι κατασκευαστές των CD player είχαν εισάγει ένα αλγόριθμο επιδιόρθωσης των χαμένων data ώστε να καλύπτεται η απώλεια αυτή χωρίς να ακούγονται κάποια στιγμίαία clicks.
Τα CDs περιλαμβάνουν ήδη πάρα πολύ καλό error correction. Συγκεκριμένα περίπου το 25% της επιφάνειας ενός CD είναι πληροφορίες για error correction.
Παρόλα αυτά, συμβαίνει ένα CD (ειδικά αν είναι ταλαιπωρημένο) να έχει ακουστά glitches λόγω λαθών στην ανάγνωση.
Δεν ξέρω κατά πόσο είχαν βγει CD players τα οποία να είχαν και κάποιο επιπλέον λογισμικό (πέραν του standard error correction που περιλαμβάνεται στο πρότυπο) το οποίο να προσπαθεί να διορθώσει αυτά τα λάθη.
Αλλά δεν έχει και ιδιαίτερο νόημα πια αυτό, μιας και ο πολύς κόσμος ακούει τα CD του από streamer, τα οποία αν έχει γίνει σωστά η δουλειά έχουν γίνει accurately ripped, οπότε είναι χωρίς λάθη (ή με ελάχιστα, σε γνωστά σημεία μάλιστα, λάθη).
Επίσης δεν έχω καταλάβει πως ακριβώς λειτουργούν τα πακέτα δεδομένων audio stream σε ένα standard δίκτυο 1 Gbps. Για παράδειγμα ένα stereo audio stream 24bit είναι της τάξης των 10 Mbps. Πως αυτό μεταδίδεται σε μορφή πακέτων σε ένα πολύ πιο γρήγορο δίκτυο gigabit μέσω ethernet; Η απλή λογική θα έλεγε ότι στέλνονται κάποια πακέτα data μετά σταματάει για λίγο η μετάδοση, έρχεται το επόμενο πακέτο data, σταματάει πάλι για λίγο και επαναλαμβάνεται σταθερά η ίδια διαδικασία. Είναι αυτή η λογική ή συμβαίνει κάτι πιο περίπλοκο;
Θα ήταν χρήσιμο να μάθουμε κάποια πράγματα από κάποιον που γνωρίζει καλύτερα αυτό το αντικείμενο.
Ένα audio stream στα 24/48 απαιτεί περίπου 2,2Mbps.
Αυτό που συμβαίνει για την μετάδοσή τους είναι όντως αυτό που περιγράφεις. Τα δεδομένα μεταδίδονται κατά bursts, ώστε να γεμίζουν τα buffers που τροφοδοτούν με data τον player.
Αυτός ο τρόπος λειτουργίας έχει "ενοχοποιηθεί" κατά καιρούς, με αποτέλεσμα να έχει προκύψει το πρωτόκολλο Diretta (
https://www.diretta.link/ ), το οποίο υποστηρίζει ότι λύνει αυτό ακριβώς το "πρόβλημα":
Υπάρχουν συμφορουμίτες μας οι οποίοι το έχουν δοκιμάσει με καλά αποτελέσματα (
@DomieMic65 ).