Σε αυτό το επεισόδιο, ο Λεξ Φρίντμαν (Lex Fridman) υποδέχεται δύο από τις πιο σημαντικές προσωπικότητες του κόσμου των πολυμέσων: τον Ζαν-Μπατίστ Κεμπφ (Jean-Baptiste Kempf), πρόεδρο του VideoLAN και κεντρικό πρόσωπο πίσω από το VLC και το FFmpeg, και τον Κίραν Κούνια (Kieran Kunhya), μηχανικό codec, συνεισφέροντα στο FFmpeg και υπεύθυνο για τον διάσημο λογαριασμό του FFmpeg στο X. Ο Φρίντμαν περιγράφει το FFmpeg ως την αόρατη ραχοκοκαλιά πίσω από το YouTube, το Netflix, το Chrome, το VLC, το Discord και σχεδόν κάθε πλατφόρμα που αγγίζει βίντεο ή ήχο στο διαδίκτυο, με εκτίμηση ότι πάνω από το 90% των ροών επεξεργασίας βίντεο βασίζεται σε αυτό. Το VLC έχει μεταφορτωθεί πάνω από έξι δισεκατομμύρια φορές, χωρίς διαφημίσεις και χωρίς παρακολούθηση.
Οι δύο καλεσμένοι εξηγούν τι συμβαίνει όταν πατάμε το play. Πρώτα, το πρόγραμμα παίρνει μια ροή δεδομένων από μια διεύθυνση, έπειτα ο αποπολυπλέκτης (demuxer) χωρίζει τα ίχνη ήχου, βίντεο και υποτίτλων, και στη συνέχεια κάθε ίχνος αποκωδικοποιείται. Ο Κεμπφ τονίζει ότι η συμπίεση βίντεο είναι της τάξης του 100x έως και 200x, και ότι όλα γίνονται με γνώμονα την ανθρώπινη αντίληψη: δεν δουλεύουμε σε RGB αλλά σε YUV, μιμούμενοι τον τρόπο που το μάτι ξεχωρίζει τη φωτεινότητα από το χρώμα, και χρησιμοποιούμε μετασχηματισμούς συχνότητας και πρόβλεψη για να απομακρύνουμε την πλεονάζουσα πληροφορία.
Ο Κεμπφ εξηγεί τη διαφορά ανάμεσα σε δοχείο (container) και codec: το MP4 δεν είναι το ίδιο με το H.264, παρόλο που ο κλάδος έκανε τα πράγματα δύσκολα με ονομασίες όπως MPEG-4 Part 10. Το VLC, επισημαίνει, δεν εμπιστεύεται την κατάληξη του αρχείου — την αντιμετωπίζει μόνο ως υπαινιγμό και εξετάζει το περιεχόμενο. Αυτή η φιλοσοφία γεννήθηκε από τις ρίζες του προγράμματος στη ροή μέσω δικτύου UDP, όπου τα πακέτα χάνονται και τα αρχεία είναι συχνά κατεστραμμένα. Ο Κούνια προσθέτει ότι ένα αρχείο .MP4 μπορεί στην πραγματικότητα να είναι οτιδήποτε, και αυτή η ανοχή στα σπασμένα αρχεία έκανε το VLC δημοφιλές στην εποχή της πειρατείας.
Η κοινότητα του ανοιχτού κώδικα περιγράφεται ως αξιοκρατική στον πυρήνα της. Ο Κεμπφ λέει ότι το μόνο που μετράει είναι η ποιότητα του κώδικα: «Μπορεί να είσαι σκύλος, δεν με νοιάζει — δεν με νοιάζει από πού έρχεσαι, κοιτάζω τον κώδικά σου». Αναφέρει ότι έφηβοι έχουν γράψει χιλιάδες γραμμές assembly στο FFmpeg, όπως ο Ρουικάι Πενγκ (Ruikai Peng), 16 ετών, που βρήκε και διόρθωσε ζητήματα ασφάλειας χωρίς να δημιουργήσει δράμα. Ο Κούνια σημειώνει πως η τραχύτητα στην επικοινωνία, όπως του Λίνους Τόρβαλντς (Linus Torvalds), είναι συνήθως «επί του θέματος» και συχνά επιδεινώνεται από το ότι πολλοί συνεισφέροντες δεν έχουν τα αγγλικά ως μητρική γλώσσα.
Ο Κεμπφ αφηγείται την ιστορία του VLC, που ξεκίνησε στο École Centrale Paris τη δεκαετία του 1990 με το πρότζεκτ Network 2000: φοιτητές μετέδιδαν δορυφορικό βίντεο MPEG-2 σε τοπικό δίκτυο, μια δεκαετία πριν το YouTube. Το VideoLAN Client έγινε το VLC, και το 2003 ο Κεμπφ ανέλαβε δράση για να το βγάλει από το πανεπιστήμιο και να το κάνει βιώσιμο. Το 2005 το πρότζεκτ κόντεψε να πεθάνει με μόνο δύο ενεργούς προγραμματιστές, αλλά εκείνος αποφάσισε να το συνεχίσει, πιστεύοντας ότι η τεχνολογία ήταν μεγάλη και χρήσιμη.
Ο Κεμπφ έγινε διάσημος επειδή αρνήθηκε επανειλημμένα δεκάδες εκατομμύρια δολάρια για να κρατήσει το VLC χωρίς διαφημίσεις. Εξηγεί ότι οι προσφορές προέρχονταν από σκιώδεις εταιρείες διαφημίσεων που ήθελαν να ενσωματώσουν γραμμές εργαλείων, λογισμικό κατασκοπείας ή να αλλάζουν τη μηχανή αναζήτησης του χρήστη. «Πρέπει να κερδίζεις χρήματα με ηθικό τρόπο», λέει, προσθέτοντας ότι ήθελε να μπορεί να κοιμάται ήσυχος τη νύχτα. Η τελευταία προσφορά ήταν, όπως τη χαρακτηρίζει, «άσεμνη», με το επιχείρημα ότι με τα λεφτά θα μπορούσε να φτιάξει κάτι νέο ανοιχτού κώδικα — αλλά εκείνος αρνήθηκε.
Μεγάλο μέρος της συζήτησης αφορά το επεισόδιο με τους μηχανικούς ασφαλείας της Google, που χρησιμοποίησαν τεχνητή νοημοσύνη για να δημιουργήσουν αναφορές ευπαθειών στο FFmpeg. Ο Κούνια εξηγεί ότι η Google ανακοίνωσε στα μέσα πόσο καλό είναι το AI της πριν διορθωθούν τα ζητήματα, εφαρμόζοντας προθεσμία 90 ημερών που δεν ταιριάζει σε εθελοντική ανάπτυξη, και ότι η ευπάθεια αφορούσε έναν σκοτεινό codec παιχνιδιού της δεκαετίας του 1990. Αναφέρει επίσης την υπόθεση XZ και το περιστατικό όπου η Microsoft ζήτησε δωρεάν και επείγουσα υποστήριξη από εθελοντές, προσφέροντας εφάπαξ μερικές χιλιάδες δολάρια αντί συμβολαίου. Μετά το ντιμπέιτ, οι δωρεές αυξήθηκαν σημαντικά, αν και δεν καλύπτουν ούτε έναν μισθό πλήρους απασχόλησης.
Οι δύο μηχανικοί εξηγούν γιατί η γλώσσα assembly παραμένει αναντικατάστατη. Ο Κούνια λέει ότι το SIMD επιτρέπει σε μία εντολή να επεξεργάζεται δεκαέξι αριθμούς ταυτόχρονα, προσφέροντας βελτιώσεις ταχύτητας 10x έως 50x σε σχέση με τη C — με ένα παράδειγμα να δείχνει 62x ταχύτητα. Το dav1d, ο αποκωδικοποιητής AV1 του VideoLAN, έχει 240.000 γραμμές χειρόγραφης assembly και χρησιμοποιεί δικές του συμβάσεις κλήσης για να κερδίζει κύκλους. Ο Κεμπφ αναφέρει τον Χένρικ Γκράμνερ (Henrik Gramner) και τον Μάρτιν Στόρσγιο (Martin Storsjö) ως μάγους της assembly, με τον δεύτερο να γράφει κώδικα από το τηλέφωνό του στην παιδική χαρά. Ο Κούνια έχει δημιουργήσει μαθήματα assembly (asm-lessons) για να μεταδώσει αυτή την τέχνη που κινδυνεύει να χαθεί.
Η ιστορία του H.264 και του x264 ξεχωρίζει ως παράδειγμα καινοτομίας από ερασιτέχνες. Ο Κούνια εξηγεί ότι χομπίστες, πολλοί από την κοινότητα των anime, αμφισβήτησαν την εμμονή του κλάδου με μαθηματικές μετρήσεις όπως το PSNR και εισήγαγαν ψυχοοπτική παραμόρφωση και προσαρμοστική κβαντοποίηση, κάνοντας τις εικόνες να φαίνονται πραγματικά καλύτερες. Το δείγμα ParkJoy από τη σουηδική τηλεόραση έγινε το κανονικό τεστ που ξεχώριζε τους άνδρες από τα αγόρια. Ο Κεμπφ προσθέτει ότι το x264, που γεννήθηκε στο ίδιο σχολείο με το VLC, παραμένει σημείο αναφοράς για κάθε νέο codec.
Ο Κεμπφ εξηγεί τον πόλεμο των διπλωμάτων ευρεσιτεχνίας στα πολυμέσα: το H.265/HEVC έγινε σχεδόν αδύνατο να αδειοδοτηθεί λόγω πολλαπλών δεξαμενών διπλωμάτων ευρεσιτεχνίας, οδηγώντας εταιρείες όπως η Google και το Netflix να δημιουργήσουν τη Συμμαχία για Ανοιχτά Μέσα (Alliance for Open Media) και το codec AV1 χωρίς δικαιώματα. Ο Κούνια σημειώνει ότι στον κόσμο του MPEG τα διπλώματα ευρεσιτεχνίας δεν συζητιούνται καν κατά την τυποποίηση. Ο Κεμπφ αναφέρει ότι στη Γαλλία τα διπλώματα λογισμικού απορρίπτονται, και ότι αν έπρεπε να πληρώσει όλα τα τέλη για το VLC θα χρειάζονταν πάνω από 200 ευρώ ανά χρήστη.
Η αντίστροφη μηχανική περιγράφεται ως μορφή αρχαιολογίας. Ο Κεμπφ αφηγείται πώς ο Κόστια Σίσκοφ (Kostya Shishkov), ένας Ουκρανός «οριακά ιδιοφυής», αντίστρεψε τον ιδιόκτητο codec του GoToMeeting σε δύο μήνες, αντιμετωπίζοντας τον κόσμο ως «δυαδική προδιαγραφή». Ο Κούνια περιγράφει τη διαδικασία: αποθήκευση μνήμης από εικονικές μηχανές, βήμα-βήμα εκτέλεση στον αποσφαλματωτή, και αναζήτηση δειγμάτων από την κοινότητα. Η ακρίβεια στο bit (bit exactness) είναι κρίσιμη: κάθε υλοποίηση ενός αποκωδικοποιητή πρέπει να παράγει ακριβώς τα ίδια bits.
Η εξουθένωση των συντηρητών (maintainers) ανοιχτού κώδικα είναι ένα θέμα που προσεγγίζεται με ειλικρίνεια. Ο Κεμπφ αναφέρει ότι δέχθηκε απειλές θανάτου με σκόνη σε φάκελο όταν αποφάσισε να σταματήσει την υποστήριξη του PowerPC, και ότι σήμερα συντηρεί βιβλιοθήκες που οι προηγούμενοι συντηρητές εγκατέλειψαν λόγω ψυχολογικής πίεσης. Αναφέρει ότι το libXML δεν συντηρείται πλέον από κανέναν, και ότι η βάση δεδομένων ζωνών ώρας κρατιέται από έναν άνθρωπο. Ο Ντάνιελ Στένμπεργκ (Daniel Stenberg), συντηρητής του curl, μάχεται κατά του «AI slop» — των ψεύτικων αναφορών που δημιουργούνται από μοντέλα και επιβαρύνουν τους εθελοντές.
Η κοινότητα αρχειοθέτησης παρουσιάζεται ως υπόδειγμα ήθους. Με επικεφαλής τον Ντέιβ Ράις (Dave Rice) από το City University της Νέας Υόρκης, χρηματοδότησε την ανάπτυξη του FFV1, ενός codec χωρίς απώλειες σχεδιασμένου για γρήγορη κωδικοποίηση σε λογισμικό και ανθεκτικότητα σε απώλεια bits. Ο Κούνια αναφέρει το παράδειγμα του New Domesday Book στο Ηνωμένο Βασίλειο, που αρχειοθετήθηκε σε μικροϋπολογιστές BBC και χρειάστηκε αντίστροφη μηχανική μετά από 20 χρόνια — μια προειδοποίηση για το τι μπορεί να συμβεί σε χίλια χρόνια. Η C, λέει, θα είναι όπως τα λατινικά: θα μαθαίνεται ακόμα και θα παραμένει χρησιμοποιήσιμη, κάνοντας το FFmpeg μια Ροζέτα Λίθο για το μέλλον.
Κοιτάζοντας μπροστά, οι δύο μηχανικοί βλέπουν τα πολυμέσα να επεκτείνονται σε νέες αισθήσεις: σημειακά νέφη (point clouds), ογκομετρικό βίντεο, απτικά δεδομένα, ακόμα και οσμές. Ο Κεμπφ λέει ότι ό,τι είναι χρονισμένο και αναπαριστά κάτι που μπορούμε να αισθανθούμε θα μπει στο FFmpeg — «αν είναι εγκεφαλικά κύματα, θα είναι εγκεφαλικά κύματα». Μιλά επίσης για το Kyber, τη νέα του startup για υπερχαμηλή καθυστέρηση στην τηλεχείριση ρομπότ, drones και οχημάτων, με στόχο τέσσερα χιλιοστά του δευτερολέπτου «glass-to-glass», έχοντας ήδη πετύχει επτά. Το πρότζεκτ είναι ανοιχτού κώδικα με διπλή αδειοδότηση.
Το επεισόδιο κλείνει με ευγνωμοσύνη και μια φιλοσοφική νότα. Ο Κεμπφ λέει ότι οι τύψεις είναι «φόρος στο μυαλό σου»: μαθαίνεις από τα λάθη αλλά δεν μετανιώνεις. Ο Φρίντμαν ευχαριστεί τους δύο καλεσμένους για το λογισμικό που έφερε χαρά σε εκατομμύρια ανθρώπους, και το επεισόδιο τελειώνει με τα λόγια του Λίνους Τόρβαλντς: «Οι περισσότεροι καλοί προγραμματιστές προγραμματίζουν όχι επειδή περιμένουν να πληρωθούν ή να λάβουν αναγνώριση, αλλά επειδή είναι διασκεδαστικό να προγραμματίζεις».





Σχόλια