LBSC 690: Week 9 Multimedia Jimmy Lin College of Information Studies University of Maryland Monday, April 2, 2007.

Slides:



Advertisements
Similar presentations
ITIS 1210 Introduction to Web-Based Information Systems Chapter 36 How Music and Audio Work on the Internet.
Advertisements

Data Compression CS 147 Minh Nguyen.
Time-Frequency Analysis Analyzing sounds as a sequence of frames
29.1 Chapter 29 Multimedia Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Motivation Application driven -- VoD, Information on Demand (WWW), education, telemedicine, videoconference, videophone Storage capacity Large capacity.
Comp 1001: IT & Architecture - Joe Carthy 1 Review Floating point numbers are represented in scientific notation In binary: ± m x 2 exp There are different.
Digital Representation of Audio Information Kevin D. Donohue Electrical Engineering University of Kentucky.
Chapter 6 outline r 6.1 Multimedia Networking Applications r 6.2 Streaming stored audio and video m RTSP r 6.3 Real-time, Interactive Multimedia: Internet.
EE442—Multimedia Networking Jane Dong California State University, Los Angeles.
Week 4 LBSC 690 Information Technology Multimedia.
Week 4 LBSC 690 Information Technology Multimedia.
Week 4 LBSC 690 Information Technology Multimedia.
T.Sharon-A.Frank 1 Multimedia Size of Data Frame.
Week 4 LBSC 690 Information Technology Multimedia.
Copyright 2003 Monash University IMS5401 Web-based Information Systems Topic 2: Elements of the Web (d) Digital representation.
LBSC 690 Session #11 Multimedia Jimmy Lin The iSchool University of Maryland Wednesday, November 12, 2008 This work is licensed under a Creative Commons.
TCP/IP Protocol Suite 1 Chapter 25 Upon completion you will be able to: Multimedia Know the characteristics of the 3 types of services Understand the methods.
Image Compression CSC CSC Computing with Images2 How do we use fewer bytes to encode the same or similar information? Reduce redundancy Take.
Representing Images. Goals for Image Representation digitization & resolution digitization & resolution representing color representing color color depth.
Nat 4/5 - Software Design and Development – Low Level Operations - 1 National 4/5 – Computing Science Information Systems Design and Development Media.
Using Multimedia on the Web
RTSP Real Time Streaming Protocol
Media File Formats Jon Ivins, DMU. Text Files n Two types n 1. Plain text (unformatted) u ASCII Character set is most common u 7 bits are used u This.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 14 Multimedia Networking.
Session 4 LIS 7008 Information Technologies Multimedia LSU/SLIS.
CS 1308 Computer Literacy and the Internet. Creating Digital Pictures  A traditional photograph is an analog representation of an image.  Digitizing.
ECE242 L30: Compression ECE 242 Data Structures Lecture 30 Data Compression.
Faculty of Sciences and Social Sciences HOPE Website Development Graphics Stewart Blakeway FML 213
File Formats COM 366 Web Design & Layout. Native file format –Format native to software program –.psd > PhotoShop default Preserves layers –Use “Save.
Computing with Digital Media: A Study of Humans and Technology Mark Guzdial, School of Interactive Computing.
CSCI-235 Micro-Computers in Science Hardware Part II.
Video Basics. Agenda Digital Video Compressing Video Audio Video Encoding in tools.
Computers and Scientific Thinking David Reed, Creighton University Data Representation 1.
 Refers to sampling the gray/color level in the picture at MXN (M number of rows and N number of columns )array of points.  Once points are sampled,
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 14 Introduction to Computer Graphics.
Streaming Stored Audio and Video (1) and Video (1) Advanced Multimedia University of Palestine University of Palestine Eng. Wisam Zaqoot Eng. Wisam Zaqoot.
Multimedia and The Web.
Follow the Data Data (and information) move from place to place in computer systems and networks. As it moves it changes form frequently. This story describes.
1 Lecture 17 – March 21, 2002 Content-delivery services. Multimedia services Reminder  next week individual meetings and project status report are due.
Multimedia, Quality of Service: What is it?
Chapter 2 : Business Information Business Data Communications, 6e.
Chapter 6 outline r 6.1 Multimedia Networking Applications r 6.2 Streaming stored audio and video m RTSP r 6.3 Real-time Multimedia: Internet Phone Case.
Data Compression. Compression? Compression refers to the ways in which the amount of data needed to store an image or other file can be reduced. This.
MULTIMEDIA TECHNOLOGY SMM 3001 MEDIA - VIDEO. In this chapter How digital video differs from conventional analog video How digital video differs from.
1 Image Formats. 2 Color representation An image = a collection of picture elements (pixels) Each pixel has a “color” Different types of pixels Binary.
03/11/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Streaming 1.
Week 7 LBSC 690 Information Technology Multimedia.
Image Compression CSC CSC Computing with Images2 Image Compression Goal: reduce redundancy –Encode the same information using fewer bits.
Multimedia streaming Application Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Querying.
CSC Computing with Images1 File formats for images on the web CSC 1040.
Internet multimedia: simplest approach audio, video not streamed: r no, “pipelining,” long delays until playout! r audio or video stored in file r files.
Marwan Al-Namari 1 Digital Representations. Bits and Bytes Devices can only be in one of two states 0 or 1, yes or no, on or off, … Bit: a unit of data.
Class 9 LBSC 690 Information Technology Multimedia.
Digital Audio III. Sound compression (I) Compression of sound data requires different techniques from those for graphical data Requirements are less stringent.
CSCI-100 Introduction to Computing Hardware Part II.
Chapter 1 Background 1. In this lecture, you will find answers to these questions Computers store and transmit information using digital data. What exactly.
Image File Formats Harrow Computer Club – Wed, 1 Dec 2010 Bob Watson MA CMath MIMA MBCS.
1 Part A Multimedia Production Chapter 2 Multimedia Basics Digitization, Coding-decoding and Compression Information and Communication Technology.
Software Design and Development Storing Data Part 2 Text, sound and video Computing Science.
Component 1.9 Security and Data Management
Video Basics.
Networking Applications
Data Compression.
Networking Applications
Multimedia networking: outline
Overview What is Multimedia? Characteristics of multimedia
Web Design and Development
Follow the Data Data (and information) move from place to place in computer systems and networks. As it moves it changes form frequently. This story.
Multimedia networking: outline
Presentation transcript:

LBSC 690: Week 9 Multimedia Jimmy Lin College of Information Studies University of Maryland Monday, April 2, 2007

The Gullibility of Human Senses Three simple tricks for producing Images Video Audio But how do you move the bits around fast enough? Remove redundancy Throw away stuff that doesn’t matter Synchronizing different media to create multimedia

Seurat, Georges, A Sunday Afternoon on the Island of La Grande Jatte Nothing new…

A Picture…

… close up

Visual Perception Closely spaced dots appear solid But irregularities in diagonal lines can stand out Any color can be produced from just three Red, Blue and Green: “additive” primary colors High frame rates produce apparent motion Smooth motion requires about 24 frames/sec Visual acuity varies markedly across features Discontinuities easily seen, absolutes less crucial

Basic Image Coding An image = a collection of picture elements (pixels) Each pixel has a “color” Different types of pixels Binary (1 bit): black/white Grayscale (8 bits) Color (3 colors, 8 bits each): red, green, blue A 1024x768 image requires 2.4 MB So a picture is worth 400,000 words!

Monitor Characteristics Technology (CRT, flat panel) Size 15, 17, 19, 21 inch, or even bigger! Measured diagonally Resolution Measured in pixels: 640x480, 800x600, 1024x768, 1280x1024, etc. Dot pitch (0.26, 0.28) Refresh rate (60, 72, 80 Hz)

Some Questions How many images can a 64 MB flash card store? But mine holds 120. How? How long will it take to send an image at 64kb/s? But my Web page loads faster than that. How? But in reality images don’t have these problems How do we get around these problems?

Compression Goal: send the same information using fewer bits Originally developed for fax transmission Send high quality documents in short calls Two basic types of data compression: Lossless: can reconstruct exactly Lossy: can’t reconstruct, but looks the same Two basic strategies: Reduce redundancy Throw away stuff that doesn’t matter

Run-Length Encoding Opportunity: Large regions of a single color are common Approach: Record # of consecutive pixels for each color An example with text: Sheep go baaaaaaaaaa and cows go moooooooooo → Sheep go ba and cows go mo

Using Dictionaries Opportunity: Data often has shared substructure, e.g., patterns Approach: Create a dictionary of commonly seen patterns Replace patterns with shorthand code An example with text: The rain in Spain falls mainly in the plain → The r* ^ Sp* falls m*ly ^ the pl* (*=ain,^=in)

Using “Back Pointers” Opportunity: Data often has shared substructure, e.g., patterns Approach: Replace commonly seen patterns with “pointers” to previous location in data stream An example with text: The rain in Spain falls mainly in the plain → The rain Sp falls m ly pl = go back x characters and take y characters

Huffman Coding Opportunity: Common colors are sent more often Approach: Use fewer bits to represent common colors 1Blue75%75x1 = 7575x2 =150 01White20%20x2 = 4020x2 = Red 5% 5x3 = 15 5x2 =

Palette Selection Opportunity: No picture uses all 16 million colors Human eye does not see small differences Approach: Select a palette of 256 colors Indicate which palette entry to use for each pixel Look up each color in the palette What happens if there are more than 256 colors? This is GIF!

Tricking Human Senses Opportunity: Eye sees sharp lines better than subtle shading Eye more sensitive to small changes in brightness than in color Approach: Retain detail only for the most important parts Approximate changes in image with mathematical curves: Discrete Cosine Transform Efficiently captures smooth transitions and shading Not as good at capturing sharp edges This is JPEG!

Mixing and Matching Image encoding formats mix and match techniques described above GIF: palette selection, LZW compression JPEG: takes advantage of human visual system using DCT PNG: replacement for GIF (no patent restrictions) etc.

Variable JPEG Compression 37 kB (20%)4 kB (95%)

Hands-on Exercise Comparing JPEG and GIF formats Load and save two images Fall/Week9-images/image1.jpg Fall/Week9-images/image2.gif Download the two images: Use MS photo editor to convert each to the other format, and compare the quality and the size Vary the compression rate for the JPEG image, and compare the quality

Discussion Point JPEG vs. GIF Which format should I use for images in my Web pages? photos text images drawings

Discussion Point When is Lossless Compression Important? For images? For text? For sound? For video?

Raster vs. Vector Graphics Raster images = bitmaps Actually describe the contents of the image Vector images = composed of mathematical curves Describe how to draw the image What happens when you scale vector images? What happens when you scale raster images?

Example of Vector Images

Basic Video Coding Display a sequence of images Fast enough for smooth motion and no flicker NTSC Video 60 “interlaced” half-frames/sec, 720x486 HDTV 30 “progressive” full-frames/sec, 1280x720

Complexity Example “NTSC” Quality Computer Display 640 X 480 pixel image 3 bytes per pixel (red, green, blue) 30 Frames per Second Bandwidth 26.4 MB/second: corresponds to 180X CD-ROM Exceeds bandwidth of almost all disk drives Storage CD-ROM would hold 25 seconds worth 30 minutes would require 46.3 GB Some form of compression required!

Video Compression Opportunity: One frame looks very much like the next Approach: Record only the pixels that change Standards: MPEG-1: Web video (file download) MPEG-2: HDTV and DVD MPEG-4: Web video (streaming)

MPEG Encoding Frame Types I1I1 B1B1 B2B2 B3B3 P1P1 B4B4 B5B5 B6B6 P2P2 B7B7 B8B8 B9B9 I2I2 IIntraEncode complete image, similar to JPEG PForward PredictedMotion relative to previous I and P’s BBackward PredictedMotion relative to previous & future I’s & P’s

Frame Reconstruction I1I1 P1P1 P2P2 I2I2 updates I 1 +P 1 I 1 +P 1 +P 2 I frames provide complete image P frames provide series of updates to most recent I frame

Frame Reconstruction I1I1 I2I2 I 1 +P 1 I 1 +P 1 +P 2 B1B1 B2B2 B3B3 B4B4 B5B5 B6B6 B7B7 B8B8 B9B9 Interpolations B frames interpolate between frames represented by I’s & P’s

Basic Audio Coding Sample at twice the highest frequency 8 bits or 16 bits per sample Speech (0-4 kHz) requires 8 kB/s Standard telephone channel (8-bit samples) Music (0-22kHz) requires 172 kB/s Standard for CD-quality audio (16 bit samples) Sampler

Speech Compression Opportunity: Human voices vary in predictable ways Approach: Predict what’s next, then send only any corrections Standards: Real audio can code speech in 6.5 kb/sec Demo at

Compact Disk Recording Parameters 44,100 samples per second Sufficient for frequency response of 22KHz Each sample 16 bits 48 dB range Two independent channels: stereo sound Dolby surround-sound uses tricks to pack 5 sound channels + subwoofer effects Bit Rate 44.1K samples/sec x 2 channels x 2 bytes = 172 KB/sec Capacity 74 Minutes maximum playing time 747 MB total

How do MP3s work? Opportunity: The human ear cannot hear all frequencies at once, all the time Approach: Don’t represent things that the human ear cannot hear

Human Hearing Response Experiment: Put a person in a quiet room. Raise level of 1kHz tone until just barely audible. Vary the frequency and plot the results.

Frequency Masking Experiment: Play 1kHz tone (masking tone) at fixed level (60db). Play test tone at a different level and raise level until just distinguishable. Vary the frequency of the test tone and plot the threshold when it becomes audible.

Temporal Masking If we hear a loud sound, then it stops, it takes a while until we can hear a soft tone at about the same frequency.

Putting it all together… Psychoacoustic compression: Eliminate sounds below threshold of hearing Eliminate sounds that are frequency masked Eliminate sounds that are temporally masked Eliminate stereo information for low frequencies

Multimedia: Take One Object stored in a file File transferred as an HTTP object: Received entirely at the client Passed to media player Web Browser Media Player Web Server

Multimedia: Take Two Browser gets metafile over HTTP Launches media player to interpret the metafile Media player contacts streaming server Web Browser Media Player Web Server Streaming Server

Streaming Audio and Video Buffering a portion of audio/video Playing along with receiving Analogy: filling and draining a basin concurrently Media Sever Internet Buffer

constant bit rate video playout at client buffered video constant bit rate video transmission Cumulative data time variable network delay client video reception client playout delay Client Buffering Client-side buffering: playout delay compensate for network-added delay

Multiple Client Rates Q: how to handle different client receive rate capabilities? 28.8 Kbps dialup 100Mbps Ethernet A: server stores, transmits multiple copies of video, encoded at different rates 1.5 Mbps encoding 28.8 Kbps encoding

Discussion Point What are the effects of buffering on… Internet radio? Digital TV “on demand”? Skype? AIM?

Example: Internet Telephony Characteristics: “Live” Alternating talk spurts

IP Phones: Network Issues Network loss: packets lost due to network congestion Delay loss: packets arrives too late for playout at receiver Delays: processing, queueing in network; end-system (sender, receiver) delays Typical maximum tolerable delay: 400 ms Loss tolerance: depending on voice encoding packet loss rates between 1% and 10% can be tolerated

IP Phones: Playout Delay Receiver attempts to playout each chunk exactly q ms after chunk was generated Chunk has time stamp t: play out chunk at t+q Chunk arrives after t+q: data arrives too late for playout, data “lost” Tradeoff for q: Large q: less packet loss Small q: better interactive experience Fancier algorithms: variable playout delay

Hands On: RealPlayer View streaming real video Select “Tools/Playback statistics” Pay attention to bandwidth and lost packets

Simple RealAudio Demo.ram file specifies URL for the RealAudio stream Dimensions of the picture URL for the picture See demo at Fall/SMIL-demo/

Synchronizing Multiple Media Scripting Languages Synchronized Multimedia Integration Language (SMIL) Custom applications Macromedia Flash

SMILe W3C standard Player-specific extensions are common XML, with a structure similar to HTML See demo at Fall/SMIL-demo/ …

Elements in SMIL Window controls (in ) Controlling layout:, Timeline controls (in ) Sequence control:,, Timing control:,, Content types (in ),,,

From Media to Multimedia… Tricking the human senses: Blending pixels into a seamless image Rapidly cycling through images to create motion Sampling analog waveforms to create digital recordings Lots of information required to encode images, movies, and sounds Key is compression! Synchronization of different media sources leads to multimedia applications