Klara Nahrstedt Spring 2012 CS 414 – Multimedia Systems Design Lecture 19 – Midterm Review + Queue Management Klara Nahrstedt Spring 2012 CS 414 - Spring 2012
Midterm March 5 (Monday), 11-11:50am, 1302 SC Closed Book, Closed Notes You can bring calculator and 1 page cheat sheet CS 414 - Spring 2012
Covered Material Class Notes (Lectures 1-16) MP1 Book Chapters to read/study: Media Coding and Content processing book Chapter 2, Chapter 3.1-3.2, 3.8, Chapter 4.1-4.2.2.1, Chapter 4.3 (as discussed in lecture) Chapter 5, chapter 7.1-7.5, 7.7 Multimedia Systems book Chapter 2.1-2.4, (not 2.4.4 – we have not covered QoS routing ), CS 414 - Spring 2012
Material Media Characteristics Audio Characteristics Synchronous, Isochronous, Asynchronous Regular, irregular Weakly and strongly periodic streams Audio Characteristics Samples, frequency, Perception, psychoacoustic effects, loudness, pitch, decibel, intensity Sampling rate, quantization CS 414 - Spring 2012
Material Audio Characteristics Image Characteristics PCM, DPCM, ADPCM, signal-to-noise ratio Image Characteristics Sampling, quantization, pixels Image properties: color, texture, edges Simple edge detection process CS 414 - Spring 2012
Material Video technology Color perception: hue, brightness, saturation, Visual representation: horizontal and vertical resolution , aspect ratio; depth perception, luminance, temporal resolution and motion Flicker effect Color coding: YUV, YIQ, RGB NTSC vs HDTV formats CS 414 - Spring 2012
Material Basic Coding schemes Hybrid codes Run-length coding Statistical coding Huffman coding Arithmetic coding Hybrid codes JPEG: image preparation, DCT transformation, Quantization, entropy coding, JPEG-2000 characteristics CS 414 - Spring 2012
Material Hybrid Coding Video MPEG: image preparation, I, P, B frames characteristics, quantization, display vs processing/transmission order of frames Audio MPEG: role of psychoacoustic effect, masking, steps of audio compression MPEG-4: differences to MPEG-2/MPEG-1 Audio-visual objects, layering H.261, 263, 264 CS 414 - Spring 2012
Material Quality of Service concepts Service classes, QoS specification – deterministic, predictive, best effort, QoS classification – application, system, network QoS, relation between QoS and resources QoS operations: translation, negotiation of QoS parameters CS 414 - Spring 2012
Material Resource Management concepts QoS and resources, establishment phase and transmission/enforcement phase Admission control of resources, reservation and allocation of resources Negotiation Protocols CS 414 - Spring 2012
Sample Problems Consider the following alphabet {C,S,4,1}, with probabilities: P(C) = 0.3, P(S) = 0.2, P(4)= 0.25, P(1) = 0.25. Encode the word CS414 using Huffman coding and arithmetic coding Compare which encoding requires less bits CS 414 - Spring 2012
Sample Problems Describe briefly each step in MPEG-1 audio encoding. Specify the functionality, which is performed in each step. You don’t have to provide equations, only a clear explanation of the functionality that is performed inside each step. CS 414 - Spring 2012
Sample Problems What is flicker effect and how to remove it? Explain difference between synchronous and isochronous transmission stream modes Provide five differences between MPEG-4 video encoding standard and the previous MPEG video encoding standards CS 414 - Spring 2012
Sample Problems Consider voice conversational application (like Skype). What multimedia-sensitive algorithms at the setup phase would you deploy to make sure that you start with a good voice transmission ? Specify clear design of order of algorithms/protocols to be used CS 414 - Spring 2012
Queuing , Queue management and rate control CS 414 - Spring 2012
Covered Aspects of Multimedia Audio/Video Presentation Playback Image/Video Capture Audio/Video Perception/ Playback Image/Video Information Representation Transmission Transmission Compression Processing Audio Capture Media Server Storage Audio Information Representation A/V Playback ORCHID Research Group Department of Computer Science, University of Illinois at Urbana-Champaign
Rate Control Multimedia networks use rate-based mechanisms (conventional networks use window-based flow control and FIFO) Work-conserving schemes Non-work-conserving schemes Fair Queuing Jitter Earliest-Due-Date Virtual Clock Stop-and-Go Delay Earliest-Due-Data Hierarchical Round-Robin CS 414 - Spring 2012
Weighted Fair Queuing CS 414 - Spring 2012
Weighted Fair Queuing CS 414 - Spring 2012
WFQ vs FQ Both in WFQ and FQ, each data flow has a separate FIFO queue. In FQ, with a link data rate of R, at any given time the N active data flows (the ones with non-empty queues) are serviced simultaneously, each at an average data rate of R / N. Since each data flow has its own queue, an ill-behaved flow (who has sent larger packets or more packets per second than the others since it became active) will only punish itself and not other sessions. WFQ allows different sessions to have different service shares. If N data flows currently are active, with weights w1,w2...wN, data flow number i will achieve an average data rate of R * wi/(w1+w2+…+wn) CS 414 - Spring 2012
WFQ and Jitter WFQ guarantees packet delay less than a given value D, but as long as delay is within bound it does not guarantee what the delay will be Example: send packet at time t0 over a path whose maximum delay is D (note that each path has some minimal delay d) WFQ guarantees that packet arrives no sooner than t0+d, but packets can arrive any time t0+ x between [t0+d, t0+D] . x is jitter CS 414 - Spring 2012
Class-based WFQ PQ – Priority Queue CS 414 - Spring 2012
Error Control: Avoidance, detection, Correction CS 414 - Spring 2012
Congestion Avoidance via Random Early Drop (Active Queue Management) RED = Random Early Drop Refined RED based on IP packet preference is Weighted RED (WRED)
Error Detection Ability to detect the presence of errors caused by noise or other impairments during transmission from sender to receiver Traditional mechanisms: check-summing, PDU sequencing Checksum of a message is an arithmetic sum of message code words of a certain word length (e.g., byte) CRC – Cyclic Redundancy Check – function that takes as input a data stream of any length and produces as output a value (commonly a 32-bit integer) – can be used as a checksum to detect accidental alteration of data during transmission or storage Multimedia mechanisms: byte error detection at application PDU, time detection
Design of Error Correction Codes Automatic repeat-request (ARQ) Transmitter sends the data and also an error detection code, which the receiver uses to check for errors, and requests retransmission for erroneous data The receiver sends ACK (acknowledgement of correctly received data) Forward Error Correction (FEC) Transmitted encodes the data with an error-correcting code (ECC) and sends the coded msg. No ACK exists. CS 414 - Spring 2012
Error Control Error Correction Traditional mechanisms: retransmission using acknowledgement schemes, window-based flow control Multimedia mechanisms: Go-back-N Retransmission Selective retransmission Partially reliable streams Forward error correction Priority channel coding Slack Automatic Repeat Request CS 414 - Spring 2012
Go-back-N Retransmission CS 414 - Spring 2012
Conclusion Establishment Phase Transmission Phase Negotiation, Translation Admission, Reservation Transmission Phase Traffic Shaping Isochronous Traffic Shaping Shaping Bursty Traffic Rate Control Error Control Next: Case Studies of Multimedia Protocols CS 414 - Spring 2012