Professional Documents
Culture Documents
Τεχνολογία Πολυμέσων Γεώργιος Ξυλωμένος Οικονομικό Πανεπιστήμιο Αθηνών
Τεχνολογία Πολυμέσων Γεώργιος Ξυλωμένος Οικονομικό Πανεπιστήμιο Αθηνών
Ενότητα # 1: Εισαγωγή
Σκοποί ενότητας
• Κατανόηση της έννοιας των μέσων και των
πολυμέσων
• Εξοικείωση με τις βασικές δομές των
δικτυακών συστημάτων πολυμέσων
• Παρουσίαση των προκλήσεων που
παρουσιάζουν τα πολυμέσα
• Κατανόηση του ρόλου των διαφόρων
εμπλεκόμενων στα πρότυπα πολυμέσων
4
Περιεχόμενα ενότητας
• Μέσα και πολυμέσα
• Πολυμέσα και δίκτυα
• Τι κάνει τα πολυμέσα δύσκολα;
• Πρότυπα και μορφότυπα
5
Μέσα και πολυμέσα
7
Τι είναι τα πολυμέσα; (2 από 2)
• Αλληλεπίδραση με το χρήστη
• Μετάδοση μέσω δικτύων υπολογιστών
• Ετυμολογία: πολύ (multi) + μέσα (media)
– Πολυμέσα: συνδυασμός πολλών μέσων
– Ένα περιοδικό είναι πολυμεσικό;
• Έχει κείμενο και εικόνες!
Χαρακτηριστικά μέσων
• Μέσο (medium): πολλές σημασίες
• Μέσα αντίληψης (των ανθρώπων)
– Όραση, ακοή, αφή
• Μέσα παρουσίασης (της πληροφορίας)
– Έξοδος: χαρτί, οθόνη και ηχεία
– Είσοδος: ποντίκι, κάμερα και μικρόφωνο
• Μέσα αναπαράστασης (της πληροφορίας)
– Κείμενο, ήχος, εικόνα, βίντεο
9
Τύποι μέσων
• Διακριτά μέσα: κείμενο, εικόνα
– Σταθερά στον χρόνο
– Δεν έχουν χρονική συνισταμένη
• Συνεχή μέσα: ήχος, βίντεο
– Μεταβολή μέσου με το χρόνο
– Συγκεκριμένος ρυθμός παρουσίασης
– Πιθανή ανάγκη συγχρονισμού με άλλα μέσα
• Η χρονική συνισταμένη εισάγει το συγχρονισμό
10
11
Ιδιότητες πολυμέσων (2 από 2)
• Υπολογιστικός έλεγχος
– Χειρισμός των μέσων με υπολογιστή
– Αναπαράσταση μέσων με ψηφιακό τρόπο
• Πολλά μέσα + ανεξαρτησία + έλεγχος
• Προαιρετικά: Αλληλεπίδραση με το χρήστη
– Όχι απαραίτητο, αλλά πολύ συνηθισμένο
– Επιλογή τρόπου και σειράς παρουσίασης
12
• Τομέας συσκευών
– Συσκευές εισόδου, εξόδου, επεξεργασίας
– Μέθοδοι επεξεργασίας εικόνων / γραφικών
– Τεχνικές συμπίεσης
13
Δομή συστημάτων (2 από 2)
• Τομέας συστήματος
– Λειτουργικό σύστημα, επικοινωνίες
• Τομέας εφαρμογών
– Εργαλεία δημιουργίας εφαρμογών
– Προγραμματιστικές λογικές αφαιρέσεις
• Τομέας συντονισμού
– Συγχρονισμός πολλαπλών μέσων
– Αγγίζει όλους τους τομείς
14
17
Δικτυακά πολυμέσα (3 από 5)
• Οι δυνατότητές μπορεί να διαφέρουν σημαντικά
– Δικτυακές δυνατότητες
– Δυνατότητες επεξεργασίας
– Προβλήματα με πολλούς συμμετέχοντες
• Τηλεδιάσκεψη και ομαδική εργασία
– Αναγκαστική η χρήση του δικτύου
– Μικρές απαιτήσεις αποθήκευσης
– Μεγάλες απαιτήσεις συγχρονισμού
18
19
Δικτυακά πολυμέσα (5 από 5)
• Δικτυακά συστήματα πελάτη-εξυπηρετητή
– Πελάτες
• Απλοί σταθμοί εργασίες
• Οικονομικοί, απαιτούν χρήση εξυπηρετητών
– Διανομή μέσων, ανάκτηση πληροφοριών
• Μείωση κόστους εφαρμογής
• Ουσιαστικά «ενοικιάζουμε» τον εξυπηρετητή
– Σταδιακά αντικαθιστούν τα αυτόνομα
20
21
Μετάδοση πολυμέσων (2 από 6)
• Ροή δεδομένων
– Ακολουθία διαδοχικών πακέτων
– Συνεχή ή διακριτά μέσα
– Υλοποιείται με διάφορους τρόπους
• Ασύγχρονη Μετάδοση
– Δεν υπάρχουν χρονικοί περιορισμοί
– Ανεπαρκής για τα συνεχή μέσα
22
23
Μετάδοση πολυμέσων (4 από 6)
26
28
29
Πρότυπα και μορφότυπα
Εμπλεκόμενοι (1 από 2)
• Τηλεπικοινωνιακοί οργανισμοί
– Ελέγχουν δίκτυα μετάδοσης δεδομένων
– Μπορεί να εμπλέκονται και στο περιεχόμενο
• Βιομηχανίες καταναλωτικών ηλεκτρονικών
– Συσκευές DVD για υπολογιστές
• Προέρχονται από τα DVD για ταινίες
– Καθορίζουν το κόστος των τεχνολογιών
31
Εμπλεκόμενοι (2 από 2)
• Παραγωγοί περιεχομένων
– Δημιουργία και διανομή ταινιών / μουσικής
– Εκδοτικοί οίκοι βιβλίων / περιοδικών
• Πολλαπλοί ρόλοι ορισμένων παικτών
– Τηλεπικοινωνίες, ηλεκτρονικά, παραγωγές
• Τεχνολογία και αγορά
– Η επιτυχία κρίνεται στην αγορά
– Δεν κερδίζει απαραίτητα η καλύτερη τεχνολογία
32
33
Πόλεμοι μορφοτύπων (2 από 4)
• Το αποτέλεσμα
– To 2000 άργησε πολύ να εμφανιστεί
• Εξαφανίστηκε γρήγορα εκτός Ευρώπης
– Το Betamax έχασε μετά από μεγάλο αγώνα
• Αν και ήταν το πρώτο στην αγορά
– Το VHS τελικά νίκησε
• Μεγαλύτερος χρόνος εγγραφής
• Πιο σημαντικό το βολικό παρά το ποιοτικό
34
35
Πόλεμοι μορφοτύπων (4 από 4)
• Ο πόλεμος του ψηφιακού ήχου
– DAT (Sony) εναντίον CD (Sony/Philips)
– CD: διάδοχος των δίσκων βινυλίου
• Μαζική παραγωγή σε πρέσα: οικονομική παραγωγή
• Μικρό μέγεθος και αντοχή: οικονομική διανομή
– DAT: διάδοχος των αναλογικών κασετών
• Πολεμήθηκε από τη βιομηχανία μουσικής
• Επιβίωσε στα στούντιο για πρωτογενή εγγραφή
36
Περιεχόμενα ενότητας
• Κατηγοριοποίηση εφαρμογών
• Σύγχρονες εφαρμογές
• Ασύγχρονες εφαρμογές
• Εφαρμογές αλληλεπίδρασης
• Εφαρμογές διανομής
5
Κατηγοριοποίηση εφαρμογών
Εφαρμογές
• Πολυμεσική εφαρμογή
– Τρόπος χρήσης πολυμεσικού συστήματος
– Συνδυάζει πολυμεσικές υπηρεσίες
– Εμπλέκονται ένας ή περισσότεροι χρήστες
• Διάκριση υπηρεσίας και εφαρμογής
– Υπηρεσία: επικοινωνία φωνής και εικόνας
– Εφαρμογή: τηλεδιάσκεψη ή διανομή διάλεξης
7
Κατηγορίες εφαρμογών
• Κατηγορίες εφαρμογών
– Επικοινωνία ανάμεσα σε ανθρώπους
• Σύγχρονη ή ασύγχρονη
– Επικοινωνία ανάμεσα σε άνθρωπο και μηχανή
• Αλληλεπίδραση ή διανομή
Σύγχρονες εφαρμογές
Κοινόχρηστος πίνακας
Κοινόχρηστη εφαρμογή
12
Τηλεδιάσκεψη (2 από 2)
14
Διανομή διαλέξεων
• Μία πηγή ήχου / βίντεο, πολλοί αποδέκτες
– Δεν απαιτείται αλληλεπίδραση
• Μετάδοση ένας προς όλους
– Μεγάλη κατανάλωση πόρων
• Μετάδοση ένας προς έναν
– Πολλαπλές συνδέσεις
• Διασφάλιση απορρήτου
– Κρυπτογράφηση μεταδιδόμενων μέσων
– Κλειστές ομάδες παραληπτών
15
Ανομοιογένεια (1 από 2)
• Ανομοιογένεια παραληπτών
– Κάθε παραλήπτης θέλει διαφορετικά μέσα
• Διαφορετικές προτιμήσεις
– Ανομοιογένεια δικτύου
• Γρήγορες και αργές γραμμές
• Φορτωμένες και μη φορτωμένες περιοχές
– Ανομοιογένεια σταθμών εργασίας
• Κινητά, φορητοί, σταθεροί
16
Ανομοιογένεια (2 από 2)
• Πολλαπλά κανάλια επικοινωνίας
– Εξυπηρέτηση διαφορετικών παραληπτών
• Διαφορετικό κανάλι ανά χρήστη
– Διαφορετικά επίπεδα ποιότητας
• Μετάδοση πολλών ροών
– Υποσύνολα της πληροφορίας
• Χρήση στρωματοποιημένης κωδικοποίησης
• Οικονομία στη μετάδοση δεδομένων
17
Ασύγχρονες εφαρμογές
19
Ασύγχρονες εφαρμογές (2 από 2)
• Πολυμεσικές ομάδες συζητήσεων
– Γενίκευση του ηλεκτρονικού ταχυδρομείου
• Πολυμεσικά έγγραφα
– Ισχυρότερα από ηλεκτρονικό ταχυδρομείο
– Σύνθετες συσχετίσεις ανάμεσα στα τμήματα
– Δεν υπάρχει κοινά αποδεκτό πρότυπο
• Κάθε κατασκευαστής έχει το δικό του μορφότυπο
20
Εφαρμογές αλληλεπίδρασης
Επικοινωνία με εξυπηρετητή
• Ανάκτηση πληροφοριών
– Παράδειγμα: Ηλεκτρονικές βιβλιοθήκες
– Δεν τροποποιούνται οι πληροφορίες
• Διενέργεια δοσοληψιών
– Παράδειγμα: συστήματα παραγγελιών
– Τροποποιούνται οι πληροφορίες
• Επικοινωνία με απομακρυσμένους πελάτες
22
Εφαρμογές διανομής
Διανομή βίντεο (1 από 2)
Σκοποί ενότητας
• Κατανόηση των υπολογιστικών απαιτήσεων
των πολυμέσων.
• Εισαγωγή στο βασικό υλικό και λογισμικό των
συστημάτων πολυμέσων.
• Εισαγωγή στα συστήματα πραγματικού
χρόνου και τις βασικές μεθόδους
χρονοπρογραμματισμού τους.
4
Περιεχόμενα ενότητας
• Απαιτήσεις
• Υλικό συστημάτων πολυμέσων
• Λογισμικό συστημάτων πολυμέσων
• Συστήματα πραγματικού χρόνου
• Χρονοπρογραμματισμός
Απαιτήσεις
Απαιτήσεις εφαρμογών (1 από 3)
• Διαχείριση τεράστιων όγκων δεδομένων
– Αποθήκευση, είσοδος-έξοδος και επικοινωνία
– Φόρτος σε όλους τους διαύλους
• Ειδικοί δίαυλοι γραφικών
8
Απαιτήσεις εφαρμογών (3 από 3)
• Επικοινωνία με τον αναλογικό κόσμο
– Μετατροπή μέσων σε ψηφιακά αρχεία
• Ψηφιοποίηση των αναλογικών σημάτων
– Επεξεργασία ψηφιακών μέσων
– Μετατροπή σε αναλογική για αναπαραγωγή
• Επικοινωνία σε πραγματικό χρόνο
– Ψηφιοποίηση και αναπαραγωγή ομιλίας
Υλικό (2 από 3)
• Κεντρική μονάδα επεξεργασίας
– Εντολές επεξεργασίας μέσων
• Διανυσματική επεξεργασία
• MMX, SSE
• Συνεπεξεργαστές επιτάχυνσης λειτουργιών
– Εκτέλεση μαθηματικών πράξεων
– Επεξεργασία ψηφιακών σημάτων
– Σχεδίαση γραφικών
12
Υλικό (3 από 3)
• Συσκευές αποθήκευσης δεδομένων
– Ειδικοί ελεγκτές υψηλής ταχύτητας
– Χρήση ελεγκτών άμεσης πρόσβασης στη μνήμη
• Συσκευές εισόδου/εξόδου
– Σύνδεση σε δίαυλο συστήματος
– Σύνδεση σε χωριστό ελεγκτή
– Ψηφιοποίηση και αντιστροφή της
– Προαιρετικά: συμπίεση και αποσυμπίεση
13
16
Αρχεία πολυμέσων (2 από 2)
• Χρήση διεμπλεκόμενων αρχείων
– Όλα τα μέσα στο ίδιο αρχείο (π.χ. AVI, VOB)
– Ομαδοποίηση τμημάτων μέσων
• Πρώτα το τμήμα βίντεο
• Μετά τα αντίστοιχα τμήματα ήχου
• Τέλος τα αντίστοιχα τμήματα υπότιτλων
– Ανάγνωση περιττών δεδομένων
• Πιο απλό από τις συνεχόμενες αναζητήσεις
17
18
Αποθήκευση αρχείων (2 από 4)
• Οργάνωση σταθερού μεγέθους
– Αποθήκευση αρχείων σε μεγάλα μπλοκ
• Παράδειγμα: 256 KB, 512 KB, 1 MB
– Κάθε μπλοκ αποθηκεύει πολλά τμήματα
• Το τέλος του μπλοκ μπορεί να είναι κενό
– Ευρετήριο μπλοκ δίσκου
• Κάθε μπλοκ περιέχει πολλά τμήματα
• Αρχικό τμήμα στο μπλοκ
19
20
Αποθήκευση αρχείων (4 από 4)
• Βίντεο σχεδόν κατόπιν αίτησης
– Έστω ταινία 120 λεπτών, ξεκινάει ανά 10 λεπτά
– Θα διαβάζεται ταυτόχρονα από 12 σημεία!
– Ομαδοποίηση τμημάτων ανά 10 λεπτά
• Έστω ότι έχουμε ένα τμήμα ανά λεπτό
• Πρώτο μπλοκ: τμήμα 0, τμήμα 10, τμήμα 20, ...
• Δεύτερο μπλοκ: τμήμα 1, τμήμα 11, τμήμα 21
– Κάθε ανάγνωση ικανοποιεί όλες τις ροές
21
23
24
Πολυμεσικά συστήματα
• Ελαστικά συστήματα πραγματικού χρόνου
– Αξιοπιστία: όχι καταστροφικές επιπτώσεις
• Στη χειρότερη περίπτωση το σύστημα είναι άχρηστο
– Ανοχή: απόκρυψη σφαλμάτων
– Προσαρμογή: μείωση ποιότητας
• Αξιοποίηση περιορισμών των αισθήσεων
– Περιοδικότητα: ισόχρονη λειτουργία
25
Διαχείριση πόρων
• Πόροι σε συστήματα πραγματικού χρόνου
– Έλεγχος διαθεσιμότητας πριν τη δέσμευση
– Δέσμευση πόρων για την εφαρμογή
– Κατανομή πόρων σε κάθε στιγμή
• Πολιτικές δέσμευσης πόρων
– Απαισιόδοξη: με βάση τις μέγιστες απαιτήσεις
– Αισιόδοξη: με βάση τις μέσες απαιτήσεις
26
Χρονοπρογραμματισμός
Χρονοπρογραμματισμός (1 από 2)
• Συστήματα γενικής χρήσης
– Μηχανισμός προτεραιοτήτων
– Δεν παρέχονται εγγυήσεις
– Απλά έχουμε υψηλότερη προτεραιότητα
• Συστήματα πραγματικού χρόνου
– Παρέχονται εγγυήσεις
– Απαισιόδοξη δέσμευση πόρων
28
Χρονοπρογραμματισμός (2 από 2)
m
Ci
i 1 Pi
1
29
Αλγόριθμος RMS
• Στατική μέθοδος: αλγόριθμος RMS
– Κατάλληλη μόνο για περιοδικές διεργασίες
– Προτεραιότητα ανάλογη με τη συχνότητα
• Οι προτεραιότητες είναι στατικές
• Εξαρτώνται μόνο από τη συχνότητα
– Εκτελεί διεργασία με υψηλότερη προτεραιότητα
• Αρκεί να είναι έτοιμη
– Δεν επιτυγχάνεται πλήρης αξιοποίηση
30
Αλγόριθμος EDF
• Δυναμική μέθοδος: αλγόριθμος EDF
– Κατάλληλη και για μη περιοδικές διεργασίες
– Προτεραιότητα αντίστροφη της προθεσμίας
• Μπορεί να είναι η στιγμή επόμενης εκτέλεσης
– Οι προτεραιότητες είναι δυναμικές
– Εκτελεί διεργασία με υψηλότερη προτεραιότητα
• Αρκεί να είναι έτοιμη
– Όχι εγγυήσεις για τις δυναμικές διεργασίες
31
RMS ή EDF;
• Ο RMS είναι απλός και γρήγορος
– Στατική λίστα προτεραιοτήτων
– Ο EDF αλλάζει συνεχώς τις προτεραιότητες
• Νέα ταξινόμηση λίστας ετοίμων
34
Διεργασίες ή πακέτα;
• Δύο είδη χρονοπρογραμματισμού
• Προεκτοπιστικός: διεργασίες
– Οι διεργασία διακόπτονται από άλλες
– Συνεχίζουν τη δουλειά τους αργότερα
• Μη προεκτοπιστικός: πακέτα
– Τα πακέτα μεταδίδονται μέχρι τέλος
– Αλλιώς η δουλειά που έχει γίνει πάει χαμένη
35
Ενότητα # 4: Ήχος
Σκοποί ενότητας
• Κατανόηση των βασικών χαρακτηριστικών του
ήχου.
• Εισαγωγή στις βασικές τεχνικές
ψηφιοποίησης και κβαντοποίησης σημάτων
• Κατανόηση της παλμοκωδικής διαμόρφωσης.
• Εισαγωγή στη συμβολική αναπαράσταση της
μουσικής.
Περιεχόμενα ενότητας
• Χαρακτηριστικά του ήχου
• Ψηφιοποίηση με μετασχηματισμό
• Ψηφιοποίηση με δειγματοληψία
• Κβαντοποίηση δειγμάτων
• Παλμοκωδική διαμόρφωση
• Συμβολική αναπαράσταση
5
Χαρακτηριστικά του ήχου
Τι είναι ο ήχος;
• Παράγεται από την ταλάντωση της ύλης
– Δημιουργεί μεταβολές στην πίεση του αέρα
– Η πίεση γίνεται αντιληπτή από το αυτί
• Μεταδίδεται με κυματοειδή μορφή
– Μετάδοση και σε στερεά / υγρά
– Δεν μπορεί να μεταδοθεί στο κενό
• Το μέσο μετάδοσης είναι απαραίτητο
7
Κατηγοριοποίηση ήχων
• Ακουστοί ήχοι: 20 Hz - 20 kHz
– Ακουστικά σήματα (acoustic signals)
• Αντιληπτά από το ανθρώπινο αυτί
– Κάτω από 20 Hz: υπόηχοι
– Πάνω από 20 kHz: υπέρηχοι
– Στην πράξη, κάθε άνθρωπος διαφέρει
• Κυματομορφή (waveform)
– Αναπαράσταση των μεταβολών της πίεσης
– Το πλάτος δείχνει την πίεση σε κάθε στιγμή
9
Ηχητικές κυματομορφές (2 από 2)
• Πλάτος (amplitude): ένταση του ήχου
– Μετατόπιση του κύματος από το μέσο όρο
• Περίοδος κυματομορφής
– Οι περιοδικοί ήχοι είναι γενικά πιο μουσικοί
• Συχνότητα: αντίστροφο της περιόδου
– Κύκλοι ανά δευτερόλεπτο (Hertz, Hz)
10
Ψηφιοποίηση
• Ηχητική κυματομορφή: αναλογικό σήμα
– Περίπλοκη μαθηματική συνάρτηση g(t)
– Οποιαδήποτε τιμή σε οποιαδήποτε στιγμή
– Στον υπολογιστή έχουμε περιορισμούς
• Πεπερασμένο πλήθος τιμών
• Πεπερασμένη ακρίβεια τιμών
• Ψηφιοποίηση
– Μετατροπή αναλογικού σε ψηφιακό
11
Ψηφιοποίηση με μετασχηματισμό
13
Μετασχηματισμός Fourier (2 από 3)
2
an g (t ) sin(2nft )dt
0
2
bn g (t ) cos(2nft )dt
0
2
c g (t )dt
0
Δειγματοληψία (1 από 2)
• Ψηφιοποίηση με δειγματοληψία
– Μέτρηση πλάτους κυματομορφής
– Κάθε μέτρηση ονομάζεται δείγμα (sample)
– Διακριτή διάσταση χρόνου
17
Δειγματοληψία (2 από 2)
• Ρυθμός δειγματοληψίας (sampling rate)
– Μετριέται σε Hz (δείγματα / δευτερόλεπτο)
– 44,1 kHz στα CD, 8 KHz στην τηλεφωνία
• Θεώρημα δειγματοληψίας του Nyquist
– Έστω σήμα με μέγιστη συχνότητα F
– Ρυθμός δειγματοληψίας τουλάχιστον 2F
• Αποφεύγεται η απώλεια πληροφορίας
18
Μετατροπείς (1 από 3)
• Διατάξεις μετατροπής
– ADC: Μετατροπή αναλογικού σε ψηφιακό
– DAC: Μετατροπή ψηφιακού σε αναλογικό
– Φίλτρα πριν το ADC και μετά το DAC
19
Μετατροπείς (2 από 3)
Μετατροπείς (3 από 3)
Κβαντοποίηση (1 από 2)
• Κβαντοποίηση (quantization)
– Αναπαράσταση συνεχών με διακριτές τιμές
• Κάθε δείγμα προσεγγίζεται με μία τιμή
– Διακριτή διάσταση πλάτους
23
Κβαντοποίηση (2 από 2)
• Επηρεάζει την ποιότητα
– 16 bits: 65536 τιμές, 8 bits: 256 τιμές
– Λιγότερες τιμές, μεγαλύτερο σφάλμα
– Σφάλμα κβαντοποίησης (quantization error)
• Πόσα επίπεδα χρειαζόμαστε;
– Δεν υπάρχει γενικό θεώρημα
– Θέτουμε άνω όριο στο σφάλμα
– Με πόσα bit επιτυγχάνεται το όριο;
24
Σφάλμα κβαντοποίησης
• Υπολογισμός σφάλματος κβαντοποίησης
– Έστω σήμα εισόδου με πλάτος –V έως +V
– Έστω n bit για την κβαντοποίηση
– Πλάτος διαστήματος q = 2V / 2n
• Υποθέτουμε γραμμική κβαντοποίηση
– Μέγιστο σφάλμα κβαντοποίησης
• q/2 = V / 2n (το μισό του διαστήματος)
25
Επίπεδα κβαντοποίησης (1 από 2)
• Δυναμικό εύρος εισόδου
– Το ελάχιστο αντιληπτό σήμα έχει πλάτος v
– Δυναμικό εύρος: 20 log10(V/v) dB
• Πρώτη προσέγγιση: χρήση δυναμικού εύρους
– Σφάλμα < ελάχιστο αντιληπτό σήμα
– V / 2n < v σημαίνει log10(V/v) < n log102 = 0,3 n
– Σε όρους δυναμικού εύρους: 20 log10(V/v) < 6 n
– Αν το δυναμικό εύρος είναι 40 dB τότε n >= 7
26
27
Παλμοκωδική διαμόρφωση
29
Τύποι PCM (2 από 4)
• Μουσικό CD: πρότυπο CD-DA
– Γραμμική κβαντοποίηση: ίδια ακρίβεια παντού
• Μεγαλύτερη πιστότητα για τυχαίος ήχους
– Εύρος συχνοτήτων 20 kHz
– Δειγματοληψία 44,1 kHz
– Κβαντοποίηση με τιμές των 16 bit
– Ρυθμός μετάδοσης 1,411 Mbps
• Στερεοφωνικός ήχος (δύο κανάλια)
30
31
Τύποι PCM (4 από 4)
• Φωνητική τηλεφωνία: πρότυπο ITU G.711
– Λογαριθμική: ακρίβεια στα χαμηλά πλάτη
• Χρήση compressor/expander ή compander
• Τροποποίηση πριν/μετά τη δειγματοληψία
• A-law (Ευρώπη), μ-law (Αμερική / Ιαπωνία)
– Εύρος 3.1-3.5 kHz, δειγματοληψία 8 kHz
– Τιμές των 8 bit (ή 7 bit)
• Ισοδύναμα με 12-14 bit σε γραμμική κβαντοποίηση
– Ρυθμός μετάδοσης 64 Kbps
32
Συμβολική αναπαράσταση
Πρότυπο MIDI (1 από 3)
• Συμβολική αναπαράσταση: MIDI
– Προδιαγραφές υλικού διασύνδεσης
• Βύσματα, ηλεκτρικά σήματα
– Προδιαγραφές μορφοποίησης δεδομένων
• Τα μηνύματα MIDI περιγράφουν γεγονότα
– Ενέργειες που εκτελεί ένας μουσικός
– Πάτημα και απελευθέρωση πλήκτρων
– Συχνότητα και εφφέ των ήχων
34
35
Πρότυπο MIDI (3 από 3)
• Πλεονεκτήματα και μειονεκτήματα MIDI
– Οικονομική αναπαράσταση
– Δυνατότητα συμβολικής επεξεργασίας
– Αποτέλεσμα ανάλογα με το υλικό
• Διαφέρει σημαντικά από συσκευή σε συσκευή
– Κατάλληλο μόνο για μουσικά όργανα
• Βασίζεται στη δομή συγκεκριμένων ήχων
• Δεν είναι κατάλληλο π.χ. για ανθρώπινη φωνή
36
Ενότητα # 5: Εικόνα
Σκοποί ενότητας
• Κατανόηση των βασικών τρόπων
αναπαράστασης της εικόνας και των τεχνικών
κωδικοποίησης χρωμάτων.
• Εισαγωγή στις ιδιαιτερότητες των συσκευών
εισόδου και εξόδου εικόνας.
• Κατανόηση του συμβιβασμού βάθους χρώματος
και ανάλυσης.
• Εισαγωγή στη συμβολική αναπαράσταση, τη
σύνθεση και την ανάλυση εικόνας.
• Κατανόηση των επιλογών μετάδοσης εικόνας.
Περιεχόμενα ενότητας
• Ψηφιακή αναπαράσταση
• Κωδικοποίηση χρωμάτων
• Συσκευές εισόδου και εξόδου
• Βάθος χρώματος και ανάλυση
• Συμβολική αναπαράσταση
• Ανάλυση εικόνας
• Μετάδοση εικόνας
5
Ψηφιακή αναπαράσταση
7
Αναπαράσταση εικόνας (2 από 3)
• Παράδειγμα: εικόνα VGA
– 640x480 pixels (γραμμέςxστήλες)
– 8 bits per pixel (256 χρώματα)
• Μορφότυπα σύλληψης
– Απλή αναπαράσταση
– Γρήγορη σύλληψη και παρουσίαση
• Μορφότυπα αποθήκευσης
– Αποδοτική αποθήκευση
– Ευελιξία στη διαχείριση
9
Κωδικοποίηση χρωμάτων
11
Παράσταση χρωμάτων (2 από 4)
• Κάμερα RGB
– Τρία μονοχρωματικά φίλτρα
• Διαχωρισμός χρωμάτων
– Χωριστοί αισθητήρες για κάθε χρώμα
– Παράγει τρία σήματα εξόδου
• Ένα για κάθε χρώμα
12
14
16
Οθόνες (1 από 2)
Ανανέωση οθόνης
• Χρησιμοποιείται με καθοδικό σωλήνα (CRT)
• Ανανέωση της εικόνας που αδυνατίζει
– Δεν σχετίζεται με τροποποίηση εικόνας
– Περιττή στις ενεργές οθόνες (π.χ. TFT)
• Περιοδικός ανασχεδιασμός οθόνης (refresh)
– Ρυθμός ανανέωσης σε Hz
• Οριζόντια / κατακόρυφη ανίχνευση (retrace)
– Χρόνος επαναφοράς της ακτίνας στην αρχή
– Μπορεί να αξιοποιείται για μεταφορά metadata
19
Διπλή ενταμίευση
• Σχεδίαση απευθείας στον ενταμίευτή
– Τι γίνεται αν έχουμε ανανέωση την ίδια στιγμή
– Μπορεί να αφήνει μισά σχήματα στην οθόνη
• Δύο ενταμιευτές ανανέωσης
– Ο ένας χρησιμοποιείται για απεικόνιση
– Ο άλλος χρησιμοποιείται για σχεδίαση
– Όταν τελειώσει η σχεδίαση, αλλάζουν ρόλο
20
22
Πρόσμιξη (2 από 2)
23
Αντιψεδωνυμία (1 από 2)
• Ατέλειες πλέγματος εικονοστοιχείων
– Καμπύλες
– Διαγώνιες γραμμές
– Χαρακτήρες σε μικρά μεγέθη
• Αντιψευδωνιμία (anti-aliasing)
– Προσομοίωση μερικής κάλυψης εικονοστοιχείων
– Ομαλότερη εμφάνιση τεθλασμένων γραμμών
– Αποφυγή γραμμών άνισου πάχους
24
Αντιψεδωνυμία (2 από 2)
• Ανεπαρκής ανάλυση
– Αύξηση ανάλυσης με μείωση βάθους
– Ένταση ανάλογα με κάλυψη εικονοστοιχείου
– Ενδιάμεσα χρώματα σε ακραία εικονοστοιχεία
– Χρησιμοποιείται και στο κείμενο
• Παράδειγμα: οι δύο κατακόρυφες γραμμές του Π
25
Συμβολική αναπαράσταση
Γραφικά (1 από 2)
• Στοιχειώδεις λειτουργίες γραφικών
– Περιγραφή σχημάτων
• Παράδειγμα: κύκλος
– Ιδιότητες σχημάτων
• Παράδειγμα: κέντρο, διάμετρος, πάχος γραμμής
• Πακέτο γραφικών
– Βιβλιοθήκη στοιχειωδών λειτουργιών γραφικών
27
Γραφικά (2 από 2)
• Συμβολική αναπαράσταση εικόνων
– Μείωση αποθηκευτικών απαιτήσεων
– Ευκολότερη διαχείριση (π.χ. μεγέθυνση)
– Ανάγκη μετατροπής για εμφάνιση
– Επιτρέπει προσαρμογή σε συσκευές εξόδου
• Εξειδικευμένο υλικό γραφικών
– Σχεδίαση γραμμών, γέμισμα πολυγώνων
– Αν δεν υπάρχει, χρήση λογισμικού
28
29
Σύνθεση εικόνας (2 από 3)
• Μοντέλο εφαρμογής
– Στοιχειώδεις λειτουργίες αντικειμένων
• Ποια αντικείμενα είναι διαθέσιμα;
• Ποιες είναι οι ιδιότητές τους;
– Ανεξάρτητο από σύστημα και υλικό γραφικών
• Πρόγραμμα εφαρμογής
– Χειρίζεται την είσοδο του χρήστη
– Στέλνει εντολές στο σύστημα γραφικών
30
31
Ανάλυση εικόνας
33
Στόχοι ανάλυσης (2 από 2)
• Αναγνώριση σχημάτων
– Εντοπισμός τυποποιημένων προτύπων
– Εντοπισμός αποκλίσεων από πρότυπα
• Παράδειγμα: ασφάλεια, έλεγχος ποιότητας
• Ανάλυση σκηνών
– Ανακατασκευή σκηνών από πολλαπλές εικόνες
– Σύνθεση ενός μοντέλου μιας σκηνής
34
35
Βήματα ανάλυσης (2 από 2)
• Ομαδοποίηση
– Συνένωση των συστατικών σε ομάδες
• Εξαγωγή
– Υπολογισμός ιδιοτήτων των ομάδων
• Ταίριασμα
– Απόδοση νοήματος στις ομάδες
36
Μετάδοση εικόνας
Μετάδοση (1 από 2)
• Απαιτήσεις μετάδοσης
– Μέγεθος ανάλογα με το μορφότυπο
– Αξιοπιστία ανάλογη με το μορφότυπο
– Γενικά όχι απαιτήσεις πραγματικού χρόνου
• Όταν φτάσει, εμφανίζεται
38
Μετάδοση (2 από 2)
• Μετάδοση συμπιεσμένης εικόνας
– Μορφότυπο αποθήκευσης
• Μετάδοση συμβολικής εικόνας
– Μορφότυπο γραφικών
• Αξιοπιστία μετάδοσης
– Σημαντική σε συμπιεσμένες και συμβολικές
– Οι απώλειες έχουν έντονο αντίκτυπο
39
Ενότητα # 6: Βίντεο
Σκοποί ενότητας
• Κατανόηση της φύσης και των
χαρακτηριστικών του βίντεο.
• Εισαγωγή στα τηλεοπτικά συστήματα και το
αναλογικό βίντεο.
• Εισαγωγή στο ψηφιακό βίντεο και την
τηλεόραση υψηλής ευκρίνειας.
• Εξοικείωση με τις κινούμενες εικόνες και τους
τρόπους μετάδοσής τους.
4
Περιεχόμενα ενότητας
• Χαρακτηριστικά του βίντεο
• Τηλεοπτικά συστήματα
• Ψηφιακό βίντεο
• Τηλεόραση υψηλής ευκρίνειας
• Κινούμενες εικόνες
8
Βασικά χαρακτηριστικά (1 από 4)
• Κατακόρυφη λεπτομέρεια
– Βάση: γραμμές σάρωσης
– Κατακόρυφη λεπτομέρεια <= γραμμές σάρωσης
• Λόγος διαστάσεων
– Πλάτος / Ύψος οθόνης
– 4:3 (συμβατικός)
– 16:9 (ευρύς)
– 1.85/2.20/2.40:1 (ταινίες)
10
Βασικά χαρακτηριστικά (3 από 4)
• Συνέχεια κίνησης
– Ομαλή κίνηση: 24+ fps (κινηματογράφος)
– Συγχρονισμός με συχνότητα ρεύματος
• ΗΠΑ: 60 / 2 = 30 Hz, Ευρώπη: 50 / 2 = 25 Hz
• Τρεμόπαιγμα (flicker)
– Αδυνάτισμα της εικόνας (καθοδικοί σωλήνες)
– Ρυθμός ανανέωσης τουλάχιστον 50 Hz
– Διπλάσιος (περίπου) από ρυθμό πλαισίου
11
12
Απόσταση θέασης (1 από 2)
• Όρια ανθρώπινης όρασης
– Διακρίνουμε ανάλογα με την απόσταση
– Ενοποίηση εικονοστοιχείων σε απόσταση
– Όριο: 2000 * μέγεθος εικονοστοιχείου
• Απόσταση θέασης / ύψος οθόνης
– Ύψος: ανάλυση * μέγεθος εικονοστοιχείου
– Κανονικοποιημένο μέτρο απόστασης
13
14
Τηλεοπτικά συστήματα
16
Τηλεοπτική μετάδοση (2 από 7)
17
18
Τηλεοπτική μετάδοση (4 από 7)
• RGB σε YIQ (σύστημα NTSC)
– Y = 0,299 R + 0,587 G + 0,114 B
– I = 0,596 R – 0,274 G – 0,321 B
– Q = 0,211 R – 0,523 G + 0,311 B
• Κωδικοποίηση συνιστωσών
– Σύστημα YUV και YIQ: αναλογία (4:2:2)
– Το μάτι είναι πιο ευαίσθητο στη φωτεινότητα
– Κατάλληλη πολύπλεξη των σημάτων
19
23
• Χαρακτηριστικά συστημάτων
– Γραμμές σάρωσης / ορατές γραμμές
– Προοδευτική / διεμπλεκόμενη σάρωση
• Με μετατροπή (παράγοντας Kell)
25
Ψηφιακό βίντεο
Ψηφιοποίηση βίντεο (1 από 2)
• Ψηφιακό και αναλογικό βίντεο
– Συμβατότητα για ανταλλαγή δεδομένων
– Παρόμοια ανάλυση ή / και ρυθμός καρέ
• Ψηφιοποίηση σύνθετου σήματος
– Μετατροπή όλων των συνιστωσών μαζί
– Δεν επιτρέπει το διαφορετικό χειρισμό τους
– Διατήρηση παρεμβολών μεταξύ συνιστωσών
– Κατάλληλη μόνο για ψηφιακή μετάδοση
27
28
Πρότυπο CCIR-601 (1 από 4)
• Πρότυπο ψηφιακού βίντεο CCIR-601
– Χρήση από τηλεοπτικά στούντιο
– Διεμπλεκόμενη σάρωση
• Υψηλή ποιότητα για εσωτερική χρήση
• Μειωμένη ποιότητα για μετάδοση
– Εύρος ζώνης
• 6 MHz για Υ
• 3 MHz για U και V
29
31
32
Άλλα πρότυπα (1 από 4)
• SIF: Ανάλυση αναλογικού βίντεο
– Ένα τέταρτο της ανάλυσης του CCIR-601
• Υποδιπλασιασμός δειγμάτων στις δύο διαστάσεις
– SIF για NTSC: 360 x 240 φωτεινότητας
– SIF για PAL/SECAM: 360 x 288 φωτεινότητας
– Προοδευτική σάρωση στα 29,97 ή 25 fps
– Λόγος δειγματοληψίας (4:1:1)
• Το (4:1:1) υποδηλώνει προοδευτική σάρωση
33
34
Άλλα πρότυπα (3 από 4)
• Παραλλαγές του CIF
– Ρυθμός δειγματοληψίας (4:1:1)
– Προοδευτική σάρωση στα 30 fps
• 4CIF: 720 x 576 για τη φωτεινότητα
• 16CIF: 1440 x 1152 για τη φωτεινότητα
• QCIF: 180 x 144 για τη φωτεινότητα
– Επιτρέπει και ρυθμούς καρέ 15 και 7,5 fps
35
36
Σύνοψη προτύπων
Σύστημα Οριζόντια Κατακόρυφη Ανανέωση
CCIR-601/US 720/360 480/240 59,94-I
CCIR-601/EUR 720/360 576/288 50-I
SIF/US 360/180 240/120 29,97-P
SIF/EUR 360/180 288/144 25-P
16CIF 1440/720 1152/576 30-P
4CIF 720/360 576/288 30-P
CIF 360/180 288/144 30-P
QCIF 180/90 144/72 15/7,5-P
37
HDTV (2 από 3)
• HDTV στην Ευρώπη: σύστημα DVB
– DVB-S, DVB-C, DVB-T, DVB-H
– Δεν υπάρχει πανευρωπαϊκή πολιτική μετάβασης
• Κάθε χώρα έχει το δικό της πρόγραμμα
• HDTV στις ΗΠΑ: σύστημα ATSC
– Η μετάβαση ολοκληρώθηκε το 2009
– Πολλές παραλλαγές για όλες τις ανάγκες
• Ρυθμοί καρέ 24, 25 ή 30 fps
• Προοδευτική ή διεμπλεκόμενη σάρωση
40
HDTV (3 από 3)
• Τρία γενικά επίπεδα ποιότητας
– SDTV: αντιστοιχεί στο SIF
• Παρόμοια ευκρίνεια με αναλογική τηλεόραση
– EDTV: αντιστοιχεί στο CCIR-601
• Βελτιωμένη ευκρίνεια
– HDTV: υψηλή ευκρίνεια με δύο παραλλαγές
• 720p: 1280 x 720 με προοδευτική σάρωση
• 1080i: 1920 x 1080 με διεμπλεκόμενη σάρωση
41
Λόγοι διαστάσεων
Animation (1 από 4)
• Δυναμική μορφή των γραφικών
– Παράγονται από τον υπολογιστή
– Βάση: ρεαλιστικές εικόνες ή σχέδια
• Καρέ κλειδιά
– Ακραίες ή χαρακτηριστικές θέσεις οντοτήτων
– Δημιουργία με ψηφιοποίηση
– Δημιουργία με συνθετικές μεθόδους
44
Animation (2 από 4)
• Δημιουργία κίνησης
– Καρέ κλειδιά: σχεδιάζονται
– Ενδιάμεσα καρέ: υπολογίζονται
• Γραμμική παρεμβολή
– Γραμμική τροχιά από αρχική σε τελική θέση
– Επαρκής για απλές τροχιές
– Μη ρεαλιστική για πραγματικές τροχιές
45
Animation (3 από 4)
• Καμπύλες (splines)
– Ταίριασμα καμπύλης με τα καρέ κλειδιά
– Περνούν από όλα τα καρέ κλειδιά
– Ομαλή μεταβολή με το χρόνο
• Όχι απότομες αλλαγές κίνησης
46
Animation (4 από 4)
• Σκελετός κίνησης
– Χρήση στα σύγχρονα κινούμενα σχέδια
– Πολυγωνικό περίγραμμα αντικειμένου
• Μπορεί να είναι τριών διαστάσεων
– Παρεμβολή κίνησης κάθε κορυφής
• Από καρέ σε καρέ
– Προβολή υφής πάνω στα πολύγωνα
47
48
Ενότητα # 7: Θεωρία πληροφορίας
Σκοποί ενότητας
• Εξοικείωση με τα βασικά κανάλια μετάδοσης
και τα χαρακτηριστικά τους.
• Εισαγωγή στις έννοιες που σχετίζονται με την
πληροφορία και παραδείγματα χρήσης τους.
• Εισαγωγή στις έννοιες που σχετίζονται με την
εντροπία και παραδείγματα χρήσης τους.
• Κατανόηση των συμπερασμάτων από τις
εφαρμογές πληροφορίας και εντροπίας.
4
Περιεχόμενα ενότητας
• Κανάλια μετάδοσης
• Πληροφορία
• Παραδείγματα πληροφορίας
• Εντροπία
• Παραδείγματα εντροπίας
• Εφαρμογές
Κανάλια μετάδοσης
Κανάλια (1 από 2)
• Μετάδοση πληροφοριών
– Πηγή / Κανάλι / Χρήστης
– Διακριτά σύμβολα από διακριτό αλφάβητο
• Κωδικοποιητής πηγής
– Μείωση των bits προς μετάδοση
– Αξιοποίηση της φύσης των πληροφοριών
• Κωδικοποιητής καναλιού
– Βελτίωση της αξιοπιστίας του καναλιού
– Αξιοποίηση της φύσης του καναλιού
• Θεωρία πληροφοριών
– Μελέτη των ιδιοτήτων της πληροφορίας
– Εύρεση αποδοτικών μεθόδων κωδικοποίησης
Κανάλια (2 από 2)
Αμοιβαία πληροφορία
• Διακριτές τυχαίες μεταβλητές X και Υ
– xi, i=1, 2, …, n και yj, j=1, 2, …, m
• X και Y στατιστικά ανεξάρτητες
– Το Y=yj δεν παρέχει πληροφορία για το X=xi
• X και Y απόλυτα εξαρτημένες
– Το Y=yj παρέχει την ίδια πληροφορία με το X=xi
• Ανάλογη με την υπό συνθήκη πιθανότητα
P( X xi | Y y j ) P( xi | y j )
• Κανονικοποίηση ανάλογα με πιθανότητα X=xi
P( X xi ) P( xi )
11
12
Εφαρμογές πληροφορίας
14
Εφαρμογές πληροφορίας (2 από 3)
16
Εντροπία
18
Πληροφορία και εντροπία (2 από 2)
• Πηγή με τυχαία συμπεριφορά
– P(xi)=1/n
n
1 1
H ( X ) log log n
i 1 n n
Παραδείγματα εντροπίας
Παραδείγματα εντροπίας (1 από 3)
• Δυαδική πηγή χωρίς μνήμη
– P(0)=q, P(1)=1-q
• Εντροπία πηγής
H ( X ) P(0) log P(0) P(1) log P(1)
q log q (1 q) log(1 q)
• Δυαδική εντροπία
– Εξαρτάται από το q
– Όταν q=1-q=1/2, H(1/2)=1
– Όταν q=0 ή q=1, Η(0)=0
21
22
Παραδείγματα εντροπίας (3 από 3)
Εφαρμογές
Εφαρμογές (1 από 2)
• Πηγές πληροφοριών πολυμέσων
– Παράγονται w σύμβολα qi, i=1, 2, …, w
– Πιθανότητα παραγωγής qi ίση με P(qi)
• Απλή αναπαράσταση συμβόλων
– Δυαδικές ακολουθίες σταθερού μήκους
– log2w bits ανά σύμβολο για w σύμβολα
• Εσωτερική πληροφορία
– I(qi)=-log2P(qi) bits
• Αναπαράσταση μεταβλητού μήκος
– I(qi) bits για το σύμβολο qi
– Σπάνια και συχνά σύμβολα
– Βέλτιστη δυνατή κωδικοποίηση
• Εντροπία πηγής Η(Χ): μέσο πλήθος bits ανά σύμβολο
25
Εφαρμογές (2 από 2)
• Αποδοτικότητα μίας κωδικοποίησης
– Μέσο μήκος συμβόλων κωδικοποίησης R
– Αποδοτικότητα: H(X)/R
• Μετάδοση πάνω από κανάλι
– X: είσοδος, Y: έξοδος
• Υπό συνθήκη εντροπία H(X|Y)
– Μέση εσωτερική πληροφορία εισόδου, γνωρίζοντας την έξοδο
• Εντροπία H(X)
– Μέση εσωτερική πληροφορία εισόδου, ανεξάρτητα από έξοδο
• Μέση αμοιβαία πληροφορία I(X;Y)
– I(X;Y)=H(X)-H(X|Y)
– Διαφορά εσωτερικής πληροφορίας πριν και μετά τη μετάδοση
– Μέση πληροφορία που μεταφέρει το κανάλι
26
Ενότητα # 8: Αρχές κωδικοποίησης
Σκοποί ενότητας
• Εξοικείωση με τις γενικές απαιτήσεις από τις
τεχνικές κωδικοποίησης και τις βασικές
κατηγορίες κωδικοποίησης.
• Εισαγωγή στις τεχνικές κωδικοποίησης
εντροπίας, διαφορικής κωδικοποίησης,
κωδικοποίησης μετασχηματισμών,
στρωματοποιημένης κωδικοποίησης και
κβαντοποίησης διανυσμάτων.
4
Περιεχόμενα ενότητας
• Απαιτήσεις κωδικοποίησης
• Είδη κωδικοποίησης
• Κωδικοποίηση εντροπίας
• Διαφορική κωδικοποίηση
• Κωδικοποίηση μετασχηματισμών
• Στρωματοποιημένη κωδικοποίηση
• Κβαντοποίηση διανυσμάτων
5
Απαιτήσεις κωδικοποίησης
Βασικές απαιτήσεις (1 από 4)
• Απαιτήσεις πολυμέσων
– Φωνή PCM: 64 Kbps (8 KHz, 8 bits)
– Μουσικό CD: 705,6x2 Kbps (44,1 KHz, 16 bits)
– Βίντεο PAL: 216 Mbps (13,5 MHz, 4:2:2, 8 bits)
• Συμπίεση και αποσυμπίεση
– Αποθήκευση (δίσκοι)
– Μετάδοση (δίκτυο)
– Ενταμίευση (μνήμη)
8
Βασικές απαιτήσεις (3 από 4)
• Απαιτήσεις σύγχρονων εφαρμογών
– Καθυστέρηση συμπίεσης / αποσυμπίεσης < 50 ms
– Καθυστέρηση από άκρο σε άκρο < 150 ms
• Απαιτήσεις εφαρμογών αλληλεπίδρασης
– Γρήγορη ανάκτηση πληροφοριών (εμπρός / πίσω)
– Τυχαία προσπέλαση σε λιγότερο από 500 ms
– Αποσυμπίεση χωρίς πρόσθετα δεδομένα
10
Είδη κωδικοποίησης
Κατηγορίες κωδικοποίησης
• Μη απωλεστική (lossless)
– Δεν χάνεται καθόλου πληροφορία
• Απωλεστική (lossy)
– Ελεγχόμενη απώλεια για μείωση χώρου
• Συμμετρικές τεχνικές
– Ίδιο κόστος συμπίεσης / αποσυμπίεσης
• Ασύμμετρες τεχνικές
– Σχεδόν πάντα πιο απλή αποσυμπίεση
12
Τύποι κωδικοποίησης (1 από 2)
• Κωδικοποίηση εντροπίας
– Δεν κατανοεί το περιεχόμενο των μέσων
– Μη απωλεστική
• Κωδικοποίησης πηγής
– Κατανοεί το περιεχόμενο των μέσων
– Απωλεστική ή μη απωλεστική
– Πρόβλεψη ή/και μετασχηματισμός δεδομένων
• Υβριδική κωδικοποίηση
13
Στρωματοποιημένη κωδικοποίηση
Κωδικοποίηση διανυσμάτων
Υβριδική JPEG
MPEG-x
H.26x
08-14
Ροή κωδικοποίησης
• Προετοιμασία
– Ψηφιοποίηση
• Επεξεργασία
– Μετασχηματισμός DCT/FFT
– Πρόβλεψη κίνησης (βίντεο)
• Κβαντοποίηση
– Μετατροπή δειγμάτων σε ακέραιες τιμές
• Κωδικοποίηση εντροπίας
– Συμπίεση ψηφιακής ροής χωρίς απώλειες
15
Κωδικοποίηση εντροπίας
Αξιοποίηση πλεονασμού (1 από 2)
• Κωδικοποίηση μήκους σειρών (RLE)
– Αντικατάσταση σειρών όμοιων bytes
– Σημαία “~”, μήκος σειράς – 4, Byte
• Δεν έχει νόημα για μικρότερες σειρές
– Διπλασιασμός σημαίας όπου εμφανίζεται
– Κατάλληλη (και) για τεχνητές εικόνες
• Συνεχόμενα εικονοστοιχεία με το ίδιο χρώμα
17
18
Διαφορική κωδικοποίηση
20
Κωδικοποίηση διαφορών (2 από 2)
• Διαμόρφωση δέλτα
– Ένα bit ανά δείγμα (+1 ή –1)
– Αύξηση ή μείωση τις τιμής
• Διαφορική κωδικοποίηση χωρίς προσαρμογή
– Έστω 4 bits ανά δείγμα
– Μικρές διαφορές: [-8,+7] ανά 1 βήμα
– Μεγάλες διαφορές: [-128,+127] ανά 16 βήματα
– Σταθερό βήμα σε όλη τη ροή
21
Κωδικοποίηση μετασχηματισμών
Γιατί μετασχηματισμοί;
• Από πεδίου εισόδου σε νέο πεδίο
– Αντιστροφή για αποκωδικοποίηση
– Παράδειγμα: FFT, DCT (χώρος σε συχνότητες)
– Ο μετασχηματισμός ΔΕΝ συμπιέζει δεδομένα
– Το νέο πεδίο προσφέρεται για κωδικοποίηση
• Απομόνωση πιο σημαντικών στοιχείων
• Απωλεστική συμπίεση λιγότερο σημαντικών
23
Μετασχηματισμός FFT
• Γρήγορος μετασχηματισμός Fourier
– Είσοδος: σήμα σε κάθε χρονική στιγμή f(t)
– Έξοδος: συντελεστής κάθε συχνότητας g(l)
– Διάσπαση f(t) σε αρμονικές με συντελεστές g(l)
– Απομόνωση πλέον σημαντικών συντελεστών
• Οι σημαντικότεροι συγκεντρώνονται στο ένα άκρο
– Κβαντοποίηση συντελεστών αναλόγως σημασίας
• Πιο μικρό βήμα στους πιο σημαντικούς συντελεστές
24
Μετασχηματισμός DCT
25
Στρωματοποιημένη κωδικοποίηση
Στρώματα (1 από 2)
• Λέγεται και κωδικοποίηση σε επίπεδα
– Διάκριση πληροφορίας σε στρώματα
– Διαφορετική μεταχείριση κάθε στρώματος
• Κωδικοποίηση υποπεριοχών
– Διάκριση συχνοτήτων σε περιοχές
– Διαφορετική μεταχείριση κάθε περιοχής
– Προσέγγιση σήματος με λίγες περιοχές
27
Στρώματα (2 από 2)
• Κωδικοποίηση υποδειγματοληψίας
– Διαφορετική δειγματοληψία κάθε συνιστώσας
– Λεπτομέρεια στις σημαντικότερες συνιστώσες
– Προσέγγιση με δειγματοληψία μικρής ανάλυσης
• Ετερογένεια
– Χωριστή μετάδοση κάθε στρώματος
– Προσέγγιση με μεταβλητό πλήθος στρωμάτων
– Επιλογή κατάλληλων στρωμάτων από παραλήπτη
28
Κβαντοποίηση διανυσμάτων
Βιβλίο κωδικών
• Βιβλίο κωδικών (διανυσμάτων)
– Περιέχει αντιπροσωπευτικές ακολουθίες
– Η έξοδος είναι δείκτες στο βιβλίο κωδικών
• Απαιτήσεις βιβλίου κωδικών
– Μικρό πλήθος κωδικών λέξεων
• Μικροί δείκτες στην έξοδο
– Παρόμοιος με τα διανύσματα εισόδου
• Μικρές απώλειες κβαντοποίησης
30
Απωλεστική μέθοδος
• Απωλεστική κωδικοποίηση
– Πίνακας με κωδικές λέξεις των n bytes
– Τεμαχισμός εισόδου σε διανύσματα n bytes
– Κβαντοποίηση με πλησιέστερη κωδική λέξη
• Ο πίνακας δεν περιέχει όλες τις δυνατές λέξεις
• Άρα έχουμε προσέγγιση (απωλεστική)
31
Μη απωλεστική μέθοδος
• Μη απωλεστική κωδικοποίηση
– Ίδια με απωλεστική στην αρχή
– Μετάδοση διαφοράς από την κωδική λέξη
• Αυξημένες απαιτήσεις χώρου
– Ανασύνθεση της ακριβούς αρχικής τιμής
32
Πίνακες αναζήτησης
Περιεχόμενα ενότητας
• Κωδικοποίηση Shannon-Fano
• Κωδικοποίηση Huffman
• Αριθμητική κωδικοποίηση
• Κωδικοποίηση με παράθυρο
• Κωδικοποίηση με λεξικό
5
Κωδικοποίηση Shannon-Fano
Βέλτιστη κωδικοποίηση
• Βέλτιστη κωδικοποίηση εντροπίας
– bits/σύμβολο = εσωτερική πληροφορία
– Απαιτούνται κωδικοί μεταβλητού μήκους
• Πρόβλημα για την αποκωδικοποίηση
• Πώς ξέρουμε που τελειώνει ένας κωδικός
– Απαιτείται γνώση των πιθανοτήτων εισόδου
• Είτε υποθέτουμε κάποια κατανομή
• Είτε διαβάζουμε πρώτα όλο το αρχείο
7
Μέθοδος Shannon-Fano (1 από 5)
• Κωδικοποίηση Shannon-Fano
– Χρήση κωδικών με ακέραιο μήκος bit
• Απόκλιση από ιδανική συμπίεση
– Δυαδικό δένδρο κωδικοποίησης
• Φύλλα: σύμβολα και πιθανότητες
• Κόμβοι: σύνολα συμβόλων και πιθανοτήτων
– Ίδιο δένδρο αποκωδικοποίησης
• Κάθε κωδικός έχει διαφορετικό πρόθεμα
• Επιτρέπει αποκωδικοποίηση μεταβλητού μήκους
9
Μέθοδος Shannon-Fano (3 από 5)
11
Μέθοδος Shannon-Fano (5 από 5)
• Κατασκευή δένδρου κωδικοποίησης
– Κωδικοποίηση δύο φάσεων
– Χρήση έτοιμων δένδρων
• Ουσιαστικά έτοιμων κατανομών πιθανότητας
• Κατασκευή δένδρου αποκωδικοποίησης
– Μετάδοση δένδρου κωδικοποίησης
– Μετάδοση πιθανοτήτων
• Απαιτείται γνώση των κανόνων κωδικοποίησης
12
Κωδικοποίηση Huffman
Μέθοδος Huffman (1 από 5)
• Παρόμοια με Shannon-Fano
– Μεταβλητό πλήθος bit ανά σύμβολο
– Απαιτεί γνώση πιθανοτήτων εισόδου
– Δυαδικό δένδρο (απο)κωδικοποίησης
• Μπορεί να διαφέρει από της Huffman
– Ίδιος αλγόριθμος (από)κωδικοποίησης
– Δημιουργία δένδρου με ανάποδο τρόπο
14
16
17
Μέθοδος Huffman (5 από 5)
• Μειονεκτήματα Huffman/Shannon-Fano
– Απαιτείται γνώση των πιθανοτήτων εισόδου
– Η κωδικοποίηση δεν είναι βέλτιστη
• Ακέραιο πλήθος bit ανά σύμβολο
• Αναγκαστικά αποκλίνουμε από το ιδανικό
– Βελτίωση συμπίεσης
• Κωδικοποίηση ομάδων από n σύμβολα
• Εκθετική αύξηση του πλήθους των συμβόλων
18
Αριθμητική κωδικοποίηση
Αριθμητική (1 από 9)
• Κωδικοποίηση εισόδου με έναν αριθμό
– Το πλήθος bit εξαρτάται από το μήκος
• Μπορεί να είναι πάρα πολύ μεγάλο
– Δεν απαιτείται σταθερό πλήθος bit/σύμβολο
• Αποφεύγουμε την απόκλιση από το ιδανικό
– Απαιτείται γνώση των πιθανοτήτων εισόδου
– Χρησιμοποιείται τερματικό σύμβολο στο τέλος
• Για να ξέρουμε ότι τελείωσε η αποκωδικοποίηση
20
Αριθμητική (2 από 9)
• Προετοιμασία αλγορίθμου
– Ταξινόμηση συμβόλων (συνήθως αλφαβητικά)
– Στο xi αντιστοιχίζουμε το διάστημα [ai, bi)
• Το διάστημα ορίζεται έτσι ώστε bi-ai = p(xi)
– Παράδειγμα
• P(a) = 0.4, P(b) = 0.3, P(c) = 0.2 και P($) = 0.1
• Διάστημα a: [0, 0.4), Διάστημα b: [0.4,0.7)
• Διάστημα c: [0.7, 0.9), Διάστημα $: [0.9,1.0)
21
Αριθμητική (3 από 9)
low = 0.0;
high = 1.0;
repeat {
input s;
range = high - low;
high = low + range * highrange[s];
low = low + range * lowrange[s];
} until s = $;
output any number in [low, high);
22
Αριθμητική (4 από 9)
• Λειτουργία αλγορίθμου
– Lowrange[]: κάτω όρια πιθανοτήτων
– Highrange[]: άνω όρια πιθανοτήτων
– Η είσοδος κωδικοποιείται με διάστημα
• Αρχικά το διάστημα είναι [0,1)
• Σε κάθε βήμα το διάστημα περιορίζεται
• Ανάλογα με το σύμβολο εισόδου
• Όσο μεγαλύτερη είσοδος, τόσο μικρότερο διάστημα
23
Αριθμητική (5 από 9)
Αριθμητική (6 από 9)
• Υπολογισμός εξόδου
– Θέλουμε έναν αριθμό μέσα στο διάστημα
– Αλλά με τα λιγότερα δυνατά ψηφία!
– Αρχίζουμε με 0, και προσθέτουμε κλασματικά
– Επισυνάπτουμε μονάδα στο δεξί άκρο
• Αν είμαστε πάνω από το άνω όριο, βάζουμε μηδέν
• Αν είμαστε πάνω από το κάτω όριο, σταματάμε
– Δεν χρειάζεται να στείλουμε το 0,
25
Αριθμητική (7 από 9)
• Αλγόριθμος αποκωδικοποίησης
input n;
repeat {
find s so that n is in
[lowrange[s], highrange[s]);
output s;
range = highrange[s] - lowrange[s];
n = (n - lowrange[s]) / range;
} until s = $;
26
Αριθμητική (8 από 9)
28
Κωδικοποίηση με παράθυρο
Αλγόριθμος LZ77 (1 από 4)
30
31
Αλγόριθμος LZ77 (3 από 4)
• Παράδειγμα με επικάλυψη
– Επέκταση ταιριάσματος στο δεξί μέρος
– Αντικαθιστούμε το aac με (7,2,c)
• Υλοποίηση κωδικοποίησης LZ77
– Το παράθυρο συνήθως είναι δύναμη του 2
– Παράδειγμα: 4096+4096 σύμβολα
– Δείκτης: 12 bit για όλο το αριστερό μέρος
– Μήκος: 12 bit για το μήκος του δεξιού μέρους
32
33
Αλγόριθμος LZSS (1 από 2)
• Αλγόριθμος LZSS (Storer και Szymanski)
– Παραλλαγή του LZ77
– Διαφέρει στο τι παράγεται στην έξοδο
– Δύο περιπτώσεις: ταίριασμα ή χαρακτήρας
– Το πρώτο bit της εξόδου διακρίνει τι είναι
• Είτε (O,L): θέση O, μήκος L
• Είτε C: χαρακτήρας C χωρίς ταίριασμα
– Η τριάδα σπάει σε δύο κομμάτια
34
37
Αλγόριθμος LZ78 (2 από 2)
Είσοδος Έξοδος Λεξικό
a (0,a) Θέση 1: a
aa (1,a) Θέση 2: aa
b (0,b) Θέση 3: b
ba (3,a) Θέση 4: ba
ab (1,b) Θέση 5: ab
39
Αλγόριθμος LZW (2 από 10)
• Κωδικοποίηση LZW
– Μέγιστο πρόθεμα εισόδου που είναι στο λεξικό
– Αντικαθίσταται από το δείκτη στο λεξικό
• Ο επόμενος ανήκει στην επόμενη συμβολοσειρά
– Προσθέτουμε πρόθεμα + επόμενο χαρακτήρα
• Σταδιακή αύξηση μήκους συμβολοσειρών στο λεξικό
– Η είσοδος προχωράει μετά το πρόθεμα
• Ο επόμενος χαρακτήρας γίνεται αρχή της εισόδου
40
41
Αλγόριθμος LZW (4 από 10)
Είσοδος Έξοδος Λεξικό
Θέση 1: a
Θέση 2: b
a+a 1 Θέση 3: aa
aa+b 3 Θέση 4: aab
b+b 2 Θέση 5: bb
b+a 2 Θέση 6: ba
aab+b 4 Θέση 7: aabb
42
43
Αλγόριθμος LZW (6 από 10)
• Αν ο κωδικός δεν υπάρχει στο λεξικό;
– Έστω ότι η είσοδος είναι ο τελευταίος κωδικός
– Δεν τον έχουμε προσθέσει ακόμη στο λεξικό!
• Δεν γνωρίζουμε ακόμη τον επόμενο χαρακτήρα
– Η συμβολοσειρά είναι της μορφής C???C
• Μοναδικός τρόπος να συμβεί το παραπάνω
• Άρα επαναλαμβάνουμε τον πρώτο χαρακτήρα
• Αυτός αντιστοιχεί στον άγνωστο κωδικό
44
45
Αλγόριθμος LZW (8 από 10)
Είσοδος Έξοδος Λεξικό
Θέση 1: a
Θέση 2: b
1 a
3 aa Θέση 3: aa
2 b Θέση 4: aab
2 b Θέση 5: bb
4 aab Θέση 6: ba
47
Αλγόριθμος LZW (10 από 10)
• Συμπίεση λεξικού LZ78/LZW
– Κάθε νέα είσοδος επεκτείνει μία παλιά
• Κατά έναν χαρακτήρα ακριβώς
– Αποθήκευση δείκτη σε παλιά συμβολοσειρα
• Και επιπλέον του νέου χαρακτήρα
– Χρησιμοποιούνται ειδικές δομές δεδομένων
– Επιτάχυνση ταιριάσματος και αντικατάστασης
48
Περιεχόμενα ενότητας
• Κωδικοποίηση καναλιού φωνής
• Κωδικοποίηση πηγής φωνής
• Αντιληπτική κωδικοποίηση
• Κωδικοποίηση ήχου MPEG-1
• Κωδικοποίηση ήχου MPEG-2
5
Κωδικοποίηση καναλιού φωνής
9
Κωδικοποίηση καναλιού (4 από 4)
• G.722: 64 kbps για εύρος ζώνης 7 KHz
– Χωρίζουμε τη φωνή σε δύο ζώνες συχνοτήτων
– Κωδικοποίηση κάθε ζώνης με ADPCM
– 0-3,5 KHz: κωδικοποίηση με 48 kbps
• Αντίστοιχο με κλασική τηλεφωνία
– 3,5-7 KHz: κωδικοποίηση με 16 kbps
• Προσθήκη υψηλότερων συχνοτήτων
• Πιο φυσική απόδοση της φωνής
10
13
Κωδικοποίηση πηγής (3 από 6)
• Γραμμική προβλεπτική κωδικοποίηση (LPC)
– Φωνητικοί ήχοι: γεννήτρια συχνοτήτων
• Περνάνε από φίλτρο σχηματιστικών συχνοτήτων
– Μη φωνητικοί ήχοι: γεννήτρια θορύβου
– Πρόβλεψη επόμενων παραμέτρων
• Από προηγούμενες ομάδες δειγμάτων
– LPC-10: γραμμικός συνδυασμός 10 ομάδων
– Ρυθμοί μετάδοσης έως και 2,4 Kbps
14
15
Κωδικοποίηση πηγής (5 από 6)
• G.728: 16 kbps
– Κατάλληλο για τηλεδιάσκεψη σε ISDN
• G.729: 8 kbps
– Χρήση στην κινητή τηλεφωνία
– Το G.729a χρησιμοποιείται στο GSM
• G.723.1: 5,3 ή 6,3 kbps
– Κατάλληλο για τηλεδιάσκεψη σε δίκτυα PSTN
16
19
Λειτουργία της ακοής
• Δυναμικό εύρος της ακοής
– Πλέον ισχυρό / πλέον ασθενές αντιληπτό σήμα
– Εξαρτάται από την περιοχή συχνοτήτων
– Μεγιστοποιείται στην περιοχή 2-5 KHz
• Αντιληπτική κωδικοποίηση
– Χρήση ψυχοακουστικού μοντέλου της ακοής
– Εντοπισμός μη αντιληπτών τμημάτων του ήχου
– Κωδικοποίησή τους με μικρή ακρίβεια ή καθόλου
20
21
Απόκρυψη ήχων (2 από 2)
• Αξιοποίηση των αποκρύψεων
– Αναλύουμε το σήμα σε περιοχές συχνοτήτων
– Σε κάθε περιοχή εντοπίζουμε τα ισχυρά σήματα
– Υπολογίζουμε επίδραση στα ασθενή σήματα
• Σε κάθε περιοχή έχουμε διαφορετική επίδραση
– Εντοπίζουμε τα ασθενή σήματα
• Κωδικοποίηση με μικρότερη ακρίβεια
22
24
26
27
Κωδικοποίηση MPEG-1 (5 από 6)
• Κωδικοποίηση εντροπίας
– MP1/2: PCM
– MP3: Huffman σε ζεύγη συντελεστών
• Επιλογή πίνακα Huffman ανάλογα με την είσοδο
• Διπλός βρόχος προσαρμογής κβαντοποίησης
– Εσωτερικός: ανάλογα με κωδικοποίηση εντροπίας
• Ρυθμίζει καθολικό παράγοντα κβαντοποίησης
– Εξωτερικός: ανάλογα με θόρυβο σε κάθε ζώνη
• Ρυθμίζει παράγοντες κβαντοποίησης ανά ζώνη
28
29
Στερεοφωνία (1 από 2)
• Στερεοφωνικός ήχος
– Δύο κανάλια ήχου για μεγαλύτερη πιστότητα
• Μικρόφωνα / ηχεία σε διαφορετικά σημεία
– Ο άνθρωπος τα αντιλαμβάνεται με δύο τρόπους
• Διαφορές στο χρονισμό των καναλιών
• Διαφορές στην ένταση των καναλιών
Στερεοφωνία (2 από 2)
• Κωδικοποίηση έντασης (intensity)
– Οι χαμηλές συχνότητες είναι ιδιαίτερες
• Δεν αντιλαμβανόμαστε διαφορές στο χρονισμό
• Συνένωση δεξιού/αριστερού καναλιού
• Προσθήκη πληροφορίας για τις διαφορές εντάσεων
• Κεντρική-πλευρική κωδικοποίηση (mid-side)
– Το κεντρικό είναι το άθροισμα δεξιού/αριστερού
– Το πλευρικό κανάλι είναι η διαφορά τους
– Μη απωλεστικός μετασχηματισμός
31
Αρχεία MPEG-1 (1 από 2)
• Μορφή αρχείων MPEG-1
– Το αρχείο μπορεί να έχει ιδιαίτερη κεφαλίδα
• Εξαρτάται από το μορφότυπο, όχι από το πρότυπο
– Το αρχείο διακρίνεται σε πλαίσια (frames) ήχου
• Διάρκεια 24 ms στα 48 KHz
– Κάθε πλαίσιο έχει μία κεφαλίδα
• Επιτρέπει την άμεση έναρξη της αποκωδικοποίησης
– Λέξη χρονισμού: έλεγχος για περιοδική εμφάνιση
• Μπορεί να εμφανίζεται και στα δεδομένα
32
33
Κωδικοποίηση ήχου MPEG-2
ήχου
36
37
Προβλήματα MPEG (2 από 2)
• Προ-ηχώ (pre-echo)
– Απότομη αλλαγή στο διάστημα κωδικοποίησης
– Παράγει θόρυβο λόγω ανεπαρκούς ρυθμού bit
• Απλώνεται σε όλο το διάστημα κωδικοποίησης
• Διπλή ομιλία (double speak)
– Διαφορά περιόδου σήματος και κωδικοποίησης
– Η ομιλία παρουσιάζει περιοδικότητα
– Αλλοιώνεται από την κωδικοποίηση
38
39
MPEG-2 AAC (2 από 4)
• Βελτιώσεις κωδικοποίησης
– Έως και 1024 ζώνες συχνοτήτων (αντί για 576)
• Χρησιμοποιεί μόνο MDCT, όχι φίλτρα
• Η περίοδος κωδικοποίησης είναι μικρότερη
– Βελτιωμένη κοινή στερεοφωνική κωδικοποίηση
– Huffman σε τετράδες συντελεστών
– Πρόβλεψη συντελεστών σε κάθε συχνότητα
• Χρησιμοποιείται πολύ σπάνια
40
41
MPEG-2 AAC (4 από 4)
• Μορφή αρχείων AAC
– Audio Data Interchange Format (ADIF)
• Όλες οι πληροφορίες είναι σε μία κεφαλίδα
• Αποκωδικοποίηση μόνο από αρχή του αρχείου
– Audio Data Transport Stream (ADTS)
• Κεφαλίδες ανά πλαίσιο ήχου
• Παρόμοιο με το MPEG-1
• Επιτρέπει όμως και πλαίσια μεταβλητού μεγέθους
• Επίπεδο 4 στην κεφαλίδα του πλαισίου
42
Περιεχόμενα ενότητας
• Εισαγωγή
• Προετοιμασία της εικόνας
• Επεξεργασία εικόνας
• Κβαντοποίηση συντελεστών
• Κωδικοποίηση εντροπίας
• Πρόσθετοι τρόποι κωδικοποίησης
• Μορφότυπο αρχείων
5
Εισαγωγή
Τρόποι λειτουργίας
• Ακολουθιακός απωλεστικός
– Ακολουθιακή DCT
– Πλέον διαδεδομένος
• Εκτεταμένος απωλεστικός
– Προοδευτική DCT
– Μικρές προσθήκες στον ακολουθιακό
• Μη απωλεστικός: χαμηλή συμπίεση
• Ιεραρχικός: πολλαπλές αναλύσεις
9
Προετοιμασία της εικόνας
Ροή κωδικοποίησης
12
13
Μοντέλο εικόνας (3 από 4)
• (Χ,Υ) εικόνας = (max(Xi), max(Yi))
• Σχετικές αναλογίες δειγματοληψίας
– (Hi,Vi) με τιμές 1 έως 4 για Hi και Vi
• Παράδειγμα: εικόνα με 4 συνιστώσες
• Επίπεδο 1: X1=48, Y1=32
• Επίπεδο 2: X2=48, Y2=16
• Επίπεδο 3: X3=24, Y3=32
• Επίπεδο 4: X4=24, Y4=16
14
15
Ταξινόμηση δεδομένων (1 από 3)
• Μονάδες δεδομένων
– Στοιχεία κωδικοποίησης
– Μη απωλεστικοί ρυθμοί: ένα εικονοστοιχείο
– Απωλεστικοί ρυθμοί: 8x8 εικονοστοιχεία
• Μη διεμπλεκόμενη ταξινόμηση δεδομένων
– Σάρωση μονάδων από αριστερά προς τα δεξιά
16
17
Ταξινόμηση δεδομένων (3 από 3)
Μετασχηματισμός εικόνας
Επεξεργασία εικόνας (1 από 4)
• Είσοδος
– Μονάδες δεδομένων 8x8 εικονοστοιχείων
• Κάθε μονάδα μετασχηματίζεται χωριστά
• Δεν έχει σημασία η ταξινόμηση
• Έξοδος
– Μονάδες δεδομένων 8x8 συντελεστών
20
21
Επεξεργασία εικόνας (3 από 4)
22
23
Γιατί DCT στο JPEG;
• Φυσικές εικόνες
– Μεγάλες περιοχές με παρόμοια χρώματα
– Πολλοί συντελεστές AC σχεδόν μηδενικοί
• Δείχνουν την απόσταση των εναλλαγών
• Όταν δεν υπάρχουν, οι συντελεστές είναι μηδέν
– Διαφοροποίηση σε σχέση με γραφικά
• Δεν υπάρχουν απότομες αλλαγές χρωμάτων
• Που παράγουν μη μηδενικούς συντελεστές AC
24
Κβαντοποίηση συντελεστών
Κβαντοποίηση (1 από 3)
• Κβαντοποίηση συντελεστών
– 8x8=64 καταχωρίσεις κβαντοποίησης
• Ακέραιες τιμές 8 bit
• Πίνακας ίδιου μεγέθους με τη μονάδα δεδομένων
– Διαίρεση του κάθε συντελεστή DCT
• Στρογγύλευση στον πλησιέστερο ακέραιο
– Πολλαπλασιασμός για αποσυμπίεση
• Χρήση του ίδιου ακριβώς πίνακα
26
Κβαντοποίηση (2 από 3)
• Κατασκευή πίνακα κβαντοποίησης
– Κβαντοποίηση: κύριο απωλεστικό βήμα
– Το πρότυπο JPEG δεν καθορίζει τιμές
– Συμβιβασμός συμπίεσης / ποιότητας
• Φυσικές εικόνες: έμφαση σε συντελεστή DC
– Χαμηλές καταχωρίσεις κοντά στο DC
– Υψηλές καταχωρίσεις μακριά από το DC
27
Κβαντοποίηση (3 από 3)
28
Κωδικοποίηση εντροπίας
Συμπίεση (1 από 4)
• Ταξινόμηση συντελεστών
– Αρχικά ο συντελεστής DC
– Μετά σάρωση ζιγκ-ζαγκ των συντελεστών AC
– Σταδιακά οι τιμές μειώνονται
30
Συμπίεση (2 από 4)
• Συντελεστές DC
– Διαφορική κωδικοποίηση ανάμεσα σε μονάδες
– Μικρές διαφορές στις μέσες τιμές
• Συντελεστές AC
– Διαδοχικά φθίνουσες τιμές
– Πολλές μηδενικές τιμές στο τέλος
• Συμπίεση ακολουθίας μικρών τιμών
31
Συμπίεση (3 από 4)
• Κωδικοποίηση εντροπίας συντελεστών
– Κωδικοποίηση Huffman για τις συνήθεις τιμές
– Προκαθορισμένοι πίνακες ή ανά εφαρμογή
• Συντελεστές DC
– Ζεύγη της μορφής (πλήθος bit, συντελεστής)
• Συντελεστής: διαφορά με προηγούμενο DC
– Το πλήθος κωδικοποιείται με κώδικα Huffman
– Ο συντελεστής με συμπλήρωμα ως προς 2
32
Συμπίεση (4 από 4)
• Συντελεστές AC
– Κωδικοποίηση τριάδων
– (πλήθος 0, πλήθος bit, συντελεστής)
• Τεχνική RLE για μηδενικούς συντελεστές
– Πλήθος 0 / πλήθος bit: κώδικας Huffman
– Συντελεστής: συμπλήρωμα ως προς 2
33
Πρόσθετοι τρόποι κωδικοποίησης
35
Εκτεταμένος απωλεστικός (2 από 3)
• Μέθοδοι προοδευτικής κωδικοποίησης
– Φασματική επιλογή
• Αρχικά συντελεστές χαμηλών συχνοτήτων
• Υψηλές συχνότητες σε επόμενα περάσματα
– Διαδοχική προσέγγιση
• Όλοι οι συντελεστές σε κάθε πέρασμα
• Αρχικά μόνο τα πιο σημαντικά bits
• Περισσότερα bits σε επόμενα περάσματα
36
37
Μη απωλεστικός (1 από 2)
38
Μη απωλεστικός (2 από 2)
• Κωδικοποίηση εικονοστοιχείου X
– 8 τύποι πρόβλεψης
• X=A, X=B+(A-C)/2, …
– Διαφορά από πρόβλεψη
• Δεν υπάρχει κβαντοποίηση
• Κωδικοποίηση εντροπίας
– Huffman ή αριθμητική
39
Ιεραρχικός τρόπος (1 από 3)
40
41
Ιεραρχικός τρόπος (3 από 3)
• Διαδικασία κωδικοποίησης
– Μείωση ανάλυσης αρχικής εικόνας κατά 2n
– Κωδικοποίηση εικόνας
– Μείωση ανάλυσης αρχικής εικόνας κατά 2n-1
– Αποκωδικοποίηση προηγούμενου επιπέδου
– Κωδικοποίηση διαφοράς με προηγούμενο
– Συνεχίζουμε μέχρι την αρχική διάσταση
42
Μορφότυπο αρχείων
Μορφότυπο JPEG
Περιεχόμενα ενότητας
• Κωδικοποίηση βίντεο
• Το πρότυπο H.261
• Το πρότυπο Η.263
5
Κωδικοποίηση βίντεο
7
Τύποι συμπίεσης βίντεο
• Συμπίεση χωρικών πλεονασμών μόνο
– Μικρή καθυστέρηση αλλά μικρή συμπίεση
– Παρόμοια με κωδικοποίηση εικόνων
• Βασίζεται σε μεγάλο βαθμό στο JPEG
Ενδοπλαισιακή κωδικοποίηση
• Πρώτο καρέ του βίντεο
– Δεν υπάρχει προηγούμενο για πρόβλεψη
• Καρέ με αλλαγές σκηνής
– Η πρόβλεψη δεν αποδίδει
• Περιοδικά κατά τη διάρκεια του βίντεο
– Τυχαία προσπέλαση
– Ανάκαμψη από σφάλματα
9
Διαπλαισιακή κωδικοποίηση
• Σύγκριση τρέχοντος με καρέ αναφοράς
– Εντοπισμός παρόμοιων περιοχών
– Υπολογιστικά περίπλοκη λειτουργία
• Πρόβλεψη κίνησης
– Διάνυσμα κίνησης: μετατόπιση περιοχής
• Επανόρθωση κίνησης
– Δείχνει πώς τροποποιήθηκε η περιοχή
10
• Μπλοκ 8 x 8 εικονοστοιχείων
– Αξιοποίηση τεχνικών από το JPEG
• Μακρομπλόκ των n μπλοκ
– Μπλοκ όλων των συνιστωσών σε μία περιοχή
11
Τύποι καρέ (1 από 5)
13
Τύποι καρέ (3 από 5)
14
15
Τύποι καρέ (5 από 5)
• Καρέ-B
– Δύο καρέ αναφοράς (προηγούμενο και επόμενο)
– Ένα ή δύο διανύσματα κίνησης
• Παρεμβολή για μακρομπλόκ αναφοράς
16
Το πρότυπο H.261
Βίντεο στο ISDN (1 από 2)
• Μετάδοση εικόνας μέσω ISDN
– Πολλά κανάλια B (64 Kbps) για βίντεο και ήχο
– Κοινός κωδικοαποκωδικοποιητής (codec)
• Πρωτεύον ρυθμός ISDN (PRI): 30 κανάλια B
– Πρότυπα m x 384 Kbps, όπου m=1,2,…,5
• Βασικός ρυθμός ISDN (BRI): 2 κανάλια B
– Πρότυπα n x 64 Kbps, όπου n=1,2,…,5
18
19
Μορφότυπα εικόνας (1 από 2)
• Ρυθμός καρέ εισόδου: 29,97 fps (NTSC)
• Προοδευτική σάρωση
• Ρυθμός καρέ εξόδου: 29,97, 15 ή 7,5 fps
• Φωτεινότητα (Y), χρωμικότητα (Cb και Cr)
• Λόγος διαστάσεων 4:3
• Λόγος δειγματοληψίας 4:1:1
• 8 bit ανά εικονοστοιχείο ανά συνιστώσα
20
21
Λόγος συμπίεσης
• Ρυθμός δεδομένων χωρίς συμπίεση
– QCIF με 15 fps: 4,55 Mbps
– CIF με 30 fps: 36,45 Mbps
• Απαιτήσεις συμπίεσης
– 1:70 για QCIF με 15 fps σε 1 κανάλι B (64 Kbps)
– 1:95 γα CIF με 30 fps σε 6 κανάλια B (384 Kbps)
22
23
Οργάνωση καρέ (2 από 2)
24
Ενδοπλαισιακή κωδικοποίηση
• Μετασχηματισμός DCT
– Σε κάθε μπλοκ 8x8 εικονοστοιχείων
• Χωριστή κβαντοποίηση συντελεστών DC/AC
– Χρήση δύο συντελεστών κβαντοποίησης μόνο
– Σταθερός συντελεστής κβαντοποίησης DC
– Μεταβλητός συντελεστής κβαντοποίησης AC
• Κωδικοποίηση εντροπίας όπως στο JPEG
25
Διαπλαισιακή κωδικοποίηση
• Χρησιμοποιείται όποτε θέλει ο κωδικοποιητής
– Δεν υπάρχει περιοδικότητα
• Πρόβλεψη περιεχομένου μακρομπλοκ
– Σύγκριση με μακρομπλόκ προηγούμενου καρέ
– Μόνο με το αμέσως προηγούμενο όμως!
– Μπορεί να είναι καρέ-I ή καρέ-P
• Αν δεν υπάρχει ομοιότητα?
– Κάνουμε ενδοπλαισιακή κωδικοποίηση!
26
Κωδικοποίηση κίνησης
• Διανύσματα κίνησης
– Κωδικοποίηση εντροπίας
• Διαφορές μακρομπλόκ
– Αρχικά διαφορική κωδικοποίηση (DPCM)
– Μετά όπως σε ενδοπλαισιακή κωδικοποίηση
– Αν οι διαφορές είναι μικρές παραλείπονται
• Αύξηση συμπίεσης με κόστος σε ποιότητα
27
Σταθερός ρυθμός μετάδοσης
Ρεύμα δεδομένων
31
Νέα χαρακτηριστικά (2 από 2)
• Βελτιωμένες τεχνικές συμπίεσης
– Δυνατότητα πρόβλεψης δύο κατευθύνσεων
• Ανάλογο με καρέ-B στο MPEG
• Καλύτερη ποιότητα αλλά περισσότερη μνήμη
– Αναφορές μερικώς εκτός καρέ αναφοράς
• Σε περιοχές που βγαίνουν από το καρέ
• Υποθέτουμε σταθερή τιμή εκτός του καρέ
• Χρήσιμο λόγω της πολύ μικρής ανάλυσης
32
33
Ανάκαμψη από σφάλματα (2 από 5)
• Αντιμετώπιση στο H.261
– Αποστολή ενδοπλαισιακά κωδικοποιημένων καρέ
– Αναγκαστικά γίνεται περιοδικά
• Δεν γνωρίζουμε τι σφάλματα έχουν γίνει
– Σπατάλη εύρους ζώνης για την ανάκαμψη
– Το H.263 παρέχει πιο οικονομικές επιλογές
34
35
Ανάκαμψη από σφάλματα (4 από 5)
• Επιλογή καρέ αναφοράς
– Αναφορά σε παλαιότερα καρέ
• Όχι μόνο στο αμέσως προηγούμενο
• Ανάκαμψη από απώλεια GOB
• Απαιτείται παρακολούθηση των εξαρτήσεων
– Ο αποκωδικοποιητής έχει δύο επιλογές
• Είτε επιβεβαιώνει τις ορθές λήψεις
• Είτε ενημερώνει για τις απώλειες
36
Σκοποί ενότητας
• Εξοικείωση με το πρότυπο MPEG-1 στον
τομέα της κωδικοποίησης βίντεο και της ροής
δεδομένων.
• Κατανόηση των επεκτάσεων που προσφέρει
το πρότυπο MPEG-2 και των εφαρμογών του.
• Εισαγωγή στις καινοτομίες του προτύπου
MPEG-4 και στην κωδικοποίηση βίντεο MPEG-
4 (part 2).
4
Περιεχόμενα ενότητας
• Το πρότυπο MPEG-1
• Ομάδες εικόνων
• Ρεύματα δεδομένων
• Το πρότυπο MPEG-2
• Το πρότυπο MPEG-4
• Κωδικοποίηση στο MPEG-4
Το πρότυπο MPEG-1
Τι είναι το MPEG; (1 από 2)
• MPEG (Motion Pictures Experts Group)
– Παρόμοιο όνομα με το JPEG
– Βίντεο και ήχος υψηλής ποιότητας
– Διανομή ή μετάδοση μέσων
– MPEG-1: CD-ROM, Τ1
– MPEG-2: DVD, DTV
– MPEG-4: HDTV, κινητά, αλληλεπίδραση
8
Στόχοι του MPEG-1 (1 από 2)
• Ρυθμός δεδομένων έως 1,2-1,5 Mbps
– CD-ROΜ μονής ταχύτητας ή γραμμή T-1
• Μορφότυπα εικόνας
– Συνιστώσες YUV, αναλογία (4:1:1 ή 4:2:0)
– 8 bits ανά εικονοστοιχείο ανά συνιστώσα
• 14 λόγοι διαστάσεων εικονοστοιχείων
– 1:1 για τετράγωνα εικονοστοιχεία
– Διαφορετικοί λόγοι για 4:3 και 16:9
10
Δομή εικόνας MPEG-1
• Μακρομπλόκ
– 16 x 16 φωτεινότητα, 8 x 8 χρωμικότητα
• Οριζόντια τμήματα (slices)
– 352 x 240 (NTSC): 15 τμήματα x 22 μακρομπλόκ
– 352 x 288 (PAL/SECAM): 18 τμήματα x 22 μακρομπλόκ
11
Καρέ-I (1 από 2)
• Καρέ-I (Ι-frames)
– Κωδικοποίηση χωρίς αναφορές σε άλλα καρέ
– Κατάλληλα για τυχαία προσπέλαση
– JPEG με απωλεστικό ακολουθιακό ρυθμό
• Μικρές αποκλίσεις για απλότητα
12
Καρέ-I (2 από 2)
• Είσοδος: Μπλοκ (8x8)
– Μετασχηματισμός DCT
– Κβαντοποίηση συντελεστών
– DPCM για συντελεστές DC
– Διάταξη ζιγκ-ζαγκ για συντελεστές AC
– Κωδικοποίηση μήκους σειρών (RLE)
– Κωδικοποίηση εντροπίας παρόμοια με Huffman
13
Καρέ-P (1 από 2)
• Καρέ-P (P-frames)
– Επανόρθωση κίνησης με καρέ αναφοράς
– Αναφορά: αμέσως προηγούμενο καρέ-I ή -P
– Εντοπισμός πλέον παρόμοιου μακρομπλόκ
– Επιτρέπονται και μακρομπλόκ χωρίς πρόβλεψη
14
Καρέ-P (2 από 2)
• Διάνυσμα κίνησης
– DPCM σε γειτονικά μακρομπλόκ
• Διαφορές μπλοκ: μετασχηματισμός DCT
– Ταυτόχρονη κωδικοποίηση/κβαντοποίηση AC και DC
15
Καρέ-B
• Καρέ-B (B-frames)
– Πρόβλεψη με δύο καρέ αναφοράς
– Ίδια μέθοδος κωδικοποίησης με τα καρέ-P
– Περιοδική χρήση καρέ-I και καρέ-P
– Κωδικοποίηση ενδιάμεσων καρέ-B
16
Καρέ-D
• Καρέ-D (D-frames)
– Ενδοπλαισιακή κωδικοποίηση
– Χαμηλότερη ποιότητα από τα καρέ-I
• Κωδικοποιούνται μόνο οι συνιστώσες DC
– Κωδικοποιούνται επιπλέον των καρέ-I
– Δεν χρησιμοποιούνται για πρόβλεψη
– Γρήγορη κίνηση εμπρός και πίσω
– Δεν χρησιμοποιούνται στις επόμενες εκδόσεις
17
Ρυθμός δεδομένων
• Επίτευξη σταθερού ρυθμού δεδομένων
– Παράγοντας κλιμάκωσης κβαντοποίησης
• Παρόμοια λογική με H.261
• Ακέραιος αριθμός ανάμεσα στο 1 και το 31
– Πολλαπλασιαστής συντελεστών
• Στο H.261 έχουμε έναν μόνο συντελεστή
– Παρακολουθεί τη χωρητικότητα του ενταμιευτή
– Μεταδίδεται σε κάθε αλλαγή τιμής
18
Ομάδες εικόνων
Ομάδα εικόνων
20
Ομάδα καρέ
• Ομάδα καρέ
– Ξεκινάει με καρέ-I ή P
– Τελειώνει πριν το επόμενο καρέ-P ή I
– Διάκριση αποκωδικοποίησης και εμφάνισης
– M: ελάχιστη μονάδα αποκωδικοποίησης
21
Ενταμίευση πλαισίων
• Πόσο πρέπει να κρατάω κάθε πλαίσιο;
– Καρέ-I: μέχρι το επόμενο καρέ-P
– Καρέ-P: μέχρι το επόμενο καρέ-P ή καρέ-I
– Καρέ-B: καθόλου
• Δεν χρησιμοποιούνται ποτέ ως καρέ αναφοράς
• Χρειάζονται όμως το επόμενο P/I για αναφορά
22
Ακολουθίες καρέ
• Συνηθισμένες ακολουθίες καρέ
– PAL
• Εμφάνιση “IBBPBBPBBIBBPBBPBB…”
• Αποκωδικοποίηση “IPBBPBBIBBPBBPBB…”
– NTSC
• Εμφάνιση “IBBPBBPBBPBBIBBPBBPBBPBB …”
• Αποκωδικοποίηση “IPBBPBBPBBIBBPBBPBBPBB …”
– Μετάδοση με τη σειρά αποκωδικοποίησης
23
Ρεύματα δεδομένων
Οργάνωση δεδομένων
25
26
Επίπεδα δεδομένων (2 από 2)
• Επίπεδο εικόνας: καρέ
– Αριθμοί σειράς για συσχέτιση πλαισίων
• Επίπεδο τμημάτων: τμήματα πλαισίων
• Επίπεδο μακρομπλόκ: χαρακτηριστικά
μακρομπλόκ
• Επίπεδο μπλοκ: χαρακτηριστικά μπλοκ
• Παρόμοια με H.261
27
Πολύπλεξη (1 από 2)
• Πολύπλεξη βίντεο, ήχου και άλλων μέσων
– Συνδυασμός ρευμάτων επιμέρους μέσων
– Διαίρεση ρεύματος κάθε μέσου σε πακέτα
• Τυπικό μέγεθος 2048 byte
• Ίσο με έναν τομέα CD-ROM
– Χρονοσφραγίδες για συγχρονισμό (90 kHz)
– Στοιχειώδες ρεύμα πακέτων (PES)
• Προκύπτει από στοιχειώδες ρεύμα (ES) κωδικοποιητή
28
Πολύπλεξη (2 από 2)
• Πολύπλεξη ρευμάτων δεδομένων
– Πολύπλεξη των PES σε πακέτα (packs)
– Χρονοσφραγίδα πακέτου
• Συγχρονισμός ρολογιού αποκωδικοποιητή
– Επικεφαλίδα στο πρώτο πακέτο
• Μέγιστος ρυθμός δεδομένων, τύποι PES
– Δυσκολία πρόσβασης για δικτυακά ρεύματα
• Πρέπει να τα έχουμε διαβάσει από την αρχή
29
Το πρότυπο MPEG-2
Τι είναι το MPEG-2;
• Στόχοι MPEG-2
– Υψηλή ανάλυση, μέχρι και HDTV
– Χρησιμοποιείται ευρύτατα στα DVD
– Ρυθμοί δεδομένων 4 Mbps έως 100 Mbps
• Γιατί δεν υπάρχει MPEG-3;
– Αρχικά προοριζόταν για το HDTV
– Τελικά το MPEG-2 κάλυψε και το HDTV
31
32
Προφίλ και επίπεδα (1 από 3)
• Προφίλ και επίπεδα
– Προφίλ: υποστηρίζει κατηγορία εφαρμογών
• Περιγράφεται ο αλγόριθμος κωδικοποίησης
– Επίπεδο: δίνει παραμέτρους για τα προφίλ
• Δειγματοληψία, ανάλυση, ρυθμός δεδομένων
• Επίπεδα
– Χαμηλό επίπεδο: αναλογική τηλεόραση
– Κύριο επίπεδο: DVD, ψηφιακή τηλεόραση
– Υψηλά επίπεδα: HDTV σε δύο παραλλαγές
33
34
Προφίλ και επίπεδα (3 από 3)
Απλό Κύριο Κλιμάκωση Χωρική Υψηλό
Προφίλ
Προφίλ Προφίλ SNR κλιμάκωση Προφίλ
Καρέ-B Όχι Ναι Ναι Ναι Ναι
Λόγος
4:1:1 4:1:1 4:1:1 4:1:1 4:1:1,4:2:2
Δειγμ/ψίας
SNR
Κλιμάκωση Όχι Όχι SNR Χωρική
Χωρική
Επίπεδο
Υψηλό
<80 Mbps <100 Mbps
(1920x1152)
Υψηλό-1440
<60 Μbps <60 Mbps <80 Μbps
(1440x1152)
Κύριο
<15 Mbps <15 Mbps <15 Mbps <20 Mbps
(720x576)
Χαμηλό
<4 Mbps <4 Mbps
(352x288)
• Προκαθορισμένοι συνδυασμοί
35
Κλιμάκωση (1 από 2)
• Χωρική κλιμάκωση
– Αποκωδικοποίηση σε διαφορετικές αναλύσεις
– Πυραμιδική κωδικοποίηση της εικόνας
• Συνήθως με βάση τις δυνάμεις του 2
– Χωρικά κλιμακώσιμο προφίλ
– Παρόμοιο με ιεραρχικό JPEG
36
Κλιμάκωση (2 από 2)
• Κλιμάκωση σήματος προς θόρυβο (SNR)
– Στρωματοποιημένη κωδικοποίηση
– Μεταβλητή κβαντοποίηση συντελεστών DCT
– Διάκριση δεδομένων για διόρθωση λαθών
– Κλιμακώσιμο κατά SNR προφίλ
– Παρόμοιο με προοδευτικό JPEG
37
39
40
Διεμπλεκόμενοι ρυθμοί (1 από 2)
• Διεμπλεκόμενη σάρωση
– Κάθε καρέ διαιρείται σε δύο πεδία
– Άρτιο πεδίο: άρτιες γραμμές καρέ
– Περιττό πεδίο: περιττές γραμμές καρέ
• Σχηματισμός μακρομπλόκ (καρέ-I)
– Λειτουργία πεδίων: μακρομπλόκ ανά πεδίο
– Λειτουργία καρέ: μακρομπλόκ ανά καρέ
41
42
Το πρότυπο MPEG-4
44
Τι είναι το MPEG-4; (2 από 2)
• Διαφοροποίηση από τα MPEG-1/2
– Έμφαση στη δομή των ροών
• Κάθε καρέ αποτελείται από αντικείμενα
– Κάλυψη της αλληλεπίδρασης με τους χρήστες
• Τροποποίηση της δομής των αντικειμένων
• Δύο είδη κωδικοποίησης
– Κωδικοποίηση οπτικοακουστικών αντικειμένων
– Κωδικοποίηση σύνθεσης σκηνών
45
Σκηνές (1 από 3)
• Πολυπλέκτης (MUX)
– Πολύπλεξη πληροφοριών σύνθεσης σε μία ροή
– Θέση, βάθος και προσανατολισμός AVO
– Ήχος και κωδικοποίηση σκηνής
47
Σκηνές (3 από 3)
• Αποπολυπλέκτης (DEMUX)
– Ανάκτηση σχήματος, κίνησης και υφής AVO από ροή
– Αποκωδικοποίηση AVO και σύνθεση σκηνής
– Προαιρετικά: τροποποίηση σκηνής (μέσω BIFS)
48
Σύνθεση σκηνών (1 από 2)
• Σύνθεση σκηνής από ιεραρχία αντικειμένων
– Αρχικά, μετάδοση ιεραρχίας αντικειμένων
– Μετά, μετάδοση αλλαγών σε κάθε κόμβο
– Πιθανή τροποποίηση της ιεραρχίας
• Πιθανοί τρόποι αλληλεπίδρασης
– Αλλαγή θέσης παρατήρησης της σκηνής
– Σύρσιμο αντικειμένων σε άλλες θέσεις
– Εκκίνηση μίας ακολουθίας γεγονότων
49
50
Κωδικοποίηση στο MPEG-4
Επιφάνειες βίντεο
• Δύο τύποι επιφανειών βίντεο
• Αντικείμενα που συνθέτουν τη σκηνή
– Φυσικά ή συνθετικά
• Διαφορετικές δυνατότητες κωδικοποίησης
– Ορθογώνια καρέ βίντεο: εκφυλισμένη μορφή
• Sprites: στατικά αντικείμενα για το φόντο
– Επιτρέπουν απλές παραμορφώσεις και κινήσεις
52
Συνθετικά αντικείμενα
• Συνθετικά αντικείμενα
– Ανθρώπινα πρόσωπα / σώματα, πλέγματα
• Κωδικοποίηση ανθρώπινων χαρακτηριστικών
– Παράμετροι περιγραφής προσώπων και κινήσεων
– Παράμετροι περιγραφής σώματος και κινήσεων
• Αναπαράσταση αντικειμένων με πλέγματα
– Σύνολα επίπεδων πολυγωνικών επιφανειών
– Ρεαλιστική απεικόνιση με προβολή υφών
53
54
Φυσικά αντικείμενα (2 από 7)
• Δυαδικός (binary) χάρτης δυφίων σχήματος
– 255: το εικονοστοιχείο ανήκει, 0: δεν ανήκει
– Τεμαχίζεται σε περιοχές 16 x 16 (σαν μακρομπλόκ)
– Κάθε περιοχή κωδικοποιείται χωριστά
– Ειδική κωδικοποίηση για περιοχές μόνο με 0 ή 255
– Πρόβλεψη από προηγούμενα και γειτονικά σημεία
• Διαφορική κωδικοποίηση των διανυσμάτων κίνησης
– Αριθμητική κωδικοποίηση του αποτελέσματος
55
56
Φυσικά αντικείμενα (4 από 7)
• Κωδικοποίηση κίνησης
– Παρόμοια με MPEG-2 αλλά σε επίπεδο VOP
• Υπάρχουν I-VOP, P-VOP και B-VOP
– Κίνηση με ακρίβεια μισού εικονοστοιχείου
– Χρήση μόνο εικονοστοιχείων εντός χάρτη δυφίων
• Σταθερή τιμή για εικονοστοιχεία εκτός χάρτη δυφίων
– Διαφορική κωδικοποίηση διανυσμάτων κίνησης
• Χρήση μέχρι και τριών προηγούμενων διανυσμάτων
57
58
Φυσικά αντικείμενα (6 από 7)
• Κωδικοποίηση υφής
– Κβαντοποίηση συντελεστών
• Σταθερός παράγοντας, ή ένας από δύο πίνακες παραγόντων
– Πρόβλεψη συντελεστών από γειτονικά μπλοκ
• Διαφορετική για συντελεστές AC και DC
– Σάρωση συντελεστών
• Ζιγκ-ζαγκ, ανά οριζόντια ή ανά κατακόρυφη γραμμή
• Ανάλογα με τον τρόπο πρόβλεψης του συντελεστή DC
– Kωδικοποίηση εντροπίας
• Δύο πίνακες κωδικοποίησης, ανάλογα με την κβαντοποίηση
59
60
Κλιμάκωση
• Χωρική και χρονική κλιμάκωση
– Μερική αποκωδικοποίηση για παρουσίαση
– Χωρική: χρήση βασικού επιπέδου για πρόβλεψη
• Μεγέθυνση του βασικού επιπέδου
– Χρονική: πρόβλεψη από επίπεδο βελτίωσης
• Χρήση ίδιου επιπέδου σε προηγούμενο καρέ
61
62
Κωδικοποίηση ήχου (2 από 2)
• Μουσική σύνθεση με βάση παρτιτούρα
– Ρυθμός μετάδοσης 2-3 Kbps
– Ορχήστρα που αποτελείται από όργανα
– Οδηγίες προς τα όργανα αυτά
– Τράπεζα ήχων και σύνολο ηχητικών εφφέ
– Υποστήριξη και του MIDI
• Σχετικά περιορισμένες δυνατότητες
63
65
Περιεχόμενα ενότητας
• Εισαγωγή
• Δικτυακή υποστήριξη
• Κωδικοποίηση βίντεο
• Προφίλ και επίπεδα
• Ανάκαμψη από σφάλματα
• Κλιμακώσιμη κωδικοποίηση
5
Εισαγωγή
7
Τι είναι το H.264; (2 από 2)
• Πιο φιλικό στο δίκτυο
– Κατάλληλο για αλληλεπίδραση (όπως το H.263)
– Κατάλληλο για διανομή (όπως το MPEG-4 Part 2)
– Μεγαλύτερη αντοχή σε σφάλματα
• Πιο ευέλικτο στη χρήση
– Τυχαία προσπέλαση και αλλαγές κεφαλαίων
– Γρήγορη/αργή κίνηση προς τα εμπρός/πίσω
Δικτυακή υποστήριξη
Δικτυακή υποστήριξη (1 από 5)
• Διάκριση προτύπου σε δύο τμήματα
– Video Coding Layer (VCL)
– Network Abstraction Layer (NAL)
• NAL: προσαρμογή σε συστήματα μετάδοσης
– RTP/UDP/IP για δίκτυα
– MPEG-2 για τηλεόραση
– Αρχεία για αποθήκευση και μηνύματα
– H.32x για τηλεδιασκέψεις
10
11
Δικτυακή υποστήριξη (3 από 5)
• Δύο είδη NALU
– VCL: περιέχουν πληροφορίες βίντεο
– Non-VCL: σύνολα παραμέτρων, χρονισμός
• Σύνολα παραμέτρων
– Κοινές παράμετροι για πολλά VCL NALU
– Στέλνονται πριν από τα δεδομένα εικόνας
– Μπορεί να στέλνονται με μεγαλύτερη αξιοπιστία
• Είτε με χωριστό αξιόπιστο κανάλι
• Είτε με πρόσθετη προστασία (π.χ. επανάληψη)
12
13
Δικτυακή υποστήριξη (5 από 5)
• Ακολουθίες βίντεο
– Σύνολο μονάδων πρόσβασης
– Ίδιο σύνολο παραμέτρων για όλες
– Αποκωδικοποιούνται αυτόνομα
– Ξεκινάνε με καρέ που δεν αναφέρεται σε άλλα
– Παρόμοια με GOP στο MPEG-2
14
Κωδικοποίηση βίντεο
Τμήματα (1 από 4)
• Video Coding Layer (VCL)
– Αξιοποιεί γνωστές τεχνικές κωδικοποίησης
• Επέκταση H.263 και MPEG-4 Part 2
– Πολλές επί μέρους βελτιώσεις
• Όλες μαζί συνεισφέρουν στη βελτιωμένη συμπίεση
• Τεμαχισμός καρέ σε μακρομπλόκ
– Τα μακρομπλόκ οργανώνονται σε τμήματα
– Το πλήθος μακρομπλόκ ανά τμήμα είναι αυθαίρετο
– Κάθε τμήμα αποκωδικοποιείται αυτόνομα
16
Τμήματα (2 από 4)
• Χρήση των τμημάτων
– Επιτρέπουν συγχρονισμό μετά από σφάλματα
• Ξεκινούν με ειδικό κωδικό
– Προσαρμογή στο μέγεθος των πακέτων δικτύου
• Ιδανικά: ένα τμήμα ανά πακέτο
– Τα πιο σημαντικά μπορεί να επαναλαμβάνονται
17
Τμήματα (3 από 4)
• Ευέλικτη ταξινόμηση μακρομπλόκ
– Τμήματα με μη συνεχόμενα μακρομπλόκ
• Χρήση χάρτη για αντιστοίχιση σε τμήματα
– Διάφορα είδη ταξινόμησης
• Ανάλογα με τις ανάγκες
• Διεμπλοκή μακρομπλόκ για αύξηση αξιοπιστίας
• Διαχωρισμός σημαντικών για πρόσθετη προστασία
18
Τμήματα (4 από 4)
• Προσαρμοστική ταξινόμηση τμημάτων
– Μετάδοση τμημάτων με αυθαίρετη σειρά
• Τύποι τμημάτων
– Τμήμα I: μόνο μακρομπλόκ χωρίς πρόβλεψη
– Τμήμα P: και μακρομπλοκ με απλή πρόβλεψη
– Τμήμα B: και μακρομπλόκ με διπλή πρόβλεψη
– Τμήμα SP/SI: χρήση για τυχαία προσπέλαση
19
Ενδοπλαισιακή (1 από 3)
• Ενδοπλαισιακή κωδικοποίηση (μακρομπλόκ-I)
• Πρόβλεψη από μπλοκ και στο ίδιο καρέ
– Πρέπει να προηγούνται στη σειρά εμφάνισης
– Μπορεί να είναι διαπλαισιακά κωδικοποιημένα!
– Δεν επιτρέπεται πρόβλεψη έξω από το τμήμα
• Περιορισμένη ενδοπλαισιακή κωδικοποίηση
– Πρόβλεψη μόνο από ενδοπλαισιακά μπλοκ
20
Ενδοπλαισιακή (2 από 3)
• Πρόβλεψη σε περιοχές 4x4 ή 16x16
• 4x4 για μεγαλύτερη λεπτομέρεια
– Διάφοροι τύποι πρόβλεψης
– Μέση τιμή εικονοστοιχείων πάνω / αριστερά
– Αντίστοιχα εικονοστοιχεία πάνω από το μπλοκ
– Αντίστοιχα εικονοστοιχεία αριστερά από μπλοκ
– Αντίστοιχα με διάφορες διαγωνίους
21
Ενδοπλαισιακή (3 από 3)
• 16x16 για φόντο ή απλές περιοχές
– Λιγότεροι τύποι πρόβλεψης
– Μέση τιμή, εικονοστοιχεία πάνω / αριστερά
• Ασυμπίεστα μπλοκ (PCM)
– Τιμές των δειγμάτων χωρίς συμπίεση
– Για περίπλοκα μπλοκ και υψηλή ποιότητα
22
Διαπλαισιακή (1 από 5)
• Διαπλαισιακή κωδικοποίηση (μακρομπλόκ-P)
• Επιτρέπονται διάφορα μεγέθη μπλοκ
– Μεγέθη 16x16, 16x8, 8x16 ή 8x8
– Τα 8x8 μπορεί να διαιρούνται σε 8x4, 4x8 ή 4x4
– Κάθε μπλοκ έχει το δικό του διάνυσμα κίνησης
• Επιτρέπεται πρόβλεψη από διάφορα καρέ
– Τα διανύσματα κίνησης περιέχουν και αναφορές
23
Διαπλαισιακή (2 από 5)
• Μη ακέραια διανύσματα κίνησης
– 1, ½ ή ¼ εικονοστοιχείου σε κάθε διάσταση
• Μπλοκ αναφοράς με ½ εικονοστοιχείο
– Σχηματίζονται με φίλτρο
– Γραμμικός συνδυασμός +/-3 γειτονικών
• Μπλοκ αναφοράς με ¼ εικονοστοιχείο
– Μέσοι όροι
– Από τα εικονοστοιχεία σε ακέραιη και ½ απόσταση
24
Διαπλαισιακή (3 από 5)
• Διανύσματα εκτός του καρέ αναφοράς
– Υποθέτουμε ότι επαναλαμβάνονται οι ακραίες τιμές
• Διαφορική κωδικοποίηση διανυσμάτων κίνησης
– Πρόβλεψη μόνο μέσα στο ίδιο τμήμα
– Μπορεί να είναι κατευθυντική ή με μέσο όρο
• Απλή πρόβλεψη (P_Skip)
– Δεν μεταδίδεται σχεδόν τίποτα!
– Ίδιο μπλοκ με προηγούμενη εικόνα
– Ίδιο διάνυσμα με προηγούμενο
25
Διαπλαισιακή (4 από 5)
• Διαπλαισιακή κωδικοποίηση (μακρομπλόκ-B)
– Γενίκευση των καρέ-B
• Μπορούν να χρησιμοποιούνται ως μπλοκ αναφοράς
• Χρησιμοποιούν συνδυασμό δύο προβλέψεων
– Τέσσερις τύποι πρόβλεψης
• Προηγούμενα ή επόμενα καρέ, συνδυασμός και απλή
• Η απλή πρόβλεψη είναι όπως στα μακρομπλόκ-P
– Επιτρέπονται διάφορα μεγέθη μπλοκ
26
Διαπλαισιακή (5 από 5)
• Συνδυασμός προβλέψεων
– Χρήση βαρών και αποστάσεων στο διάνυσμα
• Προστίθεται η απόσταση στα εικονοστοιχεία
• Σταθμίζεται κάθε μπλοκ ανάλογα με το βάρος
• Ισχύει για τα μακρομπλόκ-B και μακρομπλόκ-P
27
Μετασχηματισμός (1 από 2)
• Ακέραιος μετασχηματισμός
– Παρόμοιος με DCT
– Πίνακας πολλαπλασιασμού με ακέραιες τιμές
• Μεγάλη απλοποίηση των υπολογισμών
– Χρήση ακέραιης αριθμητικής 16 bit
• Παλιότερες μέθοδοι απαιτούν 32 bit
28
Μετασχηματισμός (2 από 2)
• Χρήση μπλοκ 4x4 αντί 8x8
– Επιτρέπονται περισσότεροι τύποι πρόβλεψης
– Άρα οι διαφορές είναι μικρότερες
– Καλύτερη ποιότητα στις ακμές
– Απλούστεροι υπολογισμοί με μικρότερους αριθμούς
• Οι DC περνάνε από δεύτερο μετασχηματισμό
– Νέος πίνακας με τους DC κάθε μπλοκ 4x4
– Βελτιώνει συμπίεση σε ομοιόμορφες περιοχές
29
Κβαντοποίηση
• Μοναδικός συντελεστής κβαντοποίησης
– Με 52 δυνατές τιμές (0-51)
– Καθορίζει ένα βήμα κβαντοποίησης
• Λογαριθμική αντί γραμμικής κβαντοποίησης
– Κάθε 6 τιμές διπλασιάζεται το βήμα
– Κάθε τιμή αυξάνει το βήμα κατά 12%
30
Κωδικοποίηση εντροπίας
• Προσαρμοστική μεταβλητού μήκους
– Παρόμοια με κωδικοποίηση Huffman
– Οι πίνακες αλλάζουν ανάλογα με το τι έχουμε δει ήδη
– Διαφορετικός πίνακας για κάθε στατιστική κατανομή
– Καλύτερη συμπίεση σε σχέση με έναν μόνο πίνακα
• Προσαρμοστική αριθμητική κωδικοποίηση
– Οι πιθανότητες μεταβάλλονται ανάλογα με ιστορία
– Βελτιώνει τη συμπίεση κατά 5-15%
31
Φίλτρο deblocking
• Σε χαμηλό ρυθμό bit εμφανίζονται ατέλειες
– Τα άκρα κωδικοποιούνται χειρότερα από το κέντρο
– Τα γειτονικά μπλοκ κωδικοποιούνται ανεξάρτητα
• Το φίλτρο μειώνει τις ατέλειες
– Εξετάζει τα εικονοστοιχεία σε γειτονικά μπλοκ
– Διαφορές > συντελεστή κβαντοποίησης μένουν
– Μικρότερες διαφορές φιλτράρονται
– Μειώνει το ρυθμό κατά 5-10% με ίδια ποιότητα
32
Διεμπλεκόμενο βίντεο
• Κωδικοποίηση καρέ ή πεδίου
– Ελαφρά διαφορετική κωδικοποίηση πεδίου
• Αλλαγή ανά εικόνα ή και ανά μακρομπλόκ
– Καρέ σε περιοχές που δεν έχουμε κίνηση
– Πεδίου σε περιοχές που έχουμε κίνηση
33
Προφίλ και επίπεδα
35
Σύνολα χαρακτηριστικών (2 από 2)
• Προφίλ: ποια εργαλεία επιτρέπονται
– Baseline: σύνολα 0 και 2 (αξιοπιστία)
– Main: σύνολα 0, 3 και 4 (απόδοση)
– Extended: σύνολα 0, 1, 2 και 3
• Επίπεδο: τιμές βασικών παραμέτρων
– 15 επίπεδα, ίδια για όλα τα προφίλ
– Ανάλυση, ρυθμός μακρομπλόκ, ρυθμός bit
36
38
Ανάκαμψη (2 από 4)
• Σύνολα παραμέτρων
– Μπορούν να στέλνονται με αυξημένη αξιοπιστία
• Ευέλικτη ταξινόμηση μακρομπλόκ
– Διεμπλοκή για ανάκαμψη από σφάλματα
• Πλεονάζοντα τμήματα
– Επανάληψη σημαντικών τμημάτων της εικόνας
– Κωδικοποίηση με χαμηλότερη ποιότητα
39
Ανάκαμψη (3 από 4)
• Κατάτμηση δεδομένων σε τρία μέρη
– A: Τύποι μακρομπλόκ, διανύσματα, κβαντοποιητής
– B: Ενδοπλαισιακά κωδικοποιημένα μπλοκ
– C: Διαπλαισιακά κωδικοποιημένα μπλοκ
– Φθίνουσα σειρά σπουδαιότητας
• Η κατάτμηση A είναι απαραίτητη για τις B και C
• Η A επιτρέπει απόκρυψη σφαλμάτων
• Μπορούμε να έχουμε διαφορετική μεταχείριση στο δίκτυο
40
Ανάκαμψη (4 από 4)
• Σήμανση NALU
– Κάθε NALU έχει προτεραιότητα στην κεφαλίδα
• Το δίκτυο μπορεί να κάνει επιλεκτική απόρριψη
• Συνδυάζεται με την κατάτμηση δεδομένων
– Απαγορευμένο bit: χαλασμένα δεδομένα
• Επιτρέπει στον αποκωδικοποιητή να δράσει
41
Κλιμακώσιμη κωδικοποίηση
Κλιμάκωση (1 από 5)
• Επέκταση Scalable Video Coding (SVC)
– Πολλαπλές αναλύσεις/ποιότητες/ρυθμοί καρέ
• Τρία νέα κλιμακώσιμα επίπεδα
– Μερική μετάδοση ή αποκωδικοποίηση της ροής
– Ίδια ποιότητα με απλή ροή (μη κλιμακώσιμη)
– Εύκολη εξαγωγή μη κλιμακώσιμης ρόής
– Μικρή αύξηση του ρυθμού μετάδοσης
– Μικρή αύξηση πολυπλοκότητας αποκωδικοποίησης
• Σε σχέση με MPEG-2 και MPEG-4 part 2
43
Κλιμάκωση (2 από 5)
• Στόχοι του SVC
– Υποστήριξη ετερογενών τερματικών
– Υποστήριξη ετερογενών δικτύων
• Τύποι κλιμάκωσης
– Χρονική κλιμάκωση (ρυθμός καρέ)
• Υποστηρίζεται ήδη σε μεγάλο βαθμό από το Η.264/AVC
– Χωρική κλιμάκωση (διάφορες αναλύσεις)
• Επιτρέπονται πολλοί λόγοι διαστάσεων στην ίδια ροή
– Κλιμάκωση ποιότητας (ακρίβεια εικόνας)
44
Κλιμάκωση (3 από 5)
• Κωδικοποίηση σε επίπεδα
– Η ροή περιέχει σειρά από αριθμημένα επίπεδα
– Το 0 δεν χρειάζεται ειδικό αποκωδικοποιητή
• Αρκεί ένας απλός αποκωδικοποιητής H.264/AVC
– Τα >0 βελτιώνουν ανάλυση ή ποιότητα
• Σε σχέση με (χαμηλότερο) επίπεδο αναφοράς
• Κάθε εικόνα μπορεί να έχει διαφορετικό επίπεδο
45
Κλιμάκωση (4 από 5)
• Πρόβλεψη ανάμεσα σε επίπεδα
– Ανά μακρομπλόκ ή υποδιαιρέσεις του
– Απλούστερη περίπτωση: ίδια με επίπεδο αναφοράς
• Ενδοπλαισιακά μπλοκ: ίδιο με μπλοκ αναφοράς
• Διαπλαισιακά μπλοκ: ίδια πρόβλεψη με μπλοκ αναφοράς
• Τα μπλοκ αναφοράς και τα διανύσματα κλιμακώνονται
– Αλλιώς, διαφορά από μπλοκ αναφοράς
• Κλιμάκωση του μπλοκ αναφοράς πριν την αφαίρεση
46
Κλιμάκωση (5 από 5)
• Ενιαία αποκωδικοποίηση για όλα τα επίπεδα
– Δεν αποκωδικοποιείται κάθε επίπεδο χωριστά
• Χρονική κλιμάκωση
– Αύξηση ρυθμού πλαισίου σε κάθε επίπεδο
– Προσοχή στην επιλογή των καρέ αναφοράς
• Επιτρέπεται αναφορά μόνο σε χαμηλότερο επίπεδο
47
Ενότητα # 15: Συγχρονισμός πολυμέσων
Σκοποί ενότητας
• Κατανόηση των προβλημάτων συγχρονισμού
πολυμέσων και των βασικών τρόπων
αντιμετώπισής τους.
• Εισαγωγή στον κατανεμημένο συγχρονισμό.
• Εξοικείωση με τις βασικές μεθόδους
διατύπωσης προδιαγραφών συγχρονισμού.
• Κατανόηση του πώς οι διάφορες τεχνικές
εντάσσονται σε ένα γενικό πλαίσιο αναφοράς
συγχρονισμού.
4
Περιεχόμενα ενότητας
• Εισαγωγή
• Απαιτήσεις συγχρονισμού
• Αντιμετώπιση προβλημάτων
• Κατανεμημένος συγχρονισμός
• Προδιαγραφές συγχρονισμού
• Πλαίσιο αναφοράς συγχρονισμού
Εισαγωγή
Τι σημαίνει συγχρονισμός; (1 από 3)
• Πολυμέσα: ενοποιημένη διαχείριση μέσων
– Ψηφιακή αναπαράσταση μέσων
– Κάθε μέσο είναι ανεξάρτητο
– Άρα, χρειάζεται συγχρονισμός μέσων!
• Σε ποιο επίπεδο γίνεται ο συγχρονισμός;
– LDU: λογικές μονάδες δεδομένων ενός μέσου
– Συγχρονισμός σε επίπεδο LDU
8
Τι σημαίνει συγχρονισμός; (3 από 3)
• Ζωντανός συγχρονισμός: φυσικά μέσα
– Ψηφιοποίηση όλων των μέσων μαζί
• Παράδειγμα: ήχος και εικόνα
– Αναπαραγωγή συσχετίσεων ψηφιοποίησης
• Συνθετικός συγχρονισμός: συνθετικά μέσα
– Ανεξάρτητη ψηφιοποίηση των μέσων
– Οι συσχετίσεις ορίζονται εκ των υστέρων
• Παράδειγμα: εικόνα και υπότιτλοι
Απαιτήσεις συγχρονισμού
Απαιτήσεις
• Συγχρονισμός ενός αντικειμένου
– Αποφυγή διαταραχής στο χρόνο παρουσίασης
• Αυστηρά περιοδική παρουσίαση
11
12
Συγχρονισμός χειλιών (2 από 4)
13
14
Συγχρονισμός χειλιών (4 από 4)
• Τρεις «περιοχές» συγχρονισμού
• Εντός συγχρονισμού: –80 ms έως +80 ms
– Δεν έγιναν αντιληπτές ή κρίθηκαν αποδεκτές
• Εκτός συγχρονισμού: πάνω από +/–160 ms
– Έγιναν αντιληπτές και κρίθηκαν ενοχλητικές
• Μεταβατικές: +/- 80 έως 160 ms
– Αποδοχή ανάλογα με παρατηρούμενη εικόνα
15
Άλλες εφαρμογές
• Συγχρονισμός δείκτη με ομιλία
– Μέχρι 750 ms όταν ο δείκτης έπεται του ήχου
– Μέχρι 500 ms όταν ο ήχος έπεται του δείκτη
• Συγχρονισμός καναλιών ήχου
– Στερεοφωνικός ήχος: 11 ms
– Ομιλία με μουσική στο φόντο: 500 ms
– Συζήτηση από διαφορετικά κανάλια: 120 ms
16
Ποιότητα συγχρονισμού
• Συγχρονισμός επιπέδου παραγωγής
– Χρησιμοποιείται κατά την επεξεργασία
– Μικρή ή μηδενική απόκλιση
– Επιτρέπει χαλάρωση κατά την παρουσίαση
• Συγχρονισμός επιπέδου παρουσίασης
– Χρησιμοποιείται κατά την παρουσίαση
– Απόκλιση εντός ορίων αντίληψης
17
Σύνοψη απαιτήσεων
Μέσα Εφαρμογή Όριο ανοχής
Κινούμενα σχέδια Συσχέτιση +/- 120 ms
Ήχος Συγχρονισμός χειλιών +/- 80 ms
Βίντεο Εικόνα Με επικάλυψη +/- 240 ms
Χωρίς επικάλυψη +/- 500 ms
Κείμενο Με επικάλυψη +/- 240 ms
Χωρίς επικάλυψη +/- 500 ms
Κινούμενα σχέδια Συσχέτιση +/- 80 ms
Στενή εξάρτηση (στέρεο) +/- 11 μs
Ήχος
Ενδιάμεση εξάρτηση (διάλογος) +/- 120 ms
Ήχος Χαλαρή εξάρτηση (φόντο) +/- 500 ms
Εικόνα Στενή εξάρτηση (παρτιτούρα) +/- 5 ms
Χαλαρή εξάρτηση (παρουσίαση) +/- 500 ms
Κείμενο Σχολιασμός κειμένου +/- 240 ms
Δείκτης Σχολιασμός δείκτη -500 ms / +750 ms
18
Αντιμετώπιση προβλημάτων
Πηγές προβλημάτων
• Μεταβλητή καθυστέρηση στο δίκτυο
– Αποσυγχρονισμός ενός μέσου
• Λόγω διαταραχής καθυστέρησης
– Αποσυγχρονισμός μέσων μεταξύ τους
• Λόγω διαφορετικών διαταραχών
20
Αντιμετώπιση
• Περιορισμένο μπλοκάρισμα
– Κενά για μικρές καθυστερήσεις
– Επανάληψη LDU για μεγάλες καθυστερήσεις
• Αναψηφιοποίηση μέσων
– Επιτάχυνση ή επιβράδυνση ροών δεδομένων
– Συγχρονισμός μέσων με απόκλιση ρολογιού
– Επανάληψη/παράλειψη/παρεμβολή LDU
• Χρήση και σε μετατροπές PAL/SECAM/NTSC
21
Κατανεμημένος συγχρονισμός
Μετάδοση προδιαγραφών (1 από 2)
• Κατανεμημένο σύστημα πολυμέσων
– Αυξημένη καθυστέρηση
– Αυξημένη διαταραχή
• Πότε μεταδίδονται οι προδιαγραφές;
• Πριν την παρουσίαση
– Κατάλληλη για συνθετικό συγχρονισμό
– Καθυστέρηση λόγω μετάδοσης προδιαγραφών
23
24
Τόπος συγχρονισμού (1 από 2)
25
26
Ακρίβεια συγχρονισμού
Προδιαγραφές συγχρονισμού
Με διαστήματα (1 από 2)
29
Με διαστήματα (2 από 2)
• Προδιαγραφές που βασίζονται σε διαστήματα
– Διάφορες σχέσεις ανάμεσα στα διαστήματα
– Επιτρέπονται μηδενικές/άγνωστες παράμετροι
• Συμπληρώνονται στην πορεία
– Όχι σχέσεις ανάμεσα σε μέρη αντικειμένων
• Μόνο ανάμεσα σε διαστήματα
– Πιθανά προβλήματα όταν ορίζονται οι διάρκειες
• Μπορεί να είναι αδύνατος ο ορισμός τιμών
30
Με άξονες (1 από 2)
31
Με άξονες (2 από 2)
• Προδιαγραφές που βασίζονται σε άξονες
– Δεν χειρίζονται αντικείμενα με άγνωστη διάρκεια
• Όλες οι διάρκειες πρέπει να είναι γνωστές
– Κάθε μέσο πρέπει να συγχρονιστεί με το ρολόι
– Συνήθως χρησιμοποιείται ο ήχος ως γενικό ρολόι
• Πιο ευαίσθητο μέσο σε διαταραχές
• Πολύ υψηλό ρολόι συγχρονισμού
32
Ιεραρχικές (1 από 2)
• Προδιαγραφές που βασίζονται σε ροή ελέγχου
– Συγχρονισμός σε προκαθορισμένα σημεία
• Ιεραρχικές προδιαγραφές
– Παρουσίαση εν σειρά ή παράλληλα
• Φύλλα: αντικείμενα μέσων
• Εσωτερικοί κόμβοι: σειρά παρουσίασης παιδιών
– Χρονικές καθυστερήσεις ως αντικείμενα
– Συγχρονισμός μόνο σε αρχή / τέλος αντικειμένων
– Δεν μπορεί να εκφράσει περίπλοκες σχέσεις
33
Ιεραρχικές (2 από 2)
34
Πλαίσιο αναφοράς συγχρονισμού
37
• Επίπεδο προδιαγραφών
– Εργαλεία δημιουργίας προδιαγραφών συγχρονισμού
– Εργαλεία μετατροπής προδιαγραφών συγχρονισμού
38
Ενότητα # 16: Πολυεκπομπή
Σκοποί ενότητας
• Κατανόηση των μοντέλων πολυεκπομπής και των
βασικών προσεγγίσεων δρομολόγησης
πολυεκπομπής.
• Εξοικείωση με τις βασικές τεχνικές
αντιμετώπισηςη της ετερογένειας και της
ανάδρασης.
• Εισαγωγή στις τεχνικές πολυεκπομπής στο
Διαδίκτυο και κατανόηση των πρακτικών
προβλημάτων υλοποίησης της πολυεκπομπής.
4
Περιεχόμενα ενότητας
• Μοντέλα πολυεκπομπής
• Αλγόριθμοι δρομολόγησης
• Αντιμετώπιση της ετερογένειας
• Έλεγχος ανάδρασης
• Πολυεκπομπή στο Διαδίκτυο
• Προβλήματα υλοποίησης
Μοντέλα πολυεκπομπής
Τι είναι η πολυεκπομπή (1 από 3);
• Βασικοί τρόποι μετάδοσης
– Μονοεκπομπή (unicast): ένας προς έναν
– (Ευρεία) εκπομπή (broadcast): ένας προς όλους
– Πολυεκπομπή (multicast): ένας προς πολλούς
• Τι ακριβώς σημαίνει πολυεκπομπή;
– Αυθαίρετο σύνολο παραληπτών (ομάδα)
– Αποστολή δεδομένων σε αυτούς (όχι σε όλους)
– Αποστολή δεδομένων μία φορά μόνο
8
Τι είναι η πολυεκπομπή (3 από 3);
• Μοντέλο ομάδας παραληπτών Διαδικτύου
– Ομάδα υπολογιστών με διεύθυνση κλάσης D
– Όλα τα μέλη λαμβάνουν όλα τα πακέτα (ίσως!)
– Οποιοσδήποτε μπορεί να στείλει πακέτα
– Οι αποστολείς δεν γνωρίζουν τα μέλη της ομάδας
• Ατομική πολυεκπομπή: εναλλακτικό μοντέλο
– Κάθε μήνυμα είτε πάει σε όλους είτε σε κανέναν
• Λαμβάνονται με την ίδια σειρά σε όλους
– Πολύ πιο δύσκολο στην υλοποίηση
Αλγόριθμοι δρομολόγησης
Δρομολόγηση (1 από 5)
Δρομολόγηση (2 από 5)
• Πλεονεκτήματα / Μειονεκτήματα
– Αξιοποιεί ήδη υπάρχοντες μηχανισμούς
– Μη βέλτιστη στην εξοικονόμηση πόρων
• Δρομολόγηση πολυεκπομπής: 2η προσέγγιση
– Εύρεση δένδρου Steiner
• Ελάχιστο δένδρο με όλους τους παραλήπτες
• Πιθανόν να περιέχει και άλλους κόμβους
– Η εύρεσή του είναι NP πλήρες πρόβλημα
– Υπάρχουν καλοί προσεγγιστικοί αλγόριθμοι
12
Δρομολόγηση (3 από 5)
• Πλεονεκτήματα / Μειονεκτήματα
– Σχεδόν βέλτιστη λύση (με προσεγγιστικό αλγόριθμο)
– Απαιτεί εκτέλεση πρόσθετου αλγόριθμου
• Ανάγκη επανυπολογισμού σε κάθε αλλαγή
13
Δρομολόγηση (4 από 5)
• Δρομολόγηση πολυεκπομπής: 3η προσέγγιση
– (Κοινόχρηστο) δένδρο με κεντρικό σημείο
• Οι άλλες λύσεις έχουν ένα δένδρο ανά αποστολέα
– Ρίζα: τοπολογικό κέντρο παραληπτών
• Η εύρεσή του είναι NP πλήρες πρόβλημα
• Χρησιμοποιούμε προσέγγιση
• Πλεονεκτήματα / Μειονεκτήματα
– Δεν χρειάζεται συντήρηση πολλών δένδρων
– Τοπικές επιπτώσεις σε κάθε αλλαγή
– Η διανομή δεν είναι βέλτιστη
14
Δρομολόγηση (5 από 5)
17
Ετερογένεια (2 από 3)
• Στρωματοποιημένη κωδικοποίηση
– Τεμαχισμός μέσων σε k στρώματα (layers)
– Κάθε στρώμα στέλνεται σε διαφορετική ομάδα
– Κάθε παραλήπτης προσχωρεί σε ν ομάδες
• Ανάλογα με δυνατότητες και προτιμήσεις
– Κάθε πρόσθετο στρώμα αυξάνει την ποιότητα
– Τα μέσα μεταδίδονται μία φορά μόνο
18
Ετερογένεια (3 από 3)
• Παράδειγμα
– Βασικό στρώμα: συνεχής γραμμή
– Στρώμα βελτίωσης: διακεκομμένη γραμμή
19
Έλεγχος ανάδρασης
Ενδόρρηξη ανάδρασης
22
Αντιμετώπιση ανάδρασης (2 από 5)
• Λύση 2η: κατάσταση ανά παραλήπτη
– Ο αποστολέας περιμένει να συγχρονιστούν όλοι
• Παράδειγμα: να λάβουν όλοι ένα πακέτο
– Προτιμάται αρνητική ανάδραση / επιβεβαίωση
• Μειώνει τον κίνδυνο ενδόρρηξης ανάδρασης
– Ο αποστολέας προσαρμόζεται στον χειρότερο
• Περιμένει να φτάσει τους άλλους
23
25
Βασικά στοιχεία
• Διευθύνσεις κλάσης D για ομάδες
– Αποστολή πακέτων όπως στη μονοεκπομπή
• Μηχανισμός δρομολόγησης προς τα μέλη
– Τοπική τεχνολογία λήψης/αποστολής μηνυμάτων
• Μηχανισμός παρακολούθησης μελών ομάδας
– Διατήρηση μίας λίστας με τις τοπικές ομάδες
• Πρωτόκολλο επικοινωνίας δρομολογητών
28
Δρομολόγηση με το DVMRP
• Πρωτόκολλο διανυσμάτων απόστασης
– Βασίζεται σε αντίστροφες διαδρομές
– Ξεχωριστό δένδρο για κάθε αποστολέα
• Αξιοποίηση του αλγορίθμου Bellman-Ford
– Έλεγχος αν το πακέτο έφτασε από τη σωστή ζεύξη
• Άρα από τη συντομότερη αντίστροφη διαδρομή
– Προώθηση πακέτου σε όλες τις άλλες ζεύξεις
• Αποκοπή κλαδιών που δεν οδηγούν σε μέλη
29
Δρομολόγηση με το MOSPF
• Πρωτόκολλο κατάστασης συνδέσμων
– Οι δρομολογητές στέλνουν τις ομάδες τους
– Χρήση αλγορίθμου πλημμύρας
– Συνδυασμός με τα πακέτα του OSPF
– Υπολογίζονται δένδρα βέλτιστων διαδρομών
– Μεγάλη επιβάρυνση όταν αλλάζουν οι ομάδες
• Κάθε αλλαγή διαδίδεται με πλημμύρα
30
Δρομολόγηση με το CBT
• Κοινόχρηστο δένδρο για όλους
– Η ρίζα του ονομάζεται πυρήνας (core)
• Κατασκευή από τα φύλλα προς τον πυρήνα
– Σταδιακή κατασκευή με ειδικά μηνύματα
– Οι αποστολείς στέλνουν στον πυρήνα
– Ο πυρήνας προωθεί στους παραλήπτες
• Μη βέλτιστο δένδρο αλλά μικρή επιβάρυνση
31
Δρομολόγηση με το PIM
• Δύο τρόποι λειτουργίας: πυκνός και αραιός
• Πυκνός (PIM-DM): παρόμοιος με DVMRP
– Δεν εξαρτάται από πρωτόκολλο μονοεκπομπής
– Δυνατότητα «κλαδέματος» του δένδρου
• Αραιός (PIM-SM): παρόμοιος με το CBT
– Πολλά σημεία συνάντησης (RP)
– Μπορεί να συνδυαστεί με ατομικές διαδρομές
32
Κλιμάκωση με το BGMP
• Χρήση ανάμεσα σε αυτόνομα συστήματα (AS)
– Κάθε AS μπορεί να έχει άλλο αλγόριθμο
– Πώς γίνεται η καθολική δρομολόγηση;
• Δημιουργία κοινόχρηστων δένδρων
– Πυρήνας: το AS που δημιούργησε την ομάδα
– Διασύνδεση πρωτοκόλλων δρομολόγησης
33
34
Τοπικοί μηχανισμοί (2 από 2)
• Διαχείριση ομάδων: IGMP v2
– Αποστολή μηνυμάτων αποχώρησης
• Από τον τελευταίο που αποκρίθηκε για την ομάδα
– Ακολουθείται από ερώτηση ειδικά για την ομάδα
• Αποστολή / λήψη πακέτων
– Εκπομπή σε κοινόχρηστα δίκτυα (Ethernet)
• Απεικόνιση διευθύνσεων IP σε διευθύνσεις υλικού
– Μονοεκπομπή σε δίκτυα αστέρα (ADSL)
35
Προβλήματα υλοποίησης
Έλλειψη υποστήριξης (1 από 2)
• Γιατί δεν υποστηρίζεται η πολυεκπομπή;
– Τα λειτουργικά συστήματα την υποστηρίζουν
– Οι δρομολογητές όμως όχι!
• Διασύνδεση δρομολογητών με σήραγγες
• Ζητήματα ασφάλειας
– Πιο δύσκολα από ότι στη μονοεκπομπή
– Διαχείριση κλειδιών για ασφαλή επικοινωνία
• Ο αποστολέας δεν γνωρίζει καν τους παραλήπτες
37
38
Ενότητα # 17: Πρωτόκολλα μετάδοσης
Σκοποί ενότητας
• Επισκόπηση των βασικών τύπων δικτυακών
εφαρμογών και των βασικών πρωτόκολλων
του Διαδικτύου.
• Κατανόηση του στόχου και του τρόπου
λειτουργίας του πρωτοκόλλου RTP.
• Εξοικείωση με τη λειτουργία και τον τρόπο
αξιοποίησης του πρωτόκολλου RTCP.
4
Περιεχόμενα ενότητας
• Εισαγωγή
• Βασικά πρωτόκολλα Διαδικτύου
• Το πρωτόκολλο RTP
• Δομή πακέτων RTP
• Το πρωτόκολλο RTCP
Εισαγωγή
Δικτυακές εφαρμογές (1 από 2)
• Δικτυακές εφαρμογές πολυμέσων
– Ευαίσθητες στην καθυστέρηση
• Πιθανόν και στη διαταραχή της
– Ανεκτικές στα σφάλματα
• Ροή (αποθηκευμένων) πολυμέσων
– Ροή: αναπαραγωγή παράλληλα με λήψη
– Δυνατότητες αλληλεπίδρασης με το χρήστη
8
Βασικά πρωτόκολλα Διαδικτύου
10
Βασικά πρωτόκολλα (2 από 2)
• Επίπεδο μεταφοράς: TCP
– Έλεγχος σφαλμάτων, ροής και συμφόρησης
– Αξιόπιστη μετάδοση δεδομένων
• Άγνωστη καθυστέρηση λόγω αναμεταδόσεων
– Ρυθμός μετάδοσης ανάλογα με συμφόρηση
• Αυξομειώνεται ανάλογα με τις συνθήκες
• Δεν χρησιμοποιείται από πολυμεσικές εφαρμογές
11
Το πρωτόκολλο RTP
Θέση στη στοίβα
15
16
Το πρωτόκολλο RTCP
19
20
Πακέτα RTCP (3 από 3)
• Πακέτα περιγραφής πηγής
– Χωριστά για κάθε πηγή από τον αποστολέα
– Γενικές πληροφορίες για την πηγή
• Διεύθυνση e-mail, όνομα, εφαρμογή
• Αναγνωριστικό συγχρονισμού πηγής
– Συσχέτιση χρήστη με πηγή συγχρονισμού
21
22
Αξιοποίηση RTCP (2 από 2)
• Συγχρονισμός πολλαπλών ροών μέσων
– Χρονοσφραγίδες: ρολόγια δειγματοληψίας
– Ανεξαρτησία από πραγματικό χρόνο
• Χρήση αναφορών αποστολής
– Χρονοσφραγίδα και χρόνος τελευταίου πακέτου
• Συσχέτιση δειγματοληψίας με πραγματικό χρόνο
– Συγχρονισμός όλων των μέσων με κοινή βάση
23
24
Κλιμάκωση RTCP (2 από 2)
• Προσαρμογή ρυθμού μετάδοσης
– 5% πακέτα RTCP - 95% πακέτα RTP
– 75% παραλήπτες - 25% αποστολείς
• Οι συμμετέχοντες μοιράζονται τη χωρητικότητα
25
Περιεχόμενα ενότητας
• Εισαγωγή
• Ροή από εξυπηρετητές ιστοσελίδων
• Ροή από εξυπηρετητές μέσων
• Το πρωτόκολλο RTSP
• Προσαρμοστική ροή μέσω HTTP
• Το πρότυπο MPEG DASH
5
Εισαγωγή
11
Εξυπηρετητές ιστοσελίδων (3 από 3)
Εξάλειψη διαταραχής
Το RTSP (1 από 5)
• Αλληλεπίδραση κατά τη ροή πολυμέσων
– Διακοπή και επανεκκίνηση αναπαραγωγής
– Κίνηση μέσα στην παρουσίαση
• RTSP (Real Time Streaming Protocol)
– Δεν προσδιορίζει τεχνικές συμπίεσης
– Δεν καθορίζει τη διάσπαση σε πακέτα
– Δεν καθορίζει τον τρόπο ενταμίευσης μέσων
– Δεν καθορίζει τον τρόπο μετάδοσης (UDP ή TCP)
17
Το RTSP (2 από 5)
• Αρχείο περιγραφής παρουσίασης
– Σύνδεσμοι προς ροές και οδηγίες συγχρονισμού
• Δυνατότητα εναλλακτικών ροών
• Έλεγχος μετάδοσης της ροής
– Μετάδοση πληροφοριών ελέγχου εκτός ζώνης
• Χρήση χωριστής θύρας για το RTSP (TCP/UDP 554)
– Μετάδοση πολυμέσων εντός ζώνης
• Τυπικά με χρήση του RTP
18
Το RTSP (3 από 5)
19
Το RTSP (4 από 5)
• Χρήση RTSP
– SETUP: Εγκαθίδρυση συνεδρίας
• Επιστροφή αναγνωριστικού συνεδρίας
• Αρίθμηση μηνυμάτων μέσα στη συνεδρία
• Ο εξυπηρετητής διατηρεί κατάσταση για τον πελάτη
– PLAY: Εκκίνηση αναπαραγωγής
• Επιθυμητή παραλλαγή ροής
• Σημείο εκκίνησης
20
Το RTSP (5 από 5)
• Χρήση RTSP
– Μετά το PLAY αρχίζει η ροή των μέσων
• Μπορούν να στέλνονται μηνύματα ελέγχου
– PAUSE: Προσωρινή διακοπή ροής
• Ξεκινάμε ξανά με PLAY
– TEARDOWN: Τερματισμός συνεδρίας
• Διαγραφή κατάστασης από εξυπηρετητή
21
Προσαρμοστική ροή μέσω HTTP
23
Γιατί μέσω HTTP; (2 από 3)
• Κλασική ροή μέσω HTTP
– Αναπαραγωγή παράλληλα με κατέβασμα
– Προοδευτικό κατέβασμα των μέσων
• Χρήση HTTP GET με παράμετρο την περιοχή
– Συμβατό με την υποδομή του Διαδικτύου
– Δεν επιτρέπει την προσαρμογή
– Δεν επιτρέπει το ζωντανό περιεχόμενο
• Το αρχείο μέσων πρέπει να υπάρχει ήδη
24
25
Προσαρμοστική ροή (1 από 3)
• Τεμαχισμός μέσων σε μικρά τμήματα
– Ένα σύνολο τμημάτων ανά παραλλαγή
– Σταθερή διάρκεια τμήματος σε κάθε ροή
• Παράδειγμα: 2 δευτερόλεπτα
– Συστηματικός τρόπος ονομασίας
• Παράδειγμα: ροή0_0, ροή0_1, …
– Ζητάμε κάθε φορά το κατάλληλο επόμενο τμήμα
– Δυναμική αλλαγή χωρίς κενά αναπαραγωγής
26
27
Προσαρμοστική ροή (3 από 3)
• Λειτουργία προσαρμοστικής ροής
– Αρχικά ο πελάτης κατεβάζει ένα μετα-αρχείο
• Περιγράφει όλες τις διαθέσιμες παραλλαγές
• Παράμετροι και ονοματολογία παραλλαγών
– Επιλέγει μία παραλλαγή και ξεκινάει
• Συνήθως την πιο βασική για γρήγορο ξεκίνημα
– Ανάλογα με την απόδοση προσαρμόζεται
– Ο εξυπηρετητής δεν εμπλέκεται στις επιλογές
• Μόνο ο πελάτης διατηρεί κατάσταση
28
29
Αξιοποίηση κρυφών μνημών
• Αποθήκευση σε κρυφές μνήμες
– Κάθε τμήμα είναι αυτόνομο
• Έχει (κάποιο) μοναδικό όνομα
• Μπορεί να αναπαραχθεί αυτόνομα
– Μπορεί να μπει σε proxy εξυπηρετητή Ιστού
• Εξυπηρέτηση επόμενων αιτήσεων
• Δεν χρειάζεται να έχουμε όλα τα τμήματα
– Μπορεί να μπει σε τοπική κρυφή μνήμη
30
31
Υπάρχουσες λύσεις (2 από 3)
• Adobe HTTP Dynamic Streaming (Flash)
– Ένα αρχείο ανά παραλλαγή, H.264+AAC
– Μορφότυπο θραυσμάτων (fragment) MP4
• Το αρχείο αποτελείται από τεμάχια (segments)
• Το τεμάχιο αποτελείται από θραύσματα (fragments)
• Ζητάμε κάθε θραύσμα χωριστά
• Θραύσματα διάρκειας 2-5 sec
– Μετα-αρχείο: απεικόνιση θραυσμάτων σε χρόνο
32
33
Το πρότυπο MPEG-DASH
35
Δυνατότητες (1 από 3)
• Δύο μορφότυπα τμημάτων/αρχείων
– MPEG-4: Συμβατό με Adobe και Microsoft
– MPEG-2 TS: Συμβατό με Apple
– Επαναχρησιμοποίηση ίδιου περιεχομένου
• Απλά δημιουργία νέου αρχείο περιγραφής!
• Πολλές κωδικοποιήσεις
– Κωδικοποίηση H.264+AAC για συμβατότητα
– Επιπλέον MPEG-2, MPEG-4, αλλά και H.265
36
Δυνατότητες (2 από 3)
• Τμήματα διάρκειας 1-20 sec
– Ενιαία για πολυπλεγμένο ήχο και βίντεο
– Ανεξάρτητες ροές βίντεο, ήχου, υποτίτλων
• Επιτρέπουν διάφορους τρόπους προσαρμογής
• Επιτρέπουν πολύγλωσσο περιεχόμενο
• Δύο τύποι μετα-αρχείων
– Αρχείο περιγραφής: για όλες τις παραλλαγές
– Αρχείο αρχικοποίησης: ανά παραλλαγή
37
Δυνατότητες (3 από 3)
• Πολλές δυνατότητες παροχής περιεχομένου
– Επιλογή διάφορων μορφοτύπων και κωδίκων
– Επιλογή πλήθους και τύπου παραλλαγών
– Επιλογή διάρκειας τμημάτων
– Επιλογή τρόπου πολυπλεξης μέσων
• Πολλές δυνατότητες λειτουργίας πελάτη
– Πότε ζητάει τα τμήματα
– Πότε αλλάζει παραλλαγή
38
Προφίλ (1 από 3)
• Προφίλ MPEG DASH
– Παρόμοια ιδέα με προφίλ MPEG
• Σύνολο επιτρεπόμενων χαρακτηριστικών
• Αναπαριστούν σημεία συμβατότητας
• Κατάλληλα για διαφορετικές εφαρμογές
– Η εφαρμογή αναπαραγωγής υποστηρίζει προφίλ
– Το περιεχόμενο αναφέρει το προφίλ του
• Μπορεί να παρέχεται σε πολλά προφίλ
39
Προφίλ (2 από 3)
• ISO Base media file format On Demand
– Αποθηκευμένο περιεχόμενο (όχι ζωντανό)
– Μορφότυπο MPEG-4 σε δύο μορφές
– Ενιαίο αρχείο ανά παραλλαγή
• Χρήση HTTP GET με επιλογή περιοχής
– Ανεξάρτητα αρχεία ανά τμήμα
• Κάθε αρχείο έχει το δικό του όνομα
– Μετα-αρχείο: αντιστοίχιση τμήματος με χρόνο
40
Προφίλ (3 από 3)
• ISO Base media file format Live
– Δυναμική δημιουργία τμημάτων
– Το μετα-αρχείο περιγράφει πρότυπο τμήμα
• Τρόπος ονομασίας τμημάτων
• Διάρκεια των τμημάτων
• MPEG-2 main, simple
– Ίδιο με παραπάνω αλλά με αρχεία MPEG-2 TS
– Δύο παραλλαγές: On demand και Live
41
Ιεραρχική δομή (1 από 2)
• Ένα μετα-αρχείο περιγράφει μια παρουσίαση
– Τύπος MPD (Media Presentation Description)
– Μπορεί να έχουμε πολλά μετα-αρχεία
– Παράδειγμα: διαφορετικές διάρκειες τμημάτων
• Η παρουσίαση διαιρείται σε περιόδους
– Μέρη της παρουσίασης ή διαφημίσεις
• Η περίοδος έχει αναπαραστάσεις
– Διαφορετικές παραλλαγές του περιεχομένου
42
43
Αρχεία MPD (1 από 4)
• Μετα-αρχεία περιγραφής παρουσίασης
– Χρήση σχήματος XML για περιγραφή
– Ενημερώνεται για ζωντανό περιεχόμενο
• Το νέο MPD πρέπει να επεκτείνει το παλιό
• Πεδία MPD
– MPD: περιγραφή παρουσίασης
• Προφίλ που χρησιμοποιείται
• Διάρκεια παρουσίασης
• Ελάχιστο μέγεθος προσωρινής αποθήκευσης
44
45
Αρχεία MPD (3 από 4)
• Πεδία MPD
– Representation: μία παραλλαγή του μέσου
• id: αναγνωριστικό
• codecs: κωδικοποιητές
• mimeType: τύπος κατά MIME
• bandwidth: ρυθμός μετάδοσης
• Παράμετροι ανάλογα με τύπο
• width και height: ανάλυση βίντεο
• numChannels: κανάλια ήχου
46
47
Ενότητα # 19: Τηλεδιάσκεψη
Σκοποί ενότητας
• Εξοικείωση με την οικογένεια προτύπων
τηλεδιάσκεψης της ITU (H.32x).
• Κατανόηση της λειτουργικότητας και του
τρόπου λειτουργίας του H.323.
• Εξοικείωση με το πρωτόκολλο SIP και τον
τρόπο λειτουργίας του, καθώς και του τρόπου
χρήσης του για τηλεδιάσκεψη.
• Εισαγωγή στα πρωτόκολλα ελέγχου πυλών.
4
Περιεχόμενα ενότητας
• Το πρότυπο H.320
• Το πρότυπο H.324
• Το πρότυπο H.323
• Τηλεδιάσκεψη με το SIP
• Έλεγχος πυλών
Το πρότυπο H.320
Το H.320 (1 από 4)
• Πρότυπα τηλεδιάσκεψης H.32x της ITU
– Αρχικά: μεταγωγή κυκλωμάτων (τηλεφωνία)
– Αργότερα: μεταγωγή πακέτων (Internet)
– Περιορισμένη συμβατότητα μεταξύ τους
• H.320: Πρότυπο για δίκτυα ISDN
– Ανταλλαγή ήχου, βίντεο, εικόνων, κειμένου
– Συλλογή διάφορων προτύπων
Το H.320 (2 από 4)
• Συστατικά του H.320: έλεγχος
– H.221: Πολύπλεξη ήχου / βίντεο σε πλαίσια
• Χρησιμοποιεί κανάλια ISDN τύπου B
– H.230: Πολύπλεξη συγχρονισμού και ελέγχου
– H.231: Tηλεδιάσκεψη πολλαπλών συμμετεχόντων
– H.242/3: Διαπραγμάτευση με δύο/πολλά τερματικά
– Q.931: Εγκαθίδρυση κλήσεων μεταξύ τερματικών
– H.233/4: Τεχνικές κρυπτογράφησης δεδομένων
8
Το H.320 (3 από 4)
• Συστατικά του H.320: μέσα
– H.261: Συμπίεση βίντεο ανάλυσης CIF/QCIF
• CIF: 352x288, QCIF: 176x144
– G.711: ήχος εύρους 3,7 KHz στα 64 Kbps
– G.722: ήχος εύρους 7,5 KHz στα 64 Kbps
– G.728: ήχος εύρους 3,7 KHz στα 16 Kbps
– Μόνο το G.711 είναι υποχρεωτικό!
Το H.320 (4 από 4)
• Απαιτούμενο εύρος ζώνης: p x 64 Kbps
– Για βίντεο, τουλάχιστον 128 Kbps
• Γραμμή ISDN BRI (2 κανάλια B)
• H.261 με QCIF και χαμηλό ρυθμό πλαισίου
– Ιδανικά, 384 Kbps (6 κανάλια B)
• 3 γραμμές BRI ή μέρος 1 γραμμής PRI
• H.261 με CIF ή/και υψηλότερο ρυθμό πλαισίου
10
Το πρότυπο H.324
Το H.324 (1 από 2)
• Παραλλαγές H.320 για δίκτυα ATM
– Η.321: παραλλαγή για ευρυζωνικά WAN
– Η.322: παραλλαγή για ευρυζωνικά LAN
– Περιορισμένη χρήση, όπως και τα δίκτυα ATM!
• H.324: παραλλαγή για PSTN (56 Kbps)
– Βίντεο: H.263 για χαμηλότερο εύρος ζώνης
– Ήχος: G.723.1 (5,3 και 6,3 Kbps) ή G.729 (8 Kbps)
12
Το H.324 (2 από 2)
• Προσαρμογή πρωτοκόλλων ελέγχου για PSTN
– Η.245: διαπραγμάτευση κωδικοποιητών
• Διαπραγμάτευση πρόσθετης καθυστέρησης ήχου
• Δυνατότητα μεταβολής ρυθμού μετάδοσης μέσου
– H.223: πολύπλεξη μέσων
• Εντοπισμός και διόρθωση σφαλμάτων μετάδοσης
• Επιτρέπει διάφορους τρόπους πολύπλεξης μέσων
– V.25: εγκαθίδρυση κλήσεων μεταξύ μόντεμ
13
Το πρότυπο H.323
Το H.323 (1 από 5)
• H.323: Τηλεδιάσκεψη στο Internet
– Επικοινωνία μεταξύ πολλών κατασκευαστών
• Τερματικά H.323
– Αυτόνομες συσκευές (υλικό)
– Εφαρμογές σε υπολογιστή (λογισμικό)
• Πύλες H.323
– Διασύνδεσή με τηλεφωνικό δίκτυο
• Αναλογικό ή ψηφιακό
15
Το H.323 (2 από 5)
16
Το H.323 (3 από 5)
• Υποχρεωτικά πρωτόκολλα
– RTP: μετάδοση τμημάτων μέσων με UDP
• RTCP για έλεγχο μέσων (προαιρετικά)
– H.245: διαπραγμάτευση κωδικοποίησης
– Q.931: εγκαθίδρυση και τερματισμός κλήσεων
• Χρησιμοποιείται και σε δίκτυα ISDN
– H.225 (RAS): επικοινωνία με φύλακα πύλης
• Πρωτόκολλο εγγραφής, αποδοχής και κατάστασης
17
Το H.323 (4 από 5)
• Κωδικοποίηση βίντεο
– Δεν υποστηρίζεται σε οικονομικά τερματικά
– Ελάχιστη κωδικοποίηση: πρότυπο H.261
• Ελάχιστη ανάλυση: QCIF (176x144 εικονοστοιχεία)
• Συμβατότητα με παλιότερα πρότυπα
– Προαιρετική κωδικοποίηση: H.263
• Προαιρετικές αναλύσεις: CIF, 4CIF και 16CIF
18
Το H.323 (5 από 5)
• Κωδικοποίηση ήχου
– Υποχρεωτικό το G.711 (56 ή 64 Kbps)
– Προαιρετικά, όλα τα πρότυπα των H.320/H.324
19
Κανάλια H.323
• Πολλαπλά κανάλια μέσων: RTP/UDP
– Ένα κανάλι αποστολής και λήψης ανά μέσο
• Κανάλι ελέγχου κλήσεων: H.245/TCP
– Άνοιγμα και κλείσιμο καναλιών μέσων
– Ανταλλαγή ικανοτήτων των τερματικών
• Κανάλι σηματοδοσίας κλήσεων: Q.931/TCP
– Τηλεφωνικοί τόνοι
– Κουδούνισμα εισερχόμενων κλήσεων
20
Φύλακας πύλης (1 από 2)
• Φύλακας πύλης: διαχειρίζεται ζώνη δικτύου
– Παράδειγμα ζώνης: τα τερματικά ενός LAN
– Αν υπάρχει, η χρήση του είναι υποχρεωτική
– Χρήση πρωτοκόλλου RAS πάνω από το TCP
• Διαχείριση εύρους ζώνης
– Περιορισμός ταυτόχρονων τηλεδιασκέψεων
21
22
Σηματοδοσία H.323
23
Τηλεδιάσκεψη με το SIP
Τι είναι το SIP; (1 από 2)
• SIP (Session Initiation Protocol)
– Τυποποιήθηκε από την IETF
– Δημιουργία συνεδρίας πολυμέσων
– Διαπραγμάτευση κωδικοποιήσεων μέσων
– Τροποποίηση παραμέτρων συνεδρίας
– Τερματισμός συνεδρίας
– Δεν ασχολείται με την ανταλλαγή μέσων!
25
26
Διευθύνσεις SIP (1 από 2)
• URI (uniform resource indicator)
– Περιγράφει έναν επικοινωνιακό πόρο
– Ανάλογο με διεύθυνση e-mail ή web
– Χρήση και ως υπερσύνδεσμος
• SIP URI φυσικού προσώπου
– Ανεξάρτητο από τοποθεσία
– Ανεξάρτητο από τερματική συσκευή
– sip:name@organization
27
29
Οντότητες SIP
• Πράκτορας χρήστη SIP
• Πληρεξούσιος SIP
• Διαχειριστής μητρώου SIP
– Πιθανόν ενιαίος πληρεξούσιος / διαχειριστής
• Υλοποίηση είτε σε λογισμικό είτε σε υλικό
• Επικοινωνία με τηλεφωνία μέσω πυλών
30
Σηματοδοσία SIP (1 από 3)
33
34
Πρωτόκολλο SDP (2 από 2)
Αίτηση Απόκριση
INVITE sip:UserB@there.com SIP2/0 SIP/2.0 200OK
Via:SIP/2.0/UDP here.com:5060 Via:SIP/2.0/UDP here.com:5060
From:sip:UserA@here.com From:sip:UserA@here.com
To:sip:UserB@there.com To:sip:UserB@there.com;tag=65a35
Call-ID:12345600@here.com Call-ID:12345600@here.com
CSeq:1 INVITE CSeq:1 INVITE
Contact:sip:userA@here.com Contact:sip:userB@there.com
Content-type:application/sdp Content-type:application/sdp
v=0 v=0
o=UserA 289084 2890 IN IP here.com o=UserB 493834 462 IN IP there.com
c=IN IP4 100.101.102.103 c=IN IP4 110.111.112.113
m=audio 49172 RTP/AVP0 m=audio 3456 RTP/AVP0
35
Έλεγχος πυλών
Megaco/H.248
Περιεχόμενα ενότητας
• Τι σημαίνει καλύτερη προσπάθεια
• Αντιμετώπιση της καθυστέρησης
• Αντιμετώπιση της απώλειας
5
Τι σημαίνει καλύτερη προσπάθεια
7
Παράδειγμα εφαρμογής (2 από 2)
• Πακέτο UDP/IP με δεδομένα / επικεφαλίδα
– Τεμαχισμός δεδομένων σε πακέτα
– 20 byte επικεφαλίδα IP
– 8 byte επικεφαλίδα UDP
• Έστω 160 byte δεδομένα ανά 20 ms
– Επιβάρυνση 20% χωρίς συμπίεση κεφαλίδων
– Μικρότερο διάστημα -> μεγαλύτερη επιβάρυνση
9
Καλύτερη προσπάθεια (2 από 2)
• Πόσο καλή είναι η καλύτερη προσπάθεια;
– Τα περισσότερα πακέτα φτάνουν
– Πολύ σπάνια φτάνουν χαλασμένα
• Το Ethernet πετάει τα χαλασμένα πακέτα
– Ενίοτε φτάνουν εκτός σειράς
– Η καθυστέρηση όμως είναι απρόβλεπτη
• Η διαταραχή της, ακόμα περισσότερο
10
12
16
17
Δυναμική καθυστέρηση (4 από 4)
• Χρόνος αναπαραγωγής επόμενων πακέτων
pj tj d
– Σταθερή καθυστέρηση στη συνέχεια
• Αναγνώριση αρχής περιόδου ομιλίας
– Χωρίς απώλειες:
• Αύξηση χρονοσφραγίδας > 20 ms
– Με απώλειες:
• Αύξηση αριθμού σειράς > 1
18
20
21
Πρόσθια διόρθωση λαθών (2 από 3)
• Απλός μηχανισμός FEC
– Κάθε n τμήματα, ένα πλεονάζον τμήμα
• Περιέχει το XOR των αρχικών
– Διόρθωση μίας απώλειας στα n τμήματα
• XOR των n ληφθέντων
– Καθυστέρηση αναπαραγωγής στην ανάκτηση
• Πρέπει να λάβουμε όλα τα πακέτα
– n: συμβιβασμός τριών παραγόντων
22
• Επιβάρυνση: 1/(n+1)
– Συμφέρει το μεγάλο n
• Μέγιστη καθυστέρηση: n
– Πρέπει να τα λάβουμε αν χάσουμε το πρώτο!
– Συμφέρει το μικρό n
• Ανάκαμψη: 1 σφάλμα ανά n τμήματα
23
Πλεονάζουσα ροή (1 από 2)
24
25
Εναλλαγή (1 από 4)
26
Εναλλαγή (2 από 4)
28
Εναλλαγή (4 από 4)
• Κυλιόμενη εναλλαγή
– Στην κανονική χρησιμοποιούμε μπλοκ N πακέτων
– Στην κυλιόμενη δεν περιμένουμε το μπλοκ
– Τα τεμάχια μπαίνουν στα n επόμενα πακέτα
• N-1 χρόνοι καθυστέρησης στον κωδικοποιητή
• Χωρίς άλλη καθυστέρηση στον αποκωδικοποιητή
29
Ενότητα # 21: Εγγυημένη ποιότητα υπηρεσίας
Σκοποί ενότητας
• Κατανόηση των βασικών απαιτήσεων για
υποστήριξη ποιότητας υπηρεσίας.
• Εξοικείωση με τους βασικούς μηχανισμούς
κατηγοριοποίησης, χρονοπρογραμματισμού
πακέτων και επιτήρησης ροών.
• Εισαγωγή στις ενοποιημένες υπηρεσίες και
τις διαφοροποιημένες υπηρεσίες.
4
Περιεχόμενα ενότητας
• Απαιτήσεις ποιότητας υπηρεσίας
• Μηχανισμοί κατηγοριοποίησης
• Χρονοπρογραμματισμός
• Μηχανισμοί επιτήρησης
• Ενοποιημένες υπηρεσίες
• Διαφοροποιημένες υπηρεσίες
8
Ποιότητα υπηρεσίας (3 από 3)
• Περιβάλλον καλύτερης προσπάθειας
– Ανάμειξη πακέτων στην ουρά του Δ2
– Μετάδοση (συνήθως) με σειρά άφιξης
– Απρόβλεπτη κίνηση εφαρμογής FTP
– Πιθανή καθυστέρηση για τα πακέτα ήχου
– Πιθανή απώλεια για τα πακέτα ήχου
• Λόγω υπερχείλισης ουράς
• Ακολουθεί την αύξηση της καθυστέρησης
Απαιτήσεις (1 από 7)
10
Απαιτήσεις (2 από 7)
• Γενικά: παροχή διαφορετικών υπηρεσιών
– Αντίστοιχη διαφοροποίηση χρεώσεων
• Το FTP μπορεί να πληρώσει ακριβή υπηρεσία
• Ο ήχος δεν πρέπει να έχει τότε προτεραιότητα!
• Η διάκριση πρέπει να γίνει με άλλα κριτήρια
Απαιτήσεις (3 από 7)
• Αν η εφαρμογή ήχου στέλνει παραπάνω;
– Λόγω βλάβης (ακούσια)
– Για να εκμεταλλευτεί την προτεραιότητα (εκούσια)
– Συνθήκες στέρησης για τα πακέτα FTP
– Κάθε προβληματική ροή επηρεάζει τις άλλες
• Απομόνωση ροών για προστασία της ροής
– Εικονικές ζεύξεις 384 και 128 Kbps
– Κάθε ροή είναι προστατευμένη από την άλλη
12
Απαιτήσεις (4 από 7)
• Προκαθορισμένη κατανομή γραμμής
– Τι κάνουμε σε περιόδους σιωπής;
• Η γραμμή δεν μεταδίδει χωρίς να έχουμε ήχο
– H χρήση πόρων πρέπει να είναι αποδοτική
– Αν η ουρά είναι ελεύθερη την αξιοποιούμε
• Εξυπηρετούμε την άλλη ροή
• Επιτρέπουμε να στέλνει και πιο γρήγορα
• Ελαστική κίνηση (στέλνει όσο μπορεί)
13
Απαιτήσεις (5 από 7)
• Επιτήρηση: επιβεβαίωση συμπεριφοράς
– Παρέκκλιση εφαρμογής υπό επιτήρηση
• Απόρριψη ή καθυστέρηση επιπλέον πακέτων
– Σημείο επιτήρησης και σήμανσης
• Στο τελικό σύστημα η στον δρομολογητή
14
Απαιτήσεις (6 από 7)
• Δύο εφαρμογές τηλεδιάσκεψης (384 Kbps)
– Καταμερισμός χωρητικότητας στα ίσα
• Κάθε εφαρμογή θα χάνει το 25% των πακέτων
• Οι προτεραιότητες δεν επαρκούν!
• Ροές που απαιτούν ελάχιστο επίπεδο υπηρεσιών
– Χωρίς πόρους δεν αποδίδουν ικανοποιητικά
– Η αποδοχή τους έχει αρνητικό αντίκτυπο
• Δεν λειτουργούν αποδεκτά, αλλά καταναλώνουν πόρους
– Οι ροές πρέπει να δηλώνουν τις απαιτήσεις τους
15
Απαιτήσεις (7 από 7)
• Αποδοχή κλήσεων
– Δήλωση απαιτήσεων ποιότητας υπηρεσιών
– Αποδοχή
• Το δίκτυο παρέχει την απαιτούμενη ποιότητα
– Απόρριψη
• Έλλειψη των απαιτούμενων πόρων
– Διασφαλίζουμε ποιότητα για όλους
• Φτάνει βέβαια να τους αποδεχτούμε!
16
Μηχανισμοί κατηγοριοποίησης
Κατηγοριοποίηση (1 από 2)
18
Κατηγοριοποίηση (2 από 2)
Χρονοπρογραμματισμός
Ουρές FIFO (1 από 3)
• Χρονοπρογραμματισμός μετάδοσης
– Τα πακέτα μπαίνουν σε ουρές κατά την άφιξη
– Επιλογή πακέτων για μετάδοση
• Απλούστερη πολιτική: FIFO
– Τα πακέτα αποθηκεύονται στο τέλος
– Τα πακέτα μεταδίδονται από την αρχή
– Μετάδοση πακέτων κατά τη σειρά άφιξης
21
22
Ουρές FIFO (3 από 3)
26
Ουρές επαναφοράς (1 από 3)
29
31
Μηχανισμοί επιτήρησης
Κριτήρια επιτήρησης (1 από 2)
• Γενικά κριτήρια επιτήρησης
– Περιορισμός ρυθμού αποστολής πακέτων
– Ποια χρονική κλίμακα μας ενδιαφέρει;
• Μέσος ρυθμός
– Μέσος ρυθμός μετάδοσης μακροπρόθεσμα
– Κρίσιμο το χρονικό διάστημα υπολογισμού
• 100 πακέτα ανά δευτερόλεπτο;
• 6000 πακέτα ανά λεπτό;
33
• Μέγιστο ξέσπασμα
– Μέγιστο πλήθος σε πολύ μικρό διάστημα
– Στην πράξη, μέγιστο πλήθος χωρίς διακοπή
34
Διάτρητος κουβάς
Κουβάς κουπονιών
Ενοποιημένες υπηρεσίες
Ενοποιημένες (1 από 3)
• Ενοποιημένες υπηρεσίες (IntServ)
– Τρεις υπηρεσίες για όλους τους δρομολογητές
– Εγγυημένη: περιορίζεται από κουβά κουπονιών
• Πρέπει να περνά από έλεγχο αποδοχής
• Εγγυημένη καθυστέρηση από άκρο σε άκρο
– Ελεγχόμενου φόρτου: στατιστική καθυστέρηση
– Καλύτερης προσπάθειας
• Όλη η υπόλοιπη κίνηση
39
Ενοποιημένες (2 από 3)
• Πρωτόκολλο RSVP
– Δέσμευση πόρων για ροές μίας κατεύθυνσης
– 1η φάση: μήνυμα διερεύνησης από αποστολέα
• Συλλέγει πληροφορίες στη διαδρομή
– 2η φάση: μήνυμα δέσμευσης από παραλήπτες
• Δεσμεύει πόρους σε κάθε δρομολογητή
– Περιοδική ανανέωση δεσμεύσεων
• Προσαρμογή μετά από αλλαγή διαδρομής
– Καταμερισμένες δεσμεύσεις σε πολυεκπομπή
40
Ενοποιημένες (3 από 3)
• Μειονεκτήματα IntServ
– Πρέπει να υλοποιηθεί παντού
• Ή τουλάχιστον σε μεγάλο μέρος
• Απαιτείται ίδια μεταχείριση παντού
• Κανένας δεν κάνει την αρχή!
– Δυσκολία κλιμάκωσης
• Απαιτεί ενέργειες ανά ροή
• Στον κορμό έχουμε τεράστιο πλήθος ροών
– Μόνο τρεις κατηγορίες υπηρεσίας
41
Διαφοροποιημένες υπηρεσίες
Διαφοροποιημένες (1 από 3)
• Διαφοροποιημένες υπηρεσίες (DiffServ)
– Ομαδοποίηση ροών σε κλάσεις
• Κατά την είσοδο στο δίκτυο
• Κατά τη μετάβαση σε νέο αυτόνομο σύστημα
– Μορφοποίηση στα σημεία ομαδοποίησης
• Απλή συμπεριφορά στα υπόλοιπα σημεία
– Μακροχρόνια δέσμευση πόρων
• Με συμφωνίες μεταξύ παρόχων
– Πολυπλοκότητα μόνο στα άκρα του δικτύου
43
Διαφοροποιημένες (2 από 3)
• Συμπεριφορά επόμενου βήματος (PHB)
– Αντιμετώπιση πακέτου αναλόγως τάξης
– Χρήση πεδίου DSCP (ToS ή TC)
• Τίθεται στην είσοδο στο δίκτυο
44
Διαφοροποιημένες (3 από 3)
• PHB διασφαλισμένης προώθησης (AF)
– Κλάσεις κίνησης με ποσοστό εύρους ζώνης
– Πολλά επίπεδα προτίμησης απόρριψης ανά κλάση
– Σημείωση ροών όταν υπερβαίνουν το όριο
• Απόρριψη με προτεραιότητα κατά τη συμφόρηση
• Μειονεκτήματα DiffServ
– Δεν ορίζει ρητές υπηρεσίες σε κάθε δίκτυο
– Δυσκολία δημιουργίας υπηρεσιών άκρο σε άκρο
– Κατάλληλη για μακροσκοπική διαχείριση κίνησης
45
Περιεχόμενα ενότητας
• Βασικές αρχές
• Πακέτα και κελιά
• Δρομολόγηση και προώθηση
• Ιεραρχία πρωτοκόλλων
• Επίπεδα προσαρμογής
• Ποιότητα υπηρεσίας
• Υποστήριξη IP
5
Βασικές αρχές
7
Γιατί δίκτυα ATM; (2 από 2)
• Γιατί μελετάμε τα δίκτυα ATM;
– Δεν είχαν την αναμενόμενη διάδοση
• Δίκτυα κορμού τηλεφωνίας και δεδομένων
• Παραμένουν σε μερικά μόντεμ DSL
– Αρκετά διαφορετική φιλοσοφία από το IP
• Εικονικά κυκλώματα, μικρά πακέτα
– Παροχή εγγυημένης ποιότητας υπηρεσιών
• Κατάλληλα και για τηλεφωνία ή βίντεο
9
Εικονικά κυκλώματα (2 από 4)
• Αναγνωριστικά εικονικών κυκλωμάτων (VCI)
– Κάθε κύκλωμα έχει έναν μοναδικό αριθμό
• Οι αριθμοί αποδίδονται κατά την εγκαθίδρυση
• Ο αριθμός συνήθως μεταβάλλεται σε κάθε ζεύξη
• Εξαρτάται από τη σειρά εγκαθίδρυσης
• Εικονικές διαδρομές (VP)
– Ομάδες εικονικών κυκλωμάτων
– Ίδια δρομολόγηση για όλη την ομάδα
– Χρησιμοποιούν το ίδιο αναγνωριστικό (VPI)
10
• Συνδυασμός VPI/VCI
– Πρώτο μέρος: VPI
• Χρησιμοποιείται στο κέντρο του δικτύου
• Όλο το VP αντιμετωπίζεται με ενιαίο τρόπο
– Δεύτερο μέρος: VCI
• Χρησιμοποιείται στα άκρα του δικτύου
• Διάκριση των κυκλωμάτων κοντά στους χρήστες
11
Εικονικά κυκλώματα (4 από 4)
• Μόνιμα εικονικά κυκλώματα (PVC)
– Εγκαθιδρύονται στην εκκίνηση συσκευών
– Χρησιμοποιούνται για βασική σηματοδοσία
– Ανάμεσα σε χρήστη και τοπικό μεταγωγέα
• Προσωρινά εικονικά κυκλώματα (SVC)
– Εγκαθιδρύονται από τις εφαρμογές
– Χρήση PVC για εγκαθίδρυσή τους
– Ανάμεσα σε χρήστες από άκρο σε άκρο
12
14
Κελιά (2 από 4)
• Κεφαλίδα κελιών
– Κατάλληλη για γρήγορη επεξεργασία
– Απλή και σταθερή μορφή
– Δεν υπάρχουν επιλογές και επεκτάσεις
15
Κελιά (3 από 4)
• VPI: 12 bit, VCI: 16 bit
– Αγνοούμε το VCI στο κέντρο του δικτύου
– Μπορούμε να τα χειριστούμε και μαζί
– Γενικά αλλάζει από ζεύξη σε ζεύξη
• PT: τύπος περιεχομένου
– 1 bit: δεδομένα χρήστη / πληροφορίες ελέγχου
– 1 bit: το κελί έχει συναντήσει συμφόρηση
– 1 bit: σηματοδοσία υψηλότερου επιπέδου
16
Κελιά (4 από 4)
• LP: 1 bit
– Το κελί προτιμάται για απόρριψη
– Τίθεται από την εφαρμογή ή από το δίκτυο
• Η εφαρμογή μπορεί να επιλέξει τα κελιά
• HEC: 8 bit
– Διόρθωση σφαλμάτων κεφαλίδας (μόνο)
– Υπολογίζεται σε κάθε ζεύξη
• Λόγω συνεχούς αλλαγής VPI/VCI!
17
Δρομολόγηση και προώθηση
Δρομολόγηση
• Επιλογή διαδρομής για κάθε κλήση
– Πρέπει να υποστηρίζει εγγυήσεις ποιότητας
• Πιο δύσκολο από τη συντομότερη διαδρομή
• Περίπλοκο μοντέλο ποιότητας
19
Προώθηση (1 από 2)
• Μεταγωγή κελιών της κλήσης
– Κάθε μεταγωγέας έχει πίνακα προώθησης
• Χρησιμοποιείται σε κάθε κελί
• Η αναζήτηση πρέπει να είναι πολύ γρήγορη
– Κάθε VC αντιστοιχεί σε μία καταχώριση
• Είσοδος: ζεύξη εισόδου και VCI κελιού
• Έξοδος: ζεύξη εξόδου και νέο VCI κελιού
• Μπορεί να αναφέρεται σε VCI ή/και VPI
20
Προώθηση (2 από 2)
• Διαχείριση πίνακα προώθησης
– Ενημέρωση σε εγκαθίδρυση και απελευθέρωση
• Εισαγωγή και διαγραφή καταχωρίσεων
• Εγκαθίδρυση με βάση τη δρομολόγηση
• Απελευθέρωση με βάση την προώθηση
– Επιλογή διαθέσιμου VCI στην εγκαθίδρυση
• Μπορεί να διαφέρει από της προηγούμενης ζεύξης
• Δίνουμε ένα VCI που είναι τοπικά διαθέσιμο
21
Πίνακες προώθησης (1 από 3)
23
Πίνακες προώθησης (3 από 3)
24
Ιεραρχία πρωτοκόλλων
Ιεραρχία (1 από 4)
Ιεραρχία (2 από 4)
• Φυσικό επίπεδο
– Μετάδοση ανάμεσα σε γειτονικές συσκευές
– Διαφορετικό φυσικό επίπεδο ανά τεχνολογία
• Επίπεδο ATM
– Μετάδοση κελιών από άκρο σε άκρο
• Επίπεδο προσαρμογής ATM
– Τεμαχισμός και ανασυναρμολόγηση δεδομένων
27
Ιεραρχία (3 από 4)
• Κατακόρυφα επίπεδα (planes)
– Ομαδοποίηση πρωτοκόλλων ανά είδος
– Χρήστη: πρωτόκολλα εφαρμογών
– Ελέγχου: πρωτόκολλα σηματοδοσίας
• Σαφής διάκριση δεδομένων και ελέγχου
– Διαχείρισης: πρωτόκολλα διαχείρισης δικτύου
• Έμφαση στις ανάγκες των διαχειριστών
28
Ιεραρχία (4 από 4)
• Επίπεδα προσαρμογής
– Αποτελούνται από δύο υποεπίπεδα
– Σύγκλισης (CS)
• Παραλαμβάνει δεδομένα από τις εφαρμογές
• Προσθήκη κατάλληλης κεφαλίδας
– Τεμαχισμού και συναρμολόγησης (SAR)
• Τεμαχισμός πακέτων CS σε κελιά στον αποστολέα
• Ανασυναρμολόγηση πακέτων CS στον παραλήπτη
29
Επίπεδα προσαρμογής
31
Κατηγορίες επιπέδων (2 από 2)
• Επίπεδα μη πραγματικού χρόνου
– AAL-3: σταθερός σε μη πραγματικό χρόνο
– AAL-4: μεταβλητός σε μη πραγματικό χρόνο
• AAL-5: αντικαθιστά τα AAL-3/4
– Μικρό ενδιαφέρον για διαφορετικά επίπεδα
– Το AAL-5 είναι εξαιρετικά απλό
– Και για μετάδοση πακέτων IP πάνω από ATM
32
AAL-1
• Παράδειγμα: AAL-1
– Το υποεπίπεδο CS δημιουργεί τμήματα 47 byte
– Το υποεπίπεδο SAR προσθέτει κεφαλίδα 1 byte
• C: 1 bit για δεδομένα ελέγχου
• SN: 3 bit για αριθμό σειράς
• SNP: 4 bit για προστασία αριθμού σειράς
– Τα τμήματα μπαίνουν σε κελιά για μετάδοση
33
AAL-5 (1 από 2)
• Παράδειγμα: AAL-5
– Το υποεπίπεδο CS δέχεται πακέτα ως 64 Kbyte
• Προσθήκη ορισμένων πεδίων στο τέλος
– Υποεπίπεδο SAR: απλός τεμαχισμός
• Το τελευταίο κελί ATM σημειώνεται κατάλληλα
• Χρήση του τρίτου bit του πεδίου PT
• Άμεσος εντοπισμός τέλους πακέτου
34
AAL-5 (2 από 2)
• Επίμετρο υποεπιπέδου CS
– UU: 1 byte για πολύπλεξη ροών
– CPI: 1 byte για ανταλλαγή δεδομένων ελέγχου
– LEN: 2 byte για μέγεθος δεδομένων πακέτου
– CRC: 4 byte για κώδικα εντοπισμού σφαλμάτων
– PAD: κάνει το σύνολο n x 48 byte
• Στοίχιση με το μέγεθος των κελιών
35
Ποιότητα υπηρεσίας
Κατηγορίες (1 από 2)
• Κατηγορίες ποιότητας υπηρεσίας
– Παρέχονται πέντε κατηγορίες
– Κάθε κλήση επιλέγει μία κατηγορία
• Ιδιότητες ποιότητας ανάλογα με κατηγορία
– Σταθερού ρυθμού (CBR)
• Ακριβής ρυθμός μετάδοσης
– Μεταβλητού ρυθμού πραγματικού χρόνου (VBR-
RT)
• Μέσος και μέγιστος ρυθμός μετάδοσης
37
Κατηγορίες (2 από 2)
• Κατηγορίες ποιότητας υπηρεσίας
– Μεταβλητού ρυθμού όχι πραγματικού χρόνου
(VBR-NRT)
• Χωρίς όρια καθυστέρησης
– Διαθέσιμου ρυθμού (ABR)
• Εγγύηση μόνο ελάχιστου ρυθμού μετάδοσης
– Απροσδιόριστου ρυθμού (UBR)
• Δεν παρέχει καμία εγγύηση
38
39
Ποιότητα υπηρεσίας (2 από 6)
40
41
Ποιότητα υπηρεσίας (4 από 6)
• Τρόποι χρήσης GCRA
– Μορφοποίηση κίνησης στον αποστολέα
• Συμμόρφωση κίνησης με συγκεκριμένο προφίλ
• Πιθανή σήμανση πρόσθετων κελιών για απόρριψη
– Παρακολούθηση κίνησης στους μεταγωγείς
• Έλεγχος αν συμμορφώνεται με προφίλ
• Είτε άμεση απόρριψη κελιών
• Είτε σήμανση κελιών για απόρριψη
42
43
Ποιότητα υπηρεσίας (6 από 6)
Ιδιότητες ποιότητας υπηρεσίας Παράμετροι GCRA
CLR CDV Μέγ. CTD Μέση CTD MCR PCR CDVT SCR BT
CBR X X X X X X
VBR-RT X X X X X X X X
VBR-NRT X X X X X
ABR X
UBR
44
Υποστήριξη IP
IP και ATM
• Το ATM θα αντικαθιστούσε τα πάντα
– Ένα δίκτυο για όλες τις υπηρεσίες
• Μέχρι να υλοποιηθεί το IP κυριαρχούσε
– Άρα έπρεπε να έχουμε συμβατότητα
• Μεταφορά πακέτων IP σε κορμό ATM
– Μετάφραση διευθύνσεων IP σε κυκλώματα
– Τεμαχισμός πακέτων IP σε κελιά
46
48
50
IPOA ή LANE;
• IPOA: βασίζεται σε πολλά PVC
– Κατάλληλο για κορμό δικτύου
– Μικρό πλήθος επιθυμητών κυκλωμάτων
• Στατική και μακροχρόνια δρομολόγηση
• LANE: βασίζεται σε SVC και ένα PVC
– Κατάλληλο για τοπικά δίκτυα
– Άγνωστο πλήθος επιθυμητών κυκλωμάτων
• Δυναμική και βραχυχρόνια δρομολόγηση
51
Ενότητα # 23: Πολυμέσα σε δίκτυα 3G
Σκοποί ενότητας
• Εξοικείωση με την έννοια των κυψελωτών
δικτύων και την εξέλιξή τους.
• Κατανόηση της βασικής δομής και των
συστατικών στοιχείων των δικτύων 3G.
• Εισαγωγή στο πολυμεσικό υποσύστημα IP και
την πολυμεσική υπηρεσία (πολύ)εκπομπής.
• Εξοικείωση με το μοντέλο παροχής ποιότητας
υπηρεσίας των δικτύων 3G.
4
Περιεχόμενα ενότητας
• Κυψελωτά δίκτυα
• Δίκτυα UMTS
• Πολυμεσικό υποσύστημα IP
• Πολυμεσική υπηρεσία (πολύ)εκπομπής
• Ποιότητα υπηρεσίας
Κυψελωτά δίκτυα
Είδη κυψελωτών δικτύων
• Βάση της κινητής τηλεφωνίας
– 1η γενιά: εξέλιξη των PSTN
– 2η γενιά: εξέλιξη των ISDN
– 3η γενιά: συνδυασμός με IP και Διαδίκτυο
• Ριζικός ανασχεδιασμός του δικτύου
• Υποστήριξη πολυμεσικών εφαρμογών
• Χρήση (υποτίθεται) IPv6
• Εγγυημένη ποιότητα υπηρεσίας
Υπηρεσίες IP
• Υποσύστημα Πολυμέσων IP
– IP Multimedia Subsystem
– Πολυμεσικές συνεδρίες πάνω από το IP
– Εγγυημένη ποιότητα υπηρεσίας ανά μέσο
• Πολυμεσική υπηρεσία (πολύ)εκπομπής
– Multimedia Broadcast / Multicast Service
– Εκπομπή και πολυεκπομπή πάνω από το IP
– Αποδοτική υλοποίηση απαιτητικών υπηρεσιών
8
Κυψέλες (1 από 2)
Κυψέλες (2 από 2)
• Η ιδέα των κυψελών
– Ξεκινάμε από το διαθέσιμο φάσμα
– Διαφορετικές συχνότητες σε γειτονικές κυψέλες
• Επαναχρησιμοποίηση συχνοτήτων
• Αύξηση συνολικής χωρητικότητας
– Μεταβίβαση κλήσης από σταθμό σε σταθμό
– BTS: σταθμός βάσης σε κάθε κελί
– MS: κινητός σταθμός χρήστη
10
Γενιές (1 από 5)
• Συστήματα 1ης γενιάς (1G): AMPS
– Αναπτύχθηκε στις ΗΠΑ από την AT&T
– Διαχωρισμός κλήσεων με FDMA
• Καταμερισμός περιοχής συχνοτήτων
– Διαχωρισμός ζεύξεων με FDD
• Διαφορετική περιοχή σε κάθε κατεύθυνση
– Αναλογική διαμόρφωση του καναλιού
– Ενιαία αγορά στις ΗΠΑ, όχι στην Ευρώπη
11
Γενιές (2 από 5)
• Συστήματα 2ης γενιάς (2G): GSM
– Αναπτύχθηκε ως ενιαίο Ευρωπαϊκό πρότυπο
– Χρήση FDD για διαχωρισμό ζεύξεων
– FDMA και TDMA για διαχωρισμό κλήσεων
• 8 υποδοχές ανά πλαίσιο TDMA για τις κλήσεις
– Ψηφιοποίηση και συμπίεση φωνής
– GSM φάση 1: τηλεφωνία και δεδομένα
• Ταχύτητα δεδομένων μέχρι 9,6 Kbps
12
Γενιές (3 από 5)
• Συστήματα 2ης γενιάς (2G): D-AMPS
– Ψηφιακή παραλλαγή του AMPS
• Αντικαθιστά 1 αναλογική με 3 ψηφιακές κλήσεις
• Λειτουργεί παράλληλα με το AMPS
• Συστήματα 2ης γενιάς (2G): CDMAone
– Χρήση CDMA για καταμερισμό φάσματος
• Ευέλικτη διαχείριση εύρους ζώνης και μεταβιβάσεων
• Εντελώς διαφορετική τεχνολογία από AMPS
13
Γενιές (4 από 5)
• Διείσδυση συστημάτων 2G
– Τεράστια επιτυχία στην Ευρώπη
– Περιορισμένη επιτυχία στις ΗΠΑ
• Ενιαία έναντι κατακερματισμένης αγοράς
• Συστήματα 2.5G: GSM φάση 2+
– Εξέλιξη δικτύων 2G με νέες δυνατότητες
– HSCSD: πολύπλεξη καναλιών δεδομένων
– GPRS: μεταγωγή πακέτων πάνω από κανάλια
• Προσωρινή εκχώρηση υποδοχών στα πακέτα
14
Γενιές (5 από 5)
• Συστήματα 3ης γενιάς (3G): ΙΜΤ-2000
– Απόπειρα για παγκόσμιο πρότυπο
• Στόχος η υλοποίηση μέχρι το 2000
– Συμφωνία στη χρήση CDMA
– Διαφωνία σε λεπτομέρειες
• Κυρίως λόγω θεμάτων πατεντών
– Διάσπαση σε 3GPP και 3GPP2
• Περιορισμένη συμβατότητα μεταξύ τους
• Κυριαρχία εταιρειών στην τυποποίηση
15
Δίκτυα UMTS
Δίκτυα UMTS (1 από 5)
18
Δίκτυα UMTS (3 από 5)
• Δίκτυο κορμού
– Εξυπηρετητής HSS
• Πεδίο CS
– GMSC πύλης
– VMSC επισκεπτών
– Βάση VLR
• Πεδίο PS
– GSN πύλης
– GSN εξυπηρέτησης
19
20
Δίκτυα UMTS (5 από 5)
• Universal Terrestrial RAN
– Περιοχή RNS
– Ελεγκτές RNC
– Ελεγκτές Node-B
– TDD ή FDD και W-CDMA
– Πάνω από 2 Mbps
• Συνεχόμενες αυξήσεις με επεκτάσεις
– Έλεγχος ισχύος
– Βελτιωμένες μεταβιβάσεις
21
Πολυμεσικό υποσύστημα IP
Τι είναι το IMS; (1 από 3)
• Πολυμεσικό υποσύστημα IP (IMS)
– Επεκτείνει υπηρεσίες μεταφοράς πακέτων
– Εγκαθίδρυση και έλεγχος συνεδριών με SIP
– Δέσμευση απαιτούμενων πόρων
• Υποστήριξη εφαρμογών
– Έλεγχος από εξυπηρετητή εφαρμογών (AS)
– Διάφοροι AS υποστηρίζουν διάφορες εφαρμογές
– Ο AS έχει πρόσβαση στις ικανότητες
23
25
27
28
Δομή του IMS (4 από 4)
• Διαλειτουργικότητα
– Πύλη μέσων (MGW)
– Λειτουργία ελέγχου πύλης μέσων (MGCF)
– Πύλη σηματοδοσίας (SGW)
– Λειτουργία ελέγχου πύλης εξόδου (BGCF)
• Σηματοδοσία πάνω από SIP
– Τα μηνύματα περιέχουν προδιαγραφές SDP
• Μετάδοση δεδομένων πάνω από RTP/UDP/IP
29
31
32
Πολυμεσική υπηρεσία
(πολύ)εκπομπής
34
Τι είναι η MBMS; (2 από 2)
• Εφαρμογές της MBMS
– Ροή πολυμέσων
– Αξιόπιστη διανομή αρχείων
• Τρόποι λειτουργίας
– Εκπομπή: χρέωση μόνο του αποστολέα
• Μπορεί να απενεργοποιηθεί τοπικά
– Πολυεκπομπή: χρέωση αποστολέα / παραλήπτη
• Ανάλογα με την εφαρμογή
35
Δομή MBMS
36
Λειτουργία MBMS (1 από 5)
37
38
Λειτουργία MBMS (3 από 5)
• Δένδρα διανομής MBMS
– Το δίκτυο έχει δενδρική μορφή
– Δημιουργία δένδρου προς κατάλληλους UE
• Προσχωρούν στην υπηρεσία με μήνυμα IGMP
– Περιβάλλον UE: ένα για κάθε χρήστη
– Περιβάλλον φορέα: ένα για κάθε υπηρεσία
• Πληροφορίες ποιότητας υπηρεσίας
• Δομή δένδρου: παιδιά κόμβου στο δένδρο
39
40
Λειτουργία MBMS (5 από 5)
• Μέτρηση UE
– Γίνεται όταν ξεκινάει η διανομή
– Αποστολή μηνύματος σε UE για υπηρεσία
• Εγκαθίδρυση σύνδεσης σηματοδοσίας
• Με πιθανότητα που αναφέρει το μήνυμα
– Εκτίμηση του πλήθους με βάση την πιθανότητα
• Παράδειγμα: πιθανότητα 5%
• Συνδέθηκε 1 χρήστης, άρα υπάρχουν 20
41
Ποιότητα υπηρεσίας
Παράμετροι υπηρεσιών (1 από 4)
• Τέσσερις κλάσεις υπηρεσιών
• Συνομιλίας: εφαρμογές πραγματικού χρόνου
– Μικρή καθυστέρηση και διαταραχή
• Ροής: μικρή διαταραχή μόνο
• Αλληλεπίδρασης
– Αξιοπιστία και ευελιξία σε καθυστέρηση
• Παρασκηνίου: μαζική μετάδοση
– Μόνο αξιοπιστία
43
44
Παράμετροι υπηρεσιών (3 από 4)
• Ποιότητα υπηρεσίας MBMS
– Μόνο ροής ή παρασκηνίου
• Η διανομή είναι αυστηρά μονόδρομη
– Ίδιες παράμετροι σε όλο το δένδρο
• Καθορίζονται από BM-SC
• Ορίζονται κατά την έναρξη της συνόδου
• Δεν μπορούν να μεταβληθούν στη συνέχεια
45
47
49
50
Υλοποίηση υπηρεσιών (5 από 5)
• Παράδειγμα εγκαθίδρυσης
– Διάκριση δεδομένων και σηματοδοσίας
– Σηματοδοσία που δεν ορίζεται από 3GPP
51