Μετάδοση Πολυμεσικών Υπηρεσιών Ψηφιακή Τηλεόραση



Σχετικά έγγραφα
Κωδικοποίηση βίντεο (MPEG)

Κωδικοποίηση βίντεο (H.261 / DVI)

Βίντεο. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 06-1

Κωδικοποίηση βίντεο (MPEG)

Τεχνολογία Πολυμέσων. Ενότητα # 12: Κωδικοποίηση βίντεο: H.26x Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 13: Κωδικοποίηση βίντεο: MPEG Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. Κωδικοποίηση εικόνας

Τεχνολογία Πολυμέσων. Ενότητα # 6: Βίντεο Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

2. ΨΗΦΙΟΠΟΙΗΣΗ ΠΛΗΡΟΦΟΡΙΑΣ

Συστήματα Πολυμέσων. Ενότητα 15: Συμπίεση Ψηφιακού Βίντεο. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Αρχές κωδικοποίησης. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 08-1

ΒΕΣ 04: Συµπίεση και Μετάδοση Πολυµέσων. Βίντεο (Video) Περιεχόµενα. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 5, [link]

ΒΕΣ 04: Συμπίεση και Μετάδοση Πολυμέσων. Βίντεο (Video)

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο

Τι συσχετίζεται με τον ήχο

Βίντεο και κινούµενα σχέδια

ΕΙΔΗ ΠΛΑΙΣΙΩΝ Ενδο-πλαισιακή κωδικοποίηση (Intra- frame Coding): Δια-πλαισιακή κωδικοποίηση (Inter-frame Coding):

Πολυμέσα. Συμπίεση δεδομένων Κωδικοποίηση MPEG. Δρ. Γεώργιος Π. Παυλίδης ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο

Τεχνολογία Πολυμέσων. Ενότητα # 14: Κωδικοποίηση βίντεο: Η.264 Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

VIDEO ΚΑΙ ΕΦΑΡΜΟΓΕΣ. Υπάρχουσες εφαρμογές:

Ραδιοτηλεοπτικά Συστήματα Ενότητα 4: Ψηφιοποίηση και συμπίεση σημάτων εικόνας

Τεχνολογία Πολυμέσων. Ενότητα # 8: Αρχές κωδικοποίησης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Ψηφιακό Βίντεο. ΕΣ 200: ημιουργία Περιεχομένου ΙΙ. Περιεχόμενα - Βιβλιογραφία. Περιεχόμενα. Βιβλιογραφία. Βασικές έννοιες

Elements of Information Theory

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Βίντεο (Video) Εισαγωγή. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 5, [link]

Internet protocol stack Encapsulation Connection oriented VS connectionless services Circuit Switching Packet Switching Store-and-forward switches

Η ανάγκη για συμπίεση

Θέματα Συστημάτων Πολυμέσων. Ενότητα #3: Ιδιότητες μέσων Διδάσκων: Γεώργιος K. Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών

Βίντεο και κινούµενα σχέδια

Βασικές έννοιες. Αναλογικό Βίντεο. Ψηφιακό Βίντεο. Κινούμενα γραφικά (animation)( Πλαίσιο (frame, καρέ) Ρυθμός πλαισίων (frame rate)

HOMEWORK 4 = G. In order to plot the stress versus the stretch we define a normalized stretch:

Block Ciphers Modes. Ramki Thurimella

Τμήμα Επιστήμης Υπολογιστών ΗΥ-474. Ψηφιακό βίντεο. Αναλογικό βίντεο / ψηφιοποίηση Διεπαφές Εκτίμηση κίνησης μπλοκ

Συστήματα Πολυμέσων. Ενότητα 16: Διαμορφώσεις και Πρότυπα Ψηφιακού Βίντεο. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1

Δ11 Δ12. Συμπίεση Δεδομένων

Τι συσχετίζεται με τον ήχο

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

19/3/2007 Πολυµέσα και Συµπίεση εδοµένων

Main source: "Discrete-time systems and computer control" by Α. ΣΚΟΔΡΑΣ ΨΗΦΙΑΚΟΣ ΕΛΕΓΧΟΣ ΔΙΑΛΕΞΗ 4 ΔΙΑΦΑΝΕΙΑ 1

Instruction Execution Times

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ,

Τεχνολογία Πολυμέσων. Ενότητα 9: Αναλογικό Βίντεο. Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ

EPL324: Tutorials* on Communications and Networks Tutorial 2: Chapter 1 Review Questions

Συστήματα Πολυμέσων. Ενότητα 14: Εισαγωγικά Θέματα Βίντεο. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Γιατί Συµπίεση; Βιβλιογραφία

ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ

Περιεχόµενα. ΕΠΛ 422: Συστήµατα Πολυµέσων. Συµπίεση Βίντεο. Βιβλιογραφία. Αρχές συµπίεσης βίντεο

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ,

Επίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής

6.003: Signals and Systems. Modulation

Bayesian statistics. DS GA 1002 Probability and Statistics for Data Science.

Physical DB Design. B-Trees Index files can become quite large for large main files Indices on index files are possible.

Modbus basic setup notes for IO-Link AL1xxx Master Block

EE512: Error Control Coding

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. MPEG 2 bitstream και πολυπλεξία

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Other Test Constructions: Likelihood Ratio & Bayes Tests

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο

Δίκτυα Δακτυλίου. Token Ring - Polling

Συµπίεση Δεδοµένων: Συµπίεση Ψηφιακού Βίντεο

Πολυμέσα. Συμπίεση δεδομένων Κωδικοποίηση JPEG. Δρ. Γεώργιος Π. Παυλίδης ΔΗΜΟΚΡΙΤΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΡΑΚΗΣ

Τεχνολογία Πολυμέσων. Ενότητα # 10: Κωδικοποίηση ήχου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE)

ΕΑΠ/ΠΛΗ22/ΑΘΗ.3 4 η ΟΣΣ 15/03/2014 Συμπληρωματικές Διαφάνειες

Homework 3 Solutions

ITU-T : H.261 (1990), H.262 (1996), H.263 (1995) MPEG-1, MPEG-2, MPEG-4. Αποθήκευση, Μετάδοση, Επικοινωνίες, ίκτυα

(C) 2010 Pearson Education, Inc. All rights reserved.

Συστήµατα και Αλγόριθµοι Πολυµέσων

2 Composition. Invertible Mappings

3. ΤΕΧΝΙΚΕΣ ΣΥΜΠΙΕΣΗΣ ΠΟΛΥΜΕΣΩΝ

Στρατηγικές Ασφάλειας

Συμπίεση Βίντεο: Αρχές και Πρότυπα Συμπίεσης

Συνεχής ροή πολυµέσων

Αντοχή (ruggedness) στο θόρυβο μετάδοσης Αποτελεσματική αναγέννηση (regeneration) Δυνατότητα ομοιόμορφου σχήματος (uniform format) μετάδοσης Όμως:

The Simply Typed Lambda Calculus

Εισαγωγή στη σχεδιοκίνηση (animation)

Assalamu `alaikum wr. wb.

ΤΕΙ ΚΡΗΤΗΣ ΤΜ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡ/ΚΗΣ & ΠΟΛΥΜΕΣΩΝ ΔΙΔΑΣΚΩΝ: Δρ. Γ. ΓΑΡΔΙΚΗΣ. Εισαγωγή

Phys460.nb Solution for the t-dependent Schrodinger s equation How did we find the solution? (not required)

[1] P Q. Fig. 3.1

Τελική Εξέταση =1 = 0. a b c. Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. HMY 626 Επεξεργασία Εικόνας

Συστήµατα και Αλγόριθµοι Πολυµέσων

Τεχνικές Συµπίεσης Βίντεο. Δρ. Μαρία Κοζύρη Τµήµα Πληροφορικής Πανεπιστήµιο Θεσσαλίας

Θέματα Συστημάτων Πολυμέσων. Ενότητα # 8: MPEG Διδάσκων: Γεώργιος Πολύζος Τμήμα: Μεταπτυχιακό Πρόγραμμα Σπουδών Επιστήμη των Υπολογιστών

CMOS Technology for Computer Architects

Επεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας

Συστήµατα και Αλγόριθµοι Πολυµέσων

Démographie spatiale/spatial Demography

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Δ10. Συμπίεση Δεδομένων

Συµπίεση Εικόνας: Το πρότυπο JPEG

Προσομοίωση BP με το Bizagi Modeler

Συστήματα Πολυμέσων. Ενότητα 7: Συμπίεση Εικόνας κατά JPEG. Θρασύβουλος Γ. Τσιάτσος Τμήμα Πληροφορικής ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

ΝΤUA. Τεχνολογία Πολυμέσων

TMA4115 Matematikk 3

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 7η: Consumer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Συστήµατα και Αλγόριθµοι Πολυµέσων

Transcript:

Χειμερινό Εξάμηνο 2013-2014 Μετάδοση Πολυμεσικών Υπηρεσιών Ψηφιακή Τηλεόραση 6 η Παρουσίαση : Video Διδάσκων: Γιάννης Ντόκας

Χαρακτηριστικά Video (1) Βίντεο: γενίκευση των εικόνων Κινούμενα σχέδια: γενίκευση των γραφικών Ρυθμός πλαισίου Πλήθος διαφορετικών εικόνων ανά δευτερόλεπτο Μετριέται σε fps (πλαίσια ανά δευτερόλεπτο) ή Hz Αναλογική τηλεόραση Βασική επιρροή στην εξέλιξη του video

Χαρακτηριστικά Video (2) Κάθετη Ανάλυση: O αριθμός των διακριτών οριζόντιων γραμμών 525 στο NTSC, 625 στο PAL Λόγος Εικόνας: Είναι ο λόγος πλάτους της εικόνας προς το ύψος Συμαβτική Εικόνα: 4:3 HDTV: 16:9 Κινηματογράφος: 1.85:1, 2.35:1 Ρυθμός Ανανέωσης των πλαισίων Κινηματογράφος: 48 Hz TV: 30 Hz Οθόνη: 75 Hz

Οπτική Αντίληψη (1) Ο ανθρώπινος οφθαλμός αποτελείται από: Κώνους για την αντίληψη χρωμάτων Αμφιβληστροειδή για την αντίληψη της φωτεινότητας Ελάχιστη απόσταση μεταξύ δυο κώνων 0.004 mm Αντιλαμβάνεται ακίνητες εικόνες και ακολουθίες Οι προδιαγραφές των συστημάτων video καθορίζονται από: Χαρακτηριστικά και περιορισμοί της ανθρώπινης αντίληψης της όρασης Ανάλυση Φωτεινότητα Άσπρο/μαύρο και χρώμα Ανθρώπινη επεξεργασία πληροφορίας χαμηλή συχνότητα: οι εικόνες και τα γεγονότα που μπορούν να αναγνωρισθούν χωριστά Υψηλή συχνότητα: εντύπωση της αδιάλειπτης κίνησης Interpolation (παρεμβολή σημείων)

Οπτική Αντίληψη (2) Η χωρική ανάλυση (μεμονωμένων σημείων) εξαρτάται από: Μέγεθος εικόνας Απόσταση θέασης Αντίληψη της φωτεινότητας: Μεγαλύτερη από την αντίληψη του χρώματος Μεγάλη αντίληψη των φωτεινών ακμών Η αντίληψη μειώνεται με την αύξηση της φωτεινότητας των γύρω αντικειμένων Διαφορετική αντίληψη των κύριων χρωμάτων Σχετική φωτεινότητα: Red:30%, Green:59%, Blue:11% Παράδειγμα: 2 γραμμές με απόσταση 1mm αναγνωρίζονται σαν 2 όταν: Απόσταση θέασης < 3m ή Γωνία θέασης > 10

Οπτική Αντίληψη (3) Συμπτώματα που προκαλεί η αδράνεια του ματιού Για μια ακολουθία εικόνων (frames): Εάν η συχνότητα ανανέωσης είναι μεγάλη δεν μπορούμε να ξεχωρίσουμε ένα μοναδικό frame Με ρυθμό 16 frames/sec αντιλαμβανόμαστε την ακολουθία ως συνεχή Τρεμόσβημα (Flicker) Εμφανίζεται εάν η συχνότητα ανανέωσης της οθόνης < 50 Hz Κυρίως σε μεγάλες φωτεινές περιοχές Μπορεί να μειωθεί με: Τεχνικές διακοπής του φωτισμού (cinema: 3 x 16 Hz, interlace) Ενταμίευση εικόνας (buffering, 100 Hz TV)

Χρονική Ανάλυση (1) Τηλεόραση Μια εικόνα χωρίζεται σε δυο μισές που αποτελούνται από διεμπλεγμένες γραμμές σάρωσης (interlace) Ευρώπη: (PAL/SECAM) Ολόκληρη εικόνα (25Hz) Interlaced (2*25=50Hz) Αμερική: (NTSC) Ολόκληρη (30Hz) Interlaced (2*30=60Hz)

Χρονική Ανάλυση (2) upper field 1 3 5 7 9 11 lower field 2 4 6 8 10 12

Άλλοι Παράγοντες Οπτικής Διέγερσης Η αντίληψη επηρεάζεται επίσης από: Απόσταση θέασης Αναλογία προβολής (πλάτος:ύψος, 4:3 ή 16:9 για τηλεόραση, monitor) Χωρική εντύπωση (3D) Ένταση (φωτεινότητα) Γιατί όλος αυτός ο οίστρος των τηλεοράσεων 16:9; Αναπαριστά το λόγο του ανθρώπινου οπτικού πεδίου Το 4:3 προκαλεί το εφφέ της κλειδαρότρυπας Το 16:9 καλλιεργεί την αίσθηση της εμβύθισης

Σύλληψη Video Κάθε εικόνα (frame) μεταφέρει τιμή χρώματος/pixel Βίντεο κάμερα: Στρώμα φωτοευαίσθητου υλικού Το υλικό φέρει φορτίο ανάλογο του φωτός που αιχμαλώτισε σε κάθε σημείο Ανάγνωση του φορτίου: Εκπομπή ακτίνας ηλεκτρονίων στο στρώμα Συλλογή των σημάτων που δημιουργήθηκαν Εναλλακτικά: με ειδικό chip (Charge coupled devices - CCD)

Κωδικοποίηση Video Βασικό ερώτημα: Πως να αναπαρασταθεί το βίντεο ως συνεχές σήμα Πως να μεταδοθεί σε ένα, μοναδικό κανάλι Component Ποιοτικότερη μορφή έγρχωμου video Αποτελείται από τρία επιμέρους σήματα

RGB Xρωματική κωδικοποίηση: Χρωματικός κωδικός = συντεταγμένες ενός σημείο στον χρωματικό κύβο Πλεονεκτήματα Υψηλή ποιότητα Μειονεκτήματα Πλεονασμός Μεγάλο εύρος ζώνης

Κωδικοποίηση YUV (1) Η ανθρώπινη όραση αντιλαμβάνεται καλύτερα τη φωτεινότητα από ότι τα χρώματα Συνιστώσες Υ: φωτεινότητα (luminance) U: πληροφορία χρώματος V: πληροφορία χρώματος

Κωδικοποίηση YUV (2) Τα σήματα Υ, U, V παράγονται με βάση τα παρακάτω Y=0.30R+0.59G+0.11B (φωτεινότητα) U=(B-Y)*0.493 (χρωμικότητα 1) V=(R-Y)*0.877 (χρωμικότητα 2) Ένα σφάλμα στη φωτεινότητα είναι πιο σημαντικό από ένα στη χρωμικότηταy έχει μεγαλύτερο εύρος ζώνης PAL: 5MHz->Y, 1.3MHz->U, V

Άλλα Σχήματα Component Κωδικοποίησης Υ, Pb, Pr: Pb, Pr: Προσαρμοσμένες εκδόσεις των U, V Αναλογικές Συσκευές Y, Cb, Cr Cb, Cr: Προσαρμοσμένη εκδοχή του σήματος YUV Ψηφιακές Συσκευές

Composite Κωδικοποίηση (1) Υ/C Σύνθεση σημάτων χρωμάτων σε ένα Μεγαλύτερη συμπίεση Χαμηλότερη ποϊότητα Χρήση στη διαμόρφωση του S-Video

Composite Κωδικοποίηση (2) Προσφέρει ακόμα μεγαλύτερη συμπίεση του έγχρωμου σήματος Σύνθεση των Υ-C συνιστωσών έτσι ώστε να δημιουργηθεί ένα σύνθετο Είναι το συνηθέστερα χρησιμοποιούμενο σε συστήματα αναλογικού video

Τηλεοπτικά Συστήματα NTSC (National Television Systems Committee): ΗΠΑ 525 γραμμές σάρωσης, 484 ορατές Εύρος ζώνης 6 MHz, διαμόρφωση πλάτους Ρυθμός πλαισίου 30 Hz, ρυθμός ανανέωσης 60 Hz PAL (Phase Alternating Line): Δυτική Ευρώπη 625 γραμμές σάρωσης, 575 ορατές Εύρος ζώνης 8 MHz, διαμόρφωση πλάτους Ρυθμός πλαισίου 25 Hz, ρυθμός ανανέωσης 50 Hz SECAM (SEquential Couleur Avec Memoire): Γαλλία Παρόμοιο με PAL αλλά με διαμόρφωση συχνότητας Ελαφρά καλύτερη ποιότητα εικόνας Χρησιμοποιείται στην Αν. Ευρώπη για ιστορικούς λόγους Δεν επέτρεπε τη λήψη σημάτων από γειτονικές χώρες!

Ψηφιακό Video (1) Ψηφιακό versus αναλογικό βίντεο Περιορισμένη συμβατότητα για ανταλλαγή δεδομένων Παρόμοια ανάλυση ή / και ρυθμός πλαισίου Ψηφιοποίηση σύνθετου σήματος Μετατροπή όλων των συνιστωσών μαζί Δεν επιτρέπει το διαφορετικό χειρισμό τους Κατάλληλη μόνο για ψηφιακή μετάδοση Ψηφιοποίηση συνιστωσών σήματος Επιτρέπει άνισους ρυθμούς δειγματοληψίας Κατάλληλη για ψηφιακή επεξεργασία Θεωρητικά γίνεται και με RGB Στην πράξη γίνεται με YUV

Ψηφιακό Video (2) Τα δείγματα πρέπει να βρίσκονται σε απόλυτη στοίχιση στη κάθετη διάσταση Η απόσταση των δειγμάτων πρέπει να είναι ίδια και στη κάθετη διάσταση Η συχνότητα δειγματοληψίας πρέπει να παρμένει ίδια στα διάφορα συστήματα αναλογικού video

Ψηφιακό Video (3) Πρότυπο ψηφιακού βίντεο CCIR-601 Χρήση από τα τηλεοπτικά στούντιο Διεμπλεκόμενη σάρωση Υψηλή ποιότητα για εσωτερική χρήση Μειωμένη ποιότητα για μετάδοση Ρυθμοί δειγματοληψίας Υποθέτουμε εύρος ζώνης 6 MHz για Υ και 3 MHz για U και V Δειγματοληψία της φωτεινότητας στα 13,5 MHz 720 συνολικά δείγματα φωτεινότητας 2 δείγματα χρωμικότητας ανά συνιστώσα (4:2:2) 8 bit ανά δείγμα για κάθε συνιστώσα

Ψηφιακό Video (4) RGB Component Y Component U Component V Component

Ψηφιακό Video (5) CCIR-601 για NTSC 720 x 480 στα 29,97 fps Διατηρείται ο λόγος διαστάσεων 4:3 CCIR-601 για PAL/SECAL 720 x 576 στα 25 fps Απαιτήσεις μετάδοσης 8*[720 x 480 x 30 + 2 x 360 x 480 x 30] = 166 Mbps 8*[720 x 576 x 25 + 2 x 360 x 576 x 25] = 166 Mbps

Ψηφιακό Video (6) Υποδιπλασιασμός δειγμάτων χρωμικότητας Μείωση ποιότητας αλλά και απαιτήσεων μετάδοσης Λόγος δειγματοληψίας (4:2:0) Ένα δείγμα χρωμικότητας ανά δύο γραμμές σάρωσης Το (4:2:0) υποδηλώνει διεμπλεκόμενη σάρωση Απαιτήσεις μετάδοσης χωρίς μη ορατές περιοχές 720 x 480 x 30 + 2 x 360 x 240 x 30 = 124 Mbps 720 x 576 x 25 + 2 x 360 x 288 x 25 = 124 Mbps

Ψηφιακό Video (7) SIF (Source Intermediate Format): Παρόμοια ανάλυση με το αναλογικό βίντεο Ένα τέταρτο της ανάλυσης του CCIR-601 Υποδιπλασιασμός δειγμάτων και στις δύο διαστάσεις SIF για NTSC: 360 x 240 για τη φωτεινότητα SIF για PAL/SECAM: 360 x 288 για τη φωτεινότητα Διεμπλεκόμενη σάρωση στα 29,97 ή 25 fps Λόγος δειγματοληψίας (4:2:0) CIF (Common Intermediate Format ): Πρότυπο για τηλεδιάσκεψη Κοινό για όλες τις χώρες Ανάλυση: 360 x 288 για τη φωτεινότητα (PAL/SECAM) Σάρωση: προοδευτική στα 30 fps (NTSC) Λόγος δειγματοληψίας (4:1:1) Το (4:1:1) υποδηλώνει προοδευτική σάρωση

Ψηφιακό Video (8) Παραλλαγές του CIF Ρυθμός δειγματοληψίας (4:1:1) Προοδευτική σάρωση στα 30 fps 4CIF: Ανάλυση 720 x 576 για τη φωτεινότητα 16CIF: Ανάλυση 1440 x 1152 για τη φωτεινότητα QCIF: Ανάλυση 180 x 144 για τη φωτεινότητα Επιτρέπει και ρυθμούς πλαισίου 15 και 7,5 fps Άλλες παραλλαγές των προτύπων Προσαρμογή οριζόντιας ανάλυσης στις οθόνες υπολογιστών Χρήση τετράγωνων εικονοστοιχείων Ο λόγος διαστάσεων πρέπει να είναι 4:3 Προσαρμογή οριζόντιας ανάλυσης σε πολλαπλάσιο του 16 Χρησιμοποιείται σε πολλά πρότυπα συμπίεσης

Ψηφιακό Video (8) Παραλλαγές του CIF Ρυθμός δειγματοληψίας (4:1:1) Προοδευτική σάρωση στα 30 fps 4CIF: Ανάλυση 720 x 576 για τη φωτεινότητα 16CIF: Ανάλυση 1440 x 1152 για τη φωτεινότητα QCIF: Ανάλυση 180 x 144 για τη φωτεινότητα Επιτρέπει και ρυθμούς πλαισίου 15 και 7,5 fps Άλλες παραλλαγές των προτύπων Προσαρμογή οριζόντιας ανάλυσης στις οθόνες υπολογιστών Χρήση τετράγωνων εικονοστοιχείων Ο λόγος διαστάσεων πρέπει να είναι 4:3 Προσαρμογή οριζόντιας ανάλυσης σε πολλαπλάσιο του 16 Χρησιμοποιείται σε πολλά πρότυπα συμπίεσης

Video Compression Basics Goal of video compression is to minimize the bit rate in the digital representation of the video signal while: Maintaining required levels of signal quality Minimizing the complexity of the codec Containing the delay The choice of a compression method involves a tradeoff along the following 4 dimensions:

Video Compression Schemes Lossless Coding: is a reversible process perfect recovery of data -> before and after are identical in value. Used regardless of media s specific characteristics. Low compression ratios. Lossy Coding: Lossy coding is an irreversible process recovered data is degraded -> the reconstructed video is numerically not identical to the original. Takes into account the semantics of the data. Quality is dependent on the compression method and the compression ratio. Design Choices Lossless or Lossy or both Compression ratio Resilience to transmission errors Complexity tradeoff in codec (memory, processing) Nature of degradations

Video Compression Standards Video Conferencing (low bit rate): H.261 H.263 Broadcast (high bit rate): MPEG-1 MPEG-2 Interactive (full range of bit rates): MPEG-4

Αρχές Κωδικοποίησης Video Χωρικοί πλεονασμοί Ομοιότητα γειτονικών εικονοστοιχείων Εξέταση μεμονωμένων πλαισίων (Spatial Domain) Ενδοπλαισιακή (intraframe) κωδικοποίηση Χρονικοί πλεονασμοί (Temporal Domain) Ομοιότητα διαδοχικών πλαισίων Ανακατασκευή πλαισίου από γειτονικά Διαπλαισιακή (interframe) κωδικοποίηση Συμπίεση χωρικών πλεονασμών μόνο Μικρή καθυστέρηση αλλά και μικρή συμπίεση Συμπίεση χωρικών και χρονικών πλεονασμών Αναζήτηση ομοιοτήτων ανάμεσα σε πλαίσια Τα σφάλματα επηρεάζουν πολλαπλά πλαίσια

Μηχανισμοί Συμπίεσης Ενδοπλαισιακοί (intraframe): Τεχνικές Συμπίεσης εφαρμόζονται στην πληροφορία ενός πλαισίου Διαπλαισιακά (interframe): Τεχνικές Συμπίεσης που εκμεταλεύονται τον τρόπο που μεταβάλλεται η πληροφορία μεταξύ διαδοχικών πλαισίων

Τμηματική Πρόβλεψη Κίνησης (Block Motion Compensation) Τμηματοποίηση της εικόνας σε blocks Αν σε δύο διαδοχικά πλαίσια βρεθούν δύο ίδια blocks κωδικοποιείται απλώς ένα διάνυσμα μετακίνησης (motion compensation) Στην πραγματικότητα δεν απαιτείται ταύτιση 2 blocks αλλά χρησιμοποιούνται οι μικρότερες απόλυτες διαφορές Μετάδοση Λάθους Απαιτήσεις σε Πραγματικό Χρόνο

Εκτίμηση Κίνησης (Motion Estimation) Καθορισμός macroblock (ΜxN) Κριτήριο ταιριάσματος: Mean absolute error (MAE) Παράθυρο αναζήτησης: ± p pixels Αλγόριθμος αναζήτησης Πλήρης Λογαριθμική παράλληλη Ιεραρχική

Εκτίμηση Κίνησης (Motion Estimation)

Εκτίμηση κίνησης Βασικό μοντέλο Πρόβλεψη του επόμενου καρέ με βάση το προηγούμενο Δεν εντοπίζει σύνθετες κινήσεις Πρόβλεψη για κίνηση

Εκτίμηση Κίνησης

Εκτίμηση Κίνησης

ΚΡΙΤΗΡΙΑ

Εισαγωγή στο Η.261 Μετάδοση εικόνας μέσω ISDN Πολλαπλά κανάλια B (64 Kbps) για βίντεο και ήχο Κοινός αποκωδικοποιητής (codec) Βασική πρόσβαση ISDN (BRI): 2 κανάλια B Πρότυπα n x 64 Kbps, όπου n=1,2,,5 Πρωτεύουσα πρόσβαση ISDN (PRI): 30 κανάλια B Πρότυπα m x 384 Kbps, όπου m=1,2,,5 Ενοποιημένη υποστήριξη BRI και PRI Πρότυπα p x 64 Kbps, όπου p=1,2,,30 Κωδικοποίηση / αποκωδικοποίηση σε πραγματικό χρόνο Μέγιστη καθυστέρηση κάτω από 150 ms Σταθερός ρυθμός μετάδοσης με μεταβαλλόμενη ποιότητα

Κωδικοποίηση video Μορφότυπα εικόνας Ρυθμός πλαισίου στην είσοδο: 29,97 fps Χρήση προοδευτικής σάρωσης Ρυθμός πλαισίου στην έξοδο: αναλόγως καναλιού Φωτεινότητα (Y) και χρωμικότητα (Cb και Cr) Λόγος διαστάσεων 4:3, λόγος δειγματοληψίας 4:1:1 8 bits ανά εικονοστοιχείο ανά συνιστώσα Μορφότυπο (CIF): προαιρετικό Φωτεινότητα: 352 x 288 Χρωμικότητα: 176 x 144 Μορφότυπο QCIF (quarter CIF): υποχρεωτικό Φωτεινότητα: 176 x 144 Χρωμικότητα: 88 x 72

Κωδικοποίηση video (1) Ιεραρχική οργάνωση πλαισίων Μπλοκ (block): 8x8 εικονοστοιχεία μίας συνιστώσας Μακρομπλόκ (MB): 4 μπλοκ Y, από 1 μπλοκ Cb και Cr Ομάδα μπλοκ (GOB): 3x11=33 μακρομπλόκ QCIF: τρεις ομάδες μπλοκ CIF: δώδεκα ομάδες μπλοκ

Κωδικοποίηση video (2) Ενδοπλαισιακή κωδικοποίηση Μετασχηματισμός DCT σε μπλοκ 8x8 εικονοστοιχείων Χωριστή κβαντοποίηση συντελεστών DC / AC Κωδικοποίηση εντροπίας Όπως στο JPEG αλλά με έναν συντελεστή κβαντοποίησης Διαπλαισιακή κωδικοποίηση Πρόβλεψη περιεχομένου μακρομπλοκ Σύγκριση με μακρομπλόκ προηγούμενου πλαισίου Επανόρθωση κίνησης (motion compensation) Μετατόπιση μακρομπλόκ προηγούμενου πλαισίου Διάνυσμα κίνησης (motion vector) Τιμές μετατόπισης του μακρομπλόκ σε εικονοστοιχεία

Κωδικοποίηση video Ρυθμός δεδομένων χωρίς συμπίεση QCIFμε 29,97 fps: 9,11 Mbps CIF με 29,97 fps: 36,45 Mbps Ρυθμός δεδομένων με λόγο συμπίεσης 1:47,5 QCIFμε 10 fps: ένα κανάλι B (64 Kbps) CIF με 15 fps: έξι κανάλια B (384 Kbps)

Ροή Δεδομένων (1) Διανύσματα κίνησης Κωδικοποίηση εντροπίας Διαφορές μακρομπλόκ Αρχικά διαφορική κωδικοποίηση (DPCM) Συνέχεια όπως στην ενδοπλαισιακή κωδικοποίηση Επίτευξη σταθερού ρυθμού μετάδοσης Προσαρμογή βήματος κβαντοποίησης Γεμάτος ενταμιευτής -> αύξηση βήματος κβαντοποίησης Άδειος ενταμιευτής ->μείωση βήματος κβαντοποίησης Σταθερός ρυθμός μετάδοσης με μεταβαλλόμενη ποιότητα

Ροή Δεδομένων (2) Ροή δεδομένων H.261 Περιέχει πληροφορίες διόρθωσης λαθών Αριθμός εικόνας (5 bit) για χρονισμό Εντολές έναρξης και παύσης αναπαραγωγής βίντεο Πλαίσιο: κεφαλίδα και 12 ή 3 GOB (CIF η QCIF) GOB: κεφαλίδα και 33 MB MB: κεφαλίδα και στοιχεία μπλοκ Διανύσματα κίνησης και συντελεστές DCT

Διάγραμμα Κωδικοποιητή

Αποκωδικοποίηση

Ιστορική Αναδρομή

Γενικά Εισαγωγικά MPEG Εισαγωγή στο MPEG-1 Κωδικοποίηση βίντεο Δομή βίντεο Ροή δεδομένων

MPEG-1 MPEG (Motion Pictures Experts Group) Βίντεο και ήχος υψηλής ποιότητας Διανομή (με CD-ROM) ή μετάδοση μέσων Ρυθμός δεδομένων μέχρι 1,2 Mbps Αντιστοιχεί σε CD-ROΜ μονής ταχύτητας Αξιοποίηση άλλων προτύπων JPEG: ενδοπλαισιακή κωδικοποίηση H.261: διαπλαισιακή κωδικοποίηση Συμμετρική και ασυμμετρική συμπίεση Κωδικοποίηση ήχου Κωδικοποίηση βίντεο Πολύπλεξη ροών δεδομένων

Κωδικοποίηση Video (1) Μορφότυπα εικόνας Ανάλυση πλαισίου μέχρι 768 x 576 Συνιστώσες YUV, αναλογία (4:1:1) 8 bits ανά εικονοστοιχείο ανά συνιστώσα Τυποποιημένο μορφότυπο ανταλλαγής (SIF) NTSC: 352 x 240 (φωτεινότητα), 176 x 120 (χρωμικότητα) PAL/SECAM: 352 x 288 (φωτεινότητα), 176 x 144 (χρωμικότητα) Ρυθμοί πλαισίου από 23,97 Hz έως 60 Hz Διαπλαισιακή και ενδοπλαισιακή κωδικοποίηση

Κωδικοποίηση Video (2) Το πλαίσιο διαιρείται σε μακρομπλόκ 16 x 16 εικονοστοιχεία φωτεινότητας και 8 x 8 χρωμικότητας Οριζόντια τεμάχια (slices) Όλα τα μακρομπλόκ στην ίδια οριζόντιο 352 x 240 (NTSC): 15 τεμάχια x 22 μακρομπλόκ

Κωδικοποίηση Video (3) Συμβιβασμός αντικρουόμενων αναγκών Αποδοτική κωδικοποίηση: διαπλαισιακή κωδικοποίηση Τυχαία προσπέλαση: ενδοπλαισιακή κωδικοποίηση Πλαίσια-I (Ι-frames) Κωδικοποιούνται χωρίς αναφορές σε άλλα πλαίσια Κατάλληλα για τυχαία προσπέλαση Συμπίεση JPEG με απωλεστικό ακολουθιακό ρυθμό Μπλοκ φωτεινότητας και χρωμικότητας (8x8) Μετασχηματισμός DCT Κβαντοποίηση συντελεστών DPCM για συντελεστές DC, διάταξη για συντελεστές AC Κωδικοποίηση μήκους σειρών Κωδικοποίηση εντροπίας παρόμοια με Huffman

Κωδικοποίηση Video (4) Επίτευξη σταθερού ρυθμού δεδομένων Παράγοντας κλιμάκωσης συντελεστών κβαντοποίησης Ακέραιος αριθμός ανάμεσα στο 1 και το 31 Πολλαπλασιαστής συντελεστών κβαντοποίησης Παρακολουθεί τη χωρητικότητα του ενταμιευτή Μεταδίδεται σε κάθε αλλαγή τιμής

Κωδικοποίηση Video (5) Πλαίσια-P (P-frames) Επανόρθωση κίνησης Οι συνεχόμενες εικόνες συνήθως διαφέρουν λίγο Σύγκριση με αμέσως προηγούμενο πλαίσιο-i ή πλαίσιο-p Εντοπισμός πλέον παρόμοιου μακρομπλόκ Επιτρέπονται και μακρομπλόκ χωρίς πρόβλεψη

Κωδικοποίηση Video (6) Διάφορες μέθοδοι εύρεσης πλησιέστερου πλαισίου Συμβιβασμός υπολογιστικής ισχύος, κόστους και ποιότητας Διάφορα κριτήρια ταιριάσματος μπλοκ Διαφορές όλων των εικονοστοιχείων Άθροισμα διαφορών όλων των συνιστωσών Επιλογή του μικρότερου αθροίσματος Κωδικοποίηση μεταβολής Διάνυσμα κίνησης και διαφορές των μπλοκ Δεν προσδιορίζεται η μέθοδος επιλογής Δεν προσδιορίζεται η περιοχή αναζήτησης Έμμεσος περιορισμός από το διάνυσμα Εξαρτάται από την υπολογιστική ισχύ

Κωδικοποίηση Video (7) Διάνυσμα κίνησης: DPCM σε γειτονικά μακρομπλόκ Διαφορές των μπλοκ: μετασχηματισμός DCT Ταυτόχρονη κωδικοποίηση /κβαντοποίηση AC και DC

Κωδικοποίηση Video (8) Πλαίσια-B (B-frames) Αμέσως προηγούμενο ή επόμενο πλαίσιο-i ή P (όχι B) Επιτρέπεται χρήση και των δύο πλαισίων Δύο διανύσματα κίνησης Παρεμβολή για μακρομπλόκ αναφοράς

Κωδικοποίηση Video (9) Κωδικοποίηση πλαισίων-b Ίδια μέθοδος με τα πλαίσια-p Περιοδική χρήση πλαισίων-i και πλαισίων-p Κωδικοποίηση ενδιάμεσων πλαισίων-b

Δομή Video (1) Ομάδα εικόνων (GOP) Ξεκινάει και τελειώνει με διαδοχικά πλαίσια-i Περιλαμβάνει όλα τα ενδιάμεσα πλαίσια-p και B Βασική μονάδα συγχρονισμού στο MPEG-1 Ομάδα πλαισίων Ξεκινάει με πλαίσιο-i ή P Τελειώνει πριν το επόμενο πλαίσιο-p ή I Διαφορετική σειρά αποκωδικοποίησης και εμφάνισης

Δομή Video (2) Ενταμίευση πλαισίων Πλαίσιο-I: μέχρι το επόμενο πλαίσιο-p Πλαίσιο-P: μέχρι το επόμενο πλαίσιο-p ή πλαίσιο-i Πλαίσιο-B: καθόλου Σειρά εμφάνισης IBBPBBPBBIBBPBBPBB Σειρά αποκωδικοποίησης IPBBPBBIBBPBBPBB Περιοδικότητα πλαισίων N: ελάχιστη μονάδα τυχαίας προσπέλασης M: ελάχιστη μονάδα αποκωδικοποίησης

Ροή Δεδομένων (1) Ροή δεδομένων βίντεο (6 επίπεδα) Επίπεδο ακολουθίας: ενταμίευση Ρυθμός δεδομένων και χώρος ενταμίευσης Ενταμιευτής επαλήθευσης μετά τον κβαντοποιητή Εκτίμηση καθυστέρησης και απαιτούμενου χώρου Μεταβολή του παράγοντα κλιμάκωσης Επίπεδο ομάδων εικόνων: προσπέλαση Αποτελείται από ένα τουλάχιστον πλαίσιο-i Διάκριση σειράς παρουσίασης και αποσυμπίεσης

Ροή Δεδομένων (2) Επίπεδο εικόνας: πλαίσια Αριθμοί σειράς για συσχέτιση πλαισίων Επίπεδο τεμαχίου: τεμάχια πλαισίων Μεταβολή πλήθους μακρομπλόκ σε κάθε πλαίσιο Επίπεδο μακρομπλόκ: χαρακτηριστικά μακρομπλόκ Επίπεδο μπλοκ: χαρακτηριστικά μπλοκ Πολύπλεξη ροών δεδομένων Συγχρονισμός, ρύθμιση ρολογιών, ενταμίευση Διαίρεση ροής δεδομένων σε πακέτα (packs) Χρονοσφραγίδες συγχρονισμού επί μέρους ροών Μέγιστος ρυθμός δεδομένων στο πρώτο πακέτο

Εισαγωγή στο MPEG-2 Στόχοι MPEG-2 Υψηλή ανάλυση, μέχρι και HDTV Ρυθμοί δεδομένων 4 Mbps έως 100 Mbps Προφίλ και επίπεδα Κάθε προφίλ υποστηρίζει μία κατηγορία εφαρμογών Περιγράφεται ο αλγόριθμος κωδικοποίησης Κάθε επίπεδο δίνει παραμέτρους για τα προφίλ Ρυθμός δειγματοληψίας, ανάλυση, ρυθμός δεδομένων Κύριο προφίλ MPEG-2 Αποθήκευση ή μετάδοση (4 Mbps έως 80 Mbps) Κατάλληλο για υποστήριξη HDTV Κλιμακώσιμα προφίλ Φορητός δέκτης για χαμηλή ευκρίνεια Σταθερός δέκτης για HDTV

Εφαρμογές MPEG-2 ΕΠΙΠΕΔΟ ΜΕΓΕΘΟΣ ΕΙΚΟΝΑΣ Pixel/Sec (Mbits) Bit Rate (Mbits/sec) ΕΦΑΡΜΟΓΕΣ Χαμηλό 352*240 4 Τηλεοπτική Ποϊότητα Κύριο 720*480 15 Τηλεόραση (studio) Υψηλό 1440*1152 60 HDTV Υψηλό 1920*1080 80 Παραγωγή Ταινιών

Κωδικοποίηση Video (1) Χωρική κλιμάκωση (Spatial Resolution) Αποκωδικοποίηση βίντεο σε διαφορετικές αναλύσεις Πυραμιδική κωδικοποίηση της εικόνας Συνήθως κλιμάκωση με βάση τις δυνάμεις του 2 Κλιμάκωση ρυθμού δεδομένων Αναπαραγωγή με χαμηλότερο ρυθμό πλαισίου Γρήγορη κίνηση εμπρός με σταθερό ρυθμό πλαισίου Υλοποίηση με περιοδικά πλαίσια-i Κλιμάκωση σήματος προς θόρυβο (SNR) Μεταβλητή κβαντοποίηση των συντελεστών DCT Στρωματοποιημένη κωδικοποίηση Διάκριση δεδομένων για διόρθωση λαθών

Κωδικοποίηση Video (2) Δομή βίντεο Κωδικοποίηση με πολλαπλές ποιότητες Αντοχή στις απώλειες κελιών (δίκτυα ATM) Παράδειγμα: ανάλυση 704x480 30 τεμάχια ανά πλαίσιο, 44 μακρομπλόκ ανά τεμάχιο 6 μπλοκ σε (4:1:1) ή 8 μπλοκ σε (4:2:2)

Layer Video Coding

Hierarchical Frame Dependencies Each I-picture starts a "Group of Pictures (GOP) that can be decoded independently. Encoder can flexibly choose I-picture, P-pictures and B- pictures. B-pictures are not reference pictures for other pictures and hence can be dropped for temporal scalability

MPEG-4 Γιατί δεν υπάρχει MPEG-3; Σχεδιαζόταν για τα συστήματα HDTV Υπερκαλύφθηκε από το MPEG-2 Πρότυπο MPEG-4 Μείωση αντί αύξησης ρυθμού δεδομένων Δεκαπλάσια συμπίεση από H.261 (στόχος)

Στόχοι του MPEG4 Αλληλεπίδραση με φυσικό και συνθετικό περιεχόμενο Κατέβασμα νέων εφαρμογών και αλγορίθμων Υποστήριξη κλιμακώσιμων ροών δεδομένων Ανεξαρτησία από τη δικτυακή τεχνολογία Έμφαση στη δομή των ροών Κάλυψη της διεπαφής με τους χρήστες

Χαρακτηριστικά MPEG-4 (1) Αναπαράσταση οπτικοακουστικών Φυσικά και συνθετικά αντικείμενα Ανθρώπινα πρόσωπα και σώματα Κινήσεις προσώπων και σωμάτων Σύνθεση ομιλίας από κείμενο Λειτουργίες MPEG-4 Κωδικοποίηση πολυμεσικών μονάδων Σύνθεση μονάδων σε οπτικοακουστικές Πολύπλεξη ροών δεδομένων Αλληλεπίδραση σκηνών με τον παραλήπτη Δύο είδη κωδικοποίησης Κωδικοποίηση οπτικοακουστικών αντικειμένων Κωδικοποίηση σύνθεσης σκηνών

Χαρακτηριστικά MPEG-4 (2) Λειτουργίες MPEG-4 Κωδικοποίηση πολυμεσικών μονάδων Σύνθεση μονάδων σε οπτικοακουστικές σκηνές Πολύπλεξη ροών δεδομένων Αλληλεπίδραση σκηνών με τον παραλήπτη Δύο είδη κωδικοποίησης Κωδικοποίηση οπτικοακουστικών αντικειμένων (AVO) Κωδικοποίηση σύνθεσης σκηνών

Δομή Σκηνών (1)

Δομή Σκηνών (2) Πρωταρχικό (primitive) AVO Αμετάβλητο φόντο δύο διαστάσεων Εικόνα ατόμου που περπατάει και μιλάει Φωνή που σχετίζεται με το άτομο αυτό Ιεραρχική οργάνωση AVO Οπτικό AVO (άτομο) και ηχητικό AVO (φωνή) Μοντέλο σκηνών Βασίζεται στη γλώσσα VRML αλλά σε 2 διαστάσεις Αλληλεπίδραση και συγχρονισμός AVO Επιφάνεια αντικειμένου βίντεο (VOP) Αναπαράσταση οπτικού AVO Σχήμα: χάρτης ψηφίων Κίνηση και υφή: όπως στο MPEG-2

Δομή Σκηνών (3) Πολυπλέκτης (MUX) Πολύπλεξη πληροφοριών σύνθεσης σε μία ροή Θέση, βάθος και προσανατολισμός AVO Πλαίσιο ενοποιημένης μεταφοράς πολυμέσων (DMIF) Διεπαφή MPEG-4 με το δίκτυο Τυποποιημένη επικοινωνία πολυμεσικών εφαρμογών Αποπολυπλέκτης (DEMUX) Ανάκτηση σχήματος, κίνησης και υφής AVO από μία ροή Αποκωδικοποίηση AVO και σύνθεση σκηνής Προδιαγραφές βίντεο MPEG-4 Ποικιλία ρυθμών δεδομένων, αναλύσεων και ποιοτήτων Μέθοδοι κωδικοποίησης φυσικών και συνθετικών σκηνών Δυνατότητα πρόσβασης στα αντικείμενα των σκηνών Πρόσβαση με βάση το περιεχόμενο

Κωδικοποίηση ήχου και video (1) Σύνθεση σκηνής από ιεραρχία αντικειμένων Αρχικά, μετάδοση της ιεραρχίας των αντικειμένων Μετά, μετάδοση των αλλαγών σε κάθε κόμβο Πιθανώς, μεταβολή και της ιεραρχίας Ο χρήστης αλληλεπιδρά με τους κόμβους Πιθανοί τρόποι αλληλεπίδρασης Αλλαγή θέσης παρατήρησης της σκηνής Σύρσιμο αντικειμένων σε άλλες θέσεις Εκκίνηση μίας ακολουθίας γεγονότων Αναπαράσταση αντικειμένων βίντεο και ήχου Καθορισμός απαιτούμενων τάξεων αντικειμένων Κατέβασμα τάξεων που λείπουν από τον παραλήπτη Αρχικοποίηση τάξεων και δομών δεδομένων Αποπολύπλεξη, συγχρονισμός και αποκωδικοποίηση

Κωδικοποίηση ήχου και video (2) Κωδικοποίηση ανθρώπινων χαρακτηριστικών Παράμετροι περιγραφής προσώπων και κινήσεών του Παράμετροι περιγραφής σώματος και κινήσεών του Αναπαράσταση αντικειμένων με πλέγματα Σύνολα επίπεδων πολυγωνικών επιφανειών Ρεαλιστική απεικόνιση με προβολή υφών Μέθοδοι κωδικοποίησης φυσικού ήχου 2-6 Kbps: παραμετρική κωδικοποίηση 6-24 Kbps: γραμμική πρόβλεψη με κωδικούς διέγερσης 24-64 Kbps: μετασχηματισμός χρόνου σε συχνότητες Κωδικοποιητής κειμένου σε φωνή (TTS) Ρυθμοί δεδομένων 200 bps έως 1,2 Kbps Απλό κείμενο ή κείμενο με πληροφορίες προσωδίας

Κωδικοποίηση ήχου και video (3) Μουσική σύνθεση με βάση παρτιτούρα Ρυθμοί δεδομένων 2 Kbps έως 3 Kbps Ορχήστρα που αποτελείται από όργανα και οδηγίες προς αυτά Τράπεζα ήχων και σύνολο ηχητικών εφφέ Χωρική και χρονική κλιμάκωση Μερική αποκωδικοποίηση για παρουσίαση Εφαρμογές κλιμάκωσης Δίκτυα με περιορισμούς στην ταχύτητα μετάδοσης Εφαρμογές μειωμένης ανάλυσης ή ποιότητας Υποστήριξη θορυβωδών καναλιών Αλγόριθμοι συμπίεσης με ανοχή στα λάθη Ανασυγχρονισμός διακοπτόμενων ροών Ανάκτηση παρεφθαρμένων ροών Απόκρυψη σφαλμάτων

MPEG-4 Scene Composition

Control Data Σχεδιαστικές Αρχές H.264 To address this need for flexibility and customizability, the H.264/AVC design covers a: Video Coding Layer (VCL): representation of the video content (performing all the classic signal processing tasks) Network Abstraction Layer (NAL): adaptation of VCL representations in a manner appropriate for conveyance by a variety of transport layers or storage media Video Coding Layer Coded Macroblock Data Partitioning Network Abstraction Layer Coded Slice/Partition H.320 MP4FF H323/IP MPEG-2 etc.

Features enhancing coding efficiency (1) Enhancements on picture encoding is enabled through value prediction methods Variable block-size motion compensation with small block sizes Quarter-sample-accurate motion compensation Multiple reference picture motion compensation Weighted prediction Directional spatial prediction for intra coding In-the-loop deblocking filtering

Features enhancing coding efficiency (2) Enhancements on picture encoding is enabled through high performance tools Small block-size transform Hierarchical block transform Short word-length transform Exact-match inverse transform Arithmetic entropy coding Context-adaptive entropy coding

Features enhancing Robustness Enhancements on Robustness to data errors/losses and flexibility for operation over a variety of network environments is enabled by new design aspects new Parameter set structure NAL unit syntax structure Flexible slice size Flexible macroblock ordering (FMO) Redundant pictures SP/SI synchronization/switching pictures

Network Abstraction Layer The Network Abstraction Layer (NAL) is designed in order to provide "network friendliness, facilitating the ability to map H.264/AVC VCL data to transport layers such as RTP/IP for any kind of real-time wire-line and wireless Internet services (conversational and streaming) File formats, e.g. ISO MP4 for storage and MMS H.32X for wireline and wireless conversational services MPEG-2 systems for broadcasting services, etc. Some key concepts of the Network Abstraction Layer are: NAL Units Use of NAL Units in: Byte stream format systems Packet-Transport systems Parameter Sets Access Units

NAL Units The coded video data is organized into NAL units, each of which is effectively a packet that contains an integer number of bytes NAL units are classified into VCL NAL units: contain the data associated to the video pictures non-vcl NAL units: contain any associated additional information Header byte: first byte of each NAL unit; contains an indication of the type of data in the NAL unit, and the remaining bytes contain payload data of the type indicated by the header Emulation Prevention Bytes: bytes inserted in the payload data to prevent the accidentally generation of a particular pattern of data called a start code prefix NAL unit stream: series of NAL units generated by an encoder

Use of NAL Units Bitstream-oriented transport systems (H.320, MPEG-2 systems) Delivery of the entire or partial NAL unit stream as an ordered stream of bytes or bits the locations of NAL unit boundaries need to be identifiable In the byte stream format, each NAL unit is prefixed by a specific pattern of three bytes called a start code prefix Packet-oriented transport systems (IP, RTP systems) The coded data is carried in packets that are framed by the system transport protocol the boundaries of NAL units within the packets can be established without use of start code prefix patterns The NAL units can be carried in data packets without start code prefixes.

Parameters Set A Parameter Set contains information that is expected to rarely change. Types of parameter sets: sequence parameter sets: relative to a series of consecutive coded video pictures (coded video sequence) picture parameter sets: relative to one or more individual pictures. Parameter sets can be sent One time Many time In-band Out-of-Band (ahead the VCL NAL Units) (to provide robustness) (same VCL NAL Unit Channel) (different Channel)

Video Coding Layer The VCL design follows the so-called block-based hybrid video coding approach Input Video Signal Coder Control Control Data Split into Macroblocks 16x16 pixels - Decoder Transform/ Scal./Quant. Scaling & Inv. Transform Quant. Transf. coeffs Entropy Coding Intra-frame Prediction De-blocking Filter Intra/Inter Motion- Compensation Output Video Signal Motion Data Motion Estimation There is no single coding element in the VCL that provides the majority of the significant improvement in compression efficiency in relation to prior video coding standards.

Pictures, frames, and fields A coded pictures can represent either an entire frame or a single field A frame of video can be considered to contain two interleaved fields interlaced frame: the two fields of a frame were captured at different time instants progressive frame The coding representation in H.264/AVC is primarily agnostic with respect to this video characteristic

Macroblocks and Slices Fixed-size macroblocks partition with 16x16 samples of the luma component and 8x8 samples of each of the two chroma components. Slices are a sequence of macroblocks which are processed in the order of a raster scan when not using Flexible Macroblock Ordering (FMO). A picture is a collection of one or more slices in H.264/AVC. Indipendency Each slice can be correctly decoded without use of data from other slices.

Algorithm The encoder selects the best partition size for each part of the frame, to minimize the coded residual and motion vectors. The macroblock partitions chosen for each area are shown superimposed on the residual frame. little change between the frames (residual appears grey) a 16x16 partition is chosen detailed motion (residual appears black or white) smaller partitions are more efficient. Residual (no motion compensation)

Effects (1/2) Frame F n Frame F n-1 Residual (no motion compensation) Residual (16x16 bock size)

Effects (2/2) Residual (8x8 bock size) Residual (4x4 bock size) Residual (4x4 bock size; half pixel) Residual (4x4 bock size; quarter pixel)

Example (1/2) Frame F n Reconstructed reference Frame F n-1 Residual F n F n-1 (no motion compensation) 16x16 Motion Vector Field

Example (2/2) Motion compensation reference frame Motion compensation residual frame

Multi-picture Prediction Multi-picture motion compensation using previously-encoded pictures as references allows up to 32 reference pictures to be used in some cases Very significant bit rate reduction for scenes with rapid repetitive flashing back-and-forth scene cuts uncovered background areas

Parameters that require to be encoded and transmitted Entropy Coding Macroblock Type (Prediction method) QP Motion data: Reference frame and Motion Vector Coded block pattern (blocks containing coded coefficients) Residual Data H.264/MPEG-4 AVC uses a number of techniques for entropy coding: Exp-Golomb codes All syntax elements except the quantized transform coefficients. Context Adaptive Variable Length Coding (CAVLC) Quantized transform coefficients

Profiles and Levels Profile Defines a set of coding tools or algorithms that can be used in generating a conforming bit-stream Level Places constraints on certain key parameters of the bitstream Decoders conforming to a profile must support all features in that profile In H.264/AVC, three profiles are defined (plus extensions) Baseline Main Extended Profile Fidelity Range Extensions: four HighProfile versions (High, High 10, High 4:2:2, and High 4:4:4), for high quality uses

Profile features Baseline profile supports all features in H.264/AVC except the following two feature sets: Set 1 o o o o o Set 2 o B slices Weighted prediction CABAC Field coding Picture or macroblock adaptive switching between frame and field coding SP/SI slices Main profile supports Set 1, and does not support the FMO and redundant pictures features Extended Profile supports all features except for CABAC.

Profile Map

Application Areas Conversational services operate typically below 1 Mbps; low latency requirements Baseline profile for following application H.320 conversational services with circuit-switched ISDN-based video conferencing 3GPP conversational H.324/M services H.323 conversational services over the Internet with best effort IP/RTP protocols. 3GPP conversational services using IP/RTP for transport and SIP for session set-up. Entertainment video applications operate between 1-8 Mbps; moderate latency (0.5 to 2 seconds) Main profile for following application Broadcast via satellite, cable, terrestrial, or DSL DVD for standard and high-definition video Video on demand via various channels. Streaming services operate at 50 kbps 1.5 Mbps; latency of 2 or more seconds Baseline or Extended profile; differences based on the use for wired or wireless environments as follows:

Differences

Principles of Video Communication

Properties of Video Communications (1) Pre-encoded (stored) video Decoder retrieves a previously compressed video that is stored (locally or remotely) Limited flexibility Examples of locally stored, e.g. DVD, Video CD Examples of remotely stored, e.g. VOD Real-time (interactive) vs non-real time Real Time Information has time-bounded usefulness Maximum acceptance latency Non-real time Loose latency constraint

Properties of Video Communications (2) Dynamic vs static channels Most communication involve channels whose characteristics vary time, e.g. capacity, error rate, delay Video communications over a dynamic channel (e.g. Internet, wireless) is much more difficult than for a static channel (PSTN, ISDN) Packet-switched vs circuit-switched Packet-switched: Packets may exhibit variable delay, may arrive out of order, or may be lost completely Circuit-switched: Data arrives in order, however may be corrupted by bit errors or burst errors Example of packet-switched: LAN, Internet Example of circuit-switched: PSTN, ISDN

Properties of Video Communications (3) Broadcast One-to-many (basically one-to-all) Typically different channels characteristics for each recipient Sometimes, system is designed for worst case-channel Example: Broadcast television Multicast One-to-many (but not everyone) Example: IP-Multicast over the Internet More efficient than multiple unicasts

Why IP Multicasting Efficiency in terms of network utilization Scalability in terms of control overhead Data replication at appropriate points rather in endsystems IP Multicast provides a flexible, dynamic and anonymous membership through the IGMP protocol Support of hosts with heterogeneous capabilities Multiple support of diverse QoS

IP Unicast vs Multicast Unicast Sender Multicast Sender

IGMP Model Senders need not know about recipients location Group membership is dynamic Use of Class D Addresses (Semi-permanent) Range from 224.0.0.0-239.255.255.255 Reserved use 224.0.0.0-224.0.0.255 Each domain constraints the distribution of multicast packets through the employment of thresholds at TTL fields Multiple IP group addresses map into a single link-layer address In IGMP v3, the latency to leave the group is reduced IGMP v3 enables to listen only to a specified subset of the hosts sending to the group

IP Multicast Application Taxonomy One-to-Many: A single host is transmitting data to either two or more receivers Audio/video distribution Announcements Caching Many-to-One: Two or more receivers are sending packets back to the sender Resource Discovery Many-to-Many: Two or more hosts send and receive packets for the same multicast group address Multimedia conferencing Interactive games

Multicast Application Requirements Application Reliability Reliability Scalability (Hosts) Collaborative Low Semi/Strict Limited (<100) Bulk Data Low/Medium Semi/Strict Large Message Streaming Not Real Time Strict Large

IP Multicasting Key Elements Conference Control Light-weight sessions Tightly coupled conferencing Multicast Routing Protocols Multicast Transport Protocols Multicast Congestion Reliable Multicast Protocols Multimedia Application Specific Protocols

Conference Control Session information is shared among the hosts Elements of the session control information Configuration of IP Multicast address Number of media and media types within the session IETF Proposals Decentralized and free from the burden of explicit peer-to-peer connection set-up Session Description Protocol describes the content and format of multimedia sessions Session Announcement Protocol is used to distribute the content to the potential session recipients Session Initiation Protocol provides a mechanism to invite hosts ITU Proposal H.332, is a small tightly coupled H.323 conference with larger lightweight-sessions style conference listening in passive participants

Multicast Routing Protocols A spanning tree is constructed between the sender and the receivers Multicast intra-domain routing protocols are grouped DVMRP, PIM-DM Multicast Group members are densely distributed There is enough bandwidth to send the multicast packets CBT, PIM-SM Multicast Group members are sparsely distributed Bandwidth is not necessarily available Multicast routers must maintain an amount of states proportional to the number of active multicast groups and members of each group. Extensions of routing protocols over asymmetric networks Multicast inter-domain routing protocol (e.g. BGMP)

Multicast Transport Protocols (1) TCP can not be used for multicasting since it is point-to-point. Two options for multicasting Multicast transport on top of UDP Specialized transport on top of IP through the use of raw sockets. Use of specific protocols (e.g. RTP, RTCP, TCP- Friendly, DCCP) to handle multimedia

Multicast Transport Protocols (2) Multicast Application Specialised Transport TCP UDP IP MAC PHY TCP UDP IP MAC PHY Multicast Application Specialised Transport

VOD Architecture

Internet Streaming

Video Coding for Storage (1) Goal: Store a video in storage with R total bits Problem: How do we encode the video Possible approach # 1: Allocate equal number of bits to each frame, For N frames: Problem: Some frames are more complex than others Some frames are more predictable than others Some frames should be allocated more bits than others

Video Coding for Storage (2) Basic video coding problem for storage: minimize

Video Coding for Storage (3) Possible approach # 2: Allocate bits per frame so that on average: Allow some variation Ensure storage constraint is satisfied when Nth frame is coded Better than approach # 1 Problems: Future Frames are unknown Can over-estimate future frames Can under-estimate future frames

Video Coding for Storage (4)

Video Coding for Storage (5) Possible approach # 3: Code entire video sequence Gather and analyze statistics Identify complex areas of video sequence Re-estimate bit allocation for each frame Re-encode entire video sequence

CBR vs VBR

Streaming over the Internet (1)

Streaming over the Internet (2)

Streaming Characteristics Streaming video: Partition video into packets Start delivery, begin playback while video is still being downloaded (5-10 sec delay) Simultaneous delivery and playback (with short delay) Advantages: Low delay before viewing Minimum storage requirements

Video Streaming over the Internet Bandwidth problem Delay jitter Packet Loss Problem of streaming video can be expressed as a sequence of constraints: Frame N must be delivered & decoded by time TN Frame N+1 must be delivered & decoded by time TN +D Frame N+2 must be delivered & decoded by time TN +2D Any data that is lost is useless Any data that arrives late is useless Goal: Design system to satisfy this sequence of constraints

Bandwidth Issues Can not reserve bandwidth in Internet today Available bandwidth is dynamic If transmit faster than available bandwidth->congestion - >packet loss->severe drop in video quality If transmit slower than available bandwidth->sub-optimal video quality Rate Control Estimate the available bandwidth Match video rate to available bandwidth Rate control may be performed at: Sender or Receiver Available bandwidth may be estimated by: Probe-based methods Model-based (equation-based) methods Source-based rate control

Sender Methods Source Rate Control: Source explicitly adapts the sending rate through a feedback sent by the receiver Methods for estimating bandwidth Probe based method: Use probing experiments to estimate the available bandwidth Model based method: Use TCP Flow control to measure congestion

Receiver Methods (1) Receiver explicitly selects the video rate from a number of possible rates Key example: Receiver-driven Layered Multicast Sender codes video with scalable or layered coder Sends different layers over different multicast groups Each receiver estimates its bandwidth and joins an appropriate number of multicast groups

Receiver Methods (2)

Video Rate Adaptation Source must match video bit rate with available bandwidth Video bit rate may be adapted by: Varying the quantization Varying the frame rate Varying the spatial resolution Adding/dropping layers (for scalable coding) Options depend on real-time encoding or pre-encoded content: Real-time encoding: Adapting is straightforward Pre-encoded content: Limited options, e.g. drop B frames, drop layers in scalable coding, or perform transcoding

Delay Jitter Issues (1) Video encoder captures/sends video at a certain rate, e.g. 10 frames/sec or one frame every 100 ms Receiver should decode and display frames at the same rate Each frame has its own specific playout time Playout time: Deadline by which it must be displayed If a frame arrives after its playout time it is useless If subsequent frames depend on the late frame, then effects can propagate

Delay Jitter End-to-end delay in Internet: Depends on router processing and queuing delays, propagation delays, and end system processing delays Delay jitter: End-to-end delay may fluctuate from packet to packet Jitter: Variation in the end-to-end delay Example: Video coded at 10 frames/sec Each frame sent in one packet every 100 ms Received packets may not be spaced apart by 100 ms Some may be closer together Some may be further apart

Overcoming Delay Jitter Approach: Add buffer at decoder to compensate for jitter Corresponds to adding an offset to the playout time of each packet If (packet delay < offset) then OK Buffer packet until its playout time If (packet delay > offset) then problem

Comments on Playout Delay Designing appropriate playout strategy is very important Tradeoff between playout delay and loss Longer delay leads to lower loss rates Shorter delay has higher loss rates Streaming of stored video can tolerate long delays (e.g. Real uses 5-10 secs) Real-time interactive video can not tolerate long delays (maybe 400 ms) Delay jitter is dynamic (time-varying) Fixed playout delay is sub-optimal Adaptive playout delay is better Estimate variance of jitter and adapt playout delay

To Πρόβλημα της Απώλειας Πακέτων

Handling Packet Loss Loss-> Error Control Forward Error Correction Retransmission Error Concealment Error-Resilient Coding

Type of Errors Application Videophone over PSTN Type of Error Few bit errors and packet loss Videoconferencing over ISDN Digital Television Video streaming over the Internet Wireless video Practically error free (BER 10-8 ) Almost error free (after FEC) Packet loss of 0-30% BER up to 10-3, Burst errors

Error Control (1) Goal of error control: To overcome the effect of errors such as packet loss on a packet network or bit or burst errors on a wireless link Types of error control: Forward Error Correction Retransmission Error-concealment Error-resilient coding

Error Control (2)

Forward Error Correction (1) Add specialized redundancy that can be used to recover from errors Example: Overcoming losses in a packet network Losses correspond to packet erasures Block codes are typically used K data packets, (N-K) redundant packets, total of N packets Overhead N/K Example: 5 data packets, 2 redundant packets (K,N) = (5,7) 7/5 = 1.40 or 40 % overhead

Forward Error Correction (2) Error correcting capability: If no errors, then K data packets provide data As long as any K of the N packets are correctly received the original data can be recovered Example: 5 data packets, 2 redundant packets (5,7) Can compensate for up to 2 lost packets OK as long as any 5 out of 7 are received

FEC and Interleaving Problem: Burst errors may produce more than N- K consecutive lost packets Possible solution: FEC combined with interleaving to spread out the lost packets FEC and interleaving often effective Potential problem: To overcome long burst errors need large interleaving depth ->Leads to large delay

FEC Low delay (as compared to retransmits) Doesn t require feedback channel Works well (if appropriately matched to channel) Overhead Channel loss characteristics are often unknown and timevarying FEC may be poorly matched to channel Therefore often ineffective (too little FEC) or inefficient (too much FEC)

Retransmissions (1) Back-channel exists between receiver and sender Receiver instructs sender which packets were received/lost and sender resends lost packets Only resends lost packets, efficiently uses bandwidth Easily adapts to changing channel conditions Latency /RTT Requires a back-channel (not applicable in broadcast, multicast, or point-to-point w/o back-channel) Effectiveness decreases with increasing RTT

Retransmissions (2) Variations on retransmission-based schemes: Video streaming with time-sensitive data Delay-constrained retransmission Only retransmit packets that can arrive in time Priority-based retransmission Retransmit important packets before unimportant packets Leads to interesting scheduling problems, e.g. which packet should be transmitted next?

Error Concealment (1) Problem: Transmission errors may result in lost information Goal: Estimate the lost information in order to conceal the fact that an error has occurred Error concealment is performed at the decoder Observation: Video exhibits a significant amount of correlation along the spatial and temporal dimensions Basic approach: Perform some form of spatial/temporal interpolation to estimate the lost information from correctly received data

Error Concealment (2) Consider the case where a single macroblock (16x16 block of pixels) is lost Three examples of error concealment: Spatial interpolation Temporal interpolation (freeze frame) Motion-compensated temporal interpolation

Spatial Interpolation Estimate missing pixels by smoothly extrapolating surrounding pixels Correctly recovering missing pixels is extremely difficult, however even correctly estimating the average value is very helpful

Temporal Interpolation Copy the pixels at the same spatial location in the previous frame (freeze frame) Effective when there is no motion, potential problems when there is motion

Motion-compensated temporal interpolation Use motion vector to estimate missing block as motion-compensated block from prior frame Can use coded motion vector, neighboring motion vector, or compute new motion vector

Error Resilient Video Coding Goal: Design the video compression algorithm and the compressed bitstream so that it is resilient to errors Why: Compressed video is highly vulnerable to errors Next: Overview of error-resilient video compression Basic problems introduced by errors Methods to overcome these problems

Basic Induced Problems Bitstream synchronization: Decoder does not know what bits correspond to what parameters E.g. error in Huffman codeword Incorrect state and error propagation: Decoder s state is different from encoder s, leading to incorrect predictions and error propagation E.g. error in MC-prediction or DC-coefficient prediction

Bit Stream Synchronization (1) Bitstream synchronization: Decoder does not know what bits correspond to what parameters Example: Error in Huffman codeword or other variable length code (VLC) Single bit error can lead to significant subsequent loss Notes: Fixed length codes (FLC) do not have this problem since the beginning and end of codeword is know, I.e. losses are limited to a single codeword However, FLC s do not provide good compression efficiency VLC s and other forms of entropy coding are widely used

Bit Stream Synchronization (2) Bitstream sync problem: Decoder does not know what bits correspond to what parameters Mechanisms to enable resynchronization Approaches: Use resync markers Reversible variable length codes (RVLC)

Bit Stream Synchronization (3) Use resync markers Marker distinct from all codewords, concatenations of codewords, and minor perturbations of concatenated codewords Include information after marker to restart decoding Apply them at the beginning of frame/slice

Bit Stream Synchronization (4) Reversible variable length codes (RVLC): Conventional VLC s are uniquely decodable only in forward direction RVLC s also have the property that they can be uniquely decodable in the backward direction Use: If an error is detected, jump to the next resync and start decoding backwards, enabling partial recovery of data (otherwise would be discarded)

Bit Stream Synchronization (5) Data partitioning Observation: Bits closely following resync are more likely to be accurate than those farther away Idea: Place most important information immediately after resync (MV s, shape info, DC coeffs), and less important info later (AC coeffs) Contrasts with conventional approach where data is interleaved on a MB by MB basis

Error Propagation An error causes the reconstructed frame (state) at the decoder to be incorrect Decoder s state is different from encoder s, leading to incorrect (mismatched) predictions and often significant error propagation

Error Concealment Examples

Overcoming Error Propagation (1) An error causes the reconstructed frame at the decoder to be incorrect, and often leads to significant error propagation Goal: Limit effect of error propagation Approaches: All I-frame Eliminates error propagation, but poor compression Periodic I-frames, e.g. MPEG GOP Example: I-frame every 15 frames Limits error propagation to one GOP Compression is still relatively poor (inappropriate for very low bit rate video, e.g. wireless video or video over the Internet)