270 likes | 403 Vues
This lecture delves into various content delivery services and multimedia technologies including VoIP, teleconferencing, video on demand, and telemedicine. Key concepts such as data streaming, delay and jitter, and error recovery schemes are discussed, emphasizing real-time data transmission and its implications for applications. The lecture also covers data compression techniques like Huffman encoding and Lempel-Ziv algorithms, highlighting their importance in efficient multimedia content delivery.
E N D
Lecture 17 – March 21, 2002 • Content-delivery services. • Multimedia services • Reminder next week individual meetings and project status report are due.
Multimedia Services • Voice over IP • Still images • Audio broadcast • Video broadcast • Video on demand • Teleconferencing • Videoconferencing • Remote instrumentation • Telemedicine
Analog and Digital Information • Sampling – Nyquist theorem • Quantization – quantization noise • Examples: voice – sampling rate 8,000 samples/sec 8 bits/sample-256 quantization levels music – sampling rate 48,000 samples/sec 16 bits/sample color video – 10,000,000 samples/sec 24 bits/sample
Timing requirements for data streaming • Interactive service – voice over IP, teleconferencing delay and jitter sensitive but loss tolerant • Video streaming rate sensitive and to some extent loss tolerant. 25 frames/sec • Telemedicine and remote instrument control delay and loss sensitive • Stored media applications – video on demand less strict/demanding
Delay and Jitter • Play-out delay • End-to-end delay • Delay at the sender • Data transmission and propagation delay • Delay at the receiver • Jitter – variability of end to end delay • For a normal conversation – play out delay • < 100 msec not noticeable • < 400 msec acceptable • > 400 msec not acceptable
Removing the Jitter in Voice over IP • Fixed play-out delay • Adaptive play-out delay takes advantage of silent periods between talk spurts • Fill in a buffer at a variable rate and drain it at a constant rate.
Data Streaming • Data stream – sequence of bytes flowing out or into a process. • Media server • Media player • Often they require a Web browser to connect to the server and download a metafile describing the media player.
Error Recovery Schemes • Forward error correction – sender adds redundant information. • Packet (i) contains the original information and a low-quality version of packet (i-1) • Interleaving the stream is scrambled. • Packet (i) does not contain samples adjacent to each other.
Real-time Protocol (RTP) • RTP – application layer protocol • Uses UDP; TCP congestion control and error control prevent delay or rate guarantees. • RTP supports several • audio formats including PCM, GSM, G.722, MPEG audio – MP3 • video formats – JPEG, MPEG 1, and MPEG 2.
RTP • One may have multiple RTP connections; one for audio and one for video • RTP supports unicast and multicast • RTP packet: Header + Payload • Header • Payload type • Magic number to identify the audio or video format • Sequence number of the packet • Time stamp • Random number associated with the RTP session
RTCP – RTP control protocol • Senders – periodic source reports • RTP session identifier • Application generating the stream • Address of source • Receivers periodic reciver reports • Number of packets lost • Jitter • Number of packets Received
RTCP • An application may use may use the data provided by RTCP to • Modify transmission rates • Synchronize multiple streams • Diagnostics • For multicast RTCP limits the frequency of receiver reports.
Real-time Streaming Protocol (RTSP) • Supports interactive applications • Out-of-band channel
Data compression • Text compression • Still image compression • Audio and Video compression
Loseless compression • Differential encoding – amplitudes of consecutive samples differ only slightly. • Entropy encoding – removes the redundancy based upon the entropy • Run Length Encoding • Statistical Encoding
Text Compression • Huffman Encoding • Produces optimal results only if the probability of occurrence of individual characters is a power of ½. • Static Huffman Encoding • Adaptive Huffman Encoding • Lemplel-Ziv
Lempel-Ziv • Construct a dictionary consisting of all the substrings in the input string • Instead of transmitting a substring we transmit the index of the substring in the dictionary. • Lempel-Ziv-Welsh the dictionary is constructed dynamically.
Compression factor for LZ • N # of characters in the text • n bits/character • L average length of a substring • D # of entries in the dictionary D=2d compression = (N x n) / (N/L x d) = ( n x L) / d
Still image compression • GIF – Graphics Interchange Format • Reduces the number of colors in the image from 224 to 28 • Selects the 256 colors that match best the colors in the picture and builds a local color table • Instead of sending 24- bit pixels we send 8-bit pixels that are indexes in the local color table • JPEG – Joint Photographic Experts Group