Top Banner
Introduction to Streaming © Nanda Ganesan, Ph.D.
40
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to Streaming © Nanda Ganesan, Ph.D..

Introduction to Streaming

© Nanda Ganesan, Ph.D.

Page 2: Introduction to Streaming © Nanda Ganesan, Ph.D..

What is Streaming?

• Process of delivering audio, video and other multimedia over a network

• The network could be a LAN, Intranet or Internet for example

• Streaming ensures no download wait• No files to take up space on your hard

disk.

Page 3: Introduction to Streaming © Nanda Ganesan, Ph.D..

What Types of Data Can be Streamed?

• Sound – “Audio Streaming”• Pictures – “Video Streaming”• Text -- Words and sentences• Mixtures – “Media Streaming”

– The term “media” is used to refer to a mix of these various types of data

– “Rich media” means video plus audio

Page 4: Introduction to Streaming © Nanda Ganesan, Ph.D..

Use of Streaming Media

• Streaming video can be used for live or recorded events

• Provides truly interactive, on-demand audio and video

• No need for time taking downloads• Corporate communications and

training

Page 5: Introduction to Streaming © Nanda Ganesan, Ph.D..

Issues Related to Streaming

• The Internet was not designed for real time streaming.

• Limited bandwidth, latency, noise, & packet loss

• Retransmission and out of order packet delivery are of concern in real-time delivery of data

• Note: Internet is a packet switching network and most computer networks carry information based on packet transmission as opposed to circuit switching

Page 6: Introduction to Streaming © Nanda Ganesan, Ph.D..

More Issues Related to Streaming

• Live or on-demand streaming is a time critical application

• Sensitive to the variation in delay inherent in a shared access network like the Internet

• Majority of end users access the Internet over very narrowband dial up links

Page 7: Introduction to Streaming © Nanda Ganesan, Ph.D..

The ‘Streaming’ Solution

• Streaming uses ‘Buffering’• Buffering irons out the natural

traffic variations inherent on the Internet.

• Streamed broadcast starts to play at the same time as more content is being downloaded

• Media file can be of any length and can run over Internet bandwidths

Page 8: Introduction to Streaming © Nanda Ganesan, Ph.D..

The Streaming Model (Picture)

• The components of an end to end streaming system are:– Client (Media Player)– Streaming Server– Streaming Media Production Tools

Page 9: Introduction to Streaming © Nanda Ganesan, Ph.D..

Media Streaming Stages

• Draw a file analog to digital to streaming format

Page 10: Introduction to Streaming © Nanda Ganesan, Ph.D..

Streaming Process Overview

• Source data is obtained from live presentations or prerecorded media

• Source data files are sent to a “streaming server”, compressed, encoded, and readied for streaming over the Internet to the user

• Streamed files received by user computers are decompressed and converted to digital media and played at the client using a client player

Page 11: Introduction to Streaming © Nanda Ganesan, Ph.D..

Major Steps in Streaming

• Capture• Covert• Distribute • Play

Page 12: Introduction to Streaming © Nanda Ganesan, Ph.D..

An Example of Capturing and Converting

Video Source(Digital

Camcorder)

Capture Through

IEEE 1384 Port

Encode UsingMedia

Encoder

Store and Distribute

from a Media Server

Page 13: Introduction to Streaming © Nanda Ganesan, Ph.D..

Conversion to Streaming Format

• Compression Decompression (CODEC) is used in the process of converting the file from a raw format to streaming format

• At the same time, the compressed files are designed to withstand varying bandwidth of an Internet connection– It is important to ensure that the file is

played as a continuous stream

Page 14: Introduction to Streaming © Nanda Ganesan, Ph.D..

What is a ”codec”?

A codec is any technology to compress and decompress data

• Codecs can be implemented in software or hardware or a combination of both

• Some popular codecs for computer video include MPEG, Indeo, & Cinepak

• Codec can also mean a coder/decoder device for converting binary digital signals to analog signals for transmission over a wire

Page 15: Introduction to Streaming © Nanda Ganesan, Ph.D..

Lossy Compression ofRaw Media Files

• “Raw media” files, a user’s captured or digitized audio and video files, normally are very large & need to be compressed for transport across various bandwidths

• The type of compression used for creating streaming media files is “lossy compression”

• Lossy compression techniques try to eliminate redundant or unnecessary information

Page 16: Introduction to Streaming © Nanda Ganesan, Ph.D..

Lossy CODECs

• Most streaming compression technologies, in general, use a lossy technique

• There are new lossless compression techniques that are now being introduced

• Windows Media Audio

Page 17: Introduction to Streaming © Nanda Ganesan, Ph.D..

Streaming and Compression

• A compressed media file may not necessarily be a streaming file

• MPEG files are not meant for streaming

• WMA files are specifically produced for streaming

• However, both files are compressed files

Page 18: Introduction to Streaming © Nanda Ganesan, Ph.D..

Some Streaming File Formats

• Audio– Mp3

• Video– MPEG Standards

Page 19: Introduction to Streaming © Nanda Ganesan, Ph.D..

Some Popular Compressed Video File Formats

• An evolving set of standards developed by MPEG for video and audio compression and multimedia delivery

• Current MPEG standards include:– MPEG-1– MPEG-2– MPEG-4– MPEG-7– MPEG-21

Page 20: Introduction to Streaming © Nanda Ganesan, Ph.D..

Distribution of Streamed Media

• Distribution point would be a server– Media server (real-time streaming)– Web server (progressive streaming)

• Receiving point would be a client– A client player such as Windows

Media Player is needed to play the media file

Page 21: Introduction to Streaming © Nanda Ganesan, Ph.D..

Real-Time Streaming

• Media can be streamed in real-time from a streaming or media server– Server based streaming (Windows Media

Server)

• Alternatively, media can be progressively downloaded and played from, for example, a web server (IIS) – Client based streaming – Media files are downloaded and temporarily

stored on the client and played

Page 22: Introduction to Streaming © Nanda Ganesan, Ph.D..

Three Methods of Distributing Media Streams

• Unicast– A separate copy of the data is sent from the

source to each client that requests it.

• Broadcast– A single copy of the data is sent to all

clients on the network

• Multicast– sends a single copy of the data to those

clients who request it.

Page 23: Introduction to Streaming © Nanda Ganesan, Ph.D..

Unicasting

• The bulk of the traffic on today's networks is unicast

• A separate copy of the data is sent from the source to each client that requests it

• Unicast wastes bandwidth by sending multiple copies of the data

Page 24: Introduction to Streaming © Nanda Ganesan, Ph.D..

Broadcasting

• A single copy of the data is sent to all clients on the network

• Broadcast wastes bandwidth by sending the data to the whole network whether or not the data is wanted

• Broadcast slows client machine - each client must process the broadcast data whether or not the broadcast is of interest

Page 25: Introduction to Streaming © Nanda Ganesan, Ph.D..

Multicasting

• Multicasting sends a single copy of the data to those clients who request it

• Multicasting takes the strengths of unicast and broadcast and avoids their weaknesses

Page 26: Introduction to Streaming © Nanda Ganesan, Ph.D..

Unicasting Bandwidth Requirement

• Draw a picture

Page 27: Introduction to Streaming © Nanda Ganesan, Ph.D..

Multicasting Bandwidth Requirement

• Draw a picture

Page 28: Introduction to Streaming © Nanda Ganesan, Ph.D..

Network Load Comparison for Unicasting and Multicasting

Comparison of network load per client when unicasting an 8-Kbps

PCM audio stream and multicasting the stream.

Page 29: Introduction to Streaming © Nanda Ganesan, Ph.D..

Future of Multicasting

• Multicasting is bound to grow fast as the Internet is increasingly used for streaming media

• There is already a backbone within the Internet to facilitate multicasting

• It is known as the MBONE

Page 30: Introduction to Streaming © Nanda Ganesan, Ph.D..

The MBONE

• Internet Multicast Backbone• Most widely known and used multicast

enabled network• A virtual network consisting of those

portions of the Internet, sometimes called multicast islands, on which multicasting has been enabled

• MBone has been in place since 1992 and has grown to more than 2000 subnets.

Page 31: Introduction to Streaming © Nanda Ganesan, Ph.D..

How Multicasting Works

• Multicasting follows a push model of communications

• The user is simply instructing the computer's network card to listen to a particular IP address for the multicast.

• Multicast addresses are Class D IP addresses ranging from 224.0.0.0 to 239.255.255.255

Page 32: Introduction to Streaming © Nanda Ganesan, Ph.D..

Multicasting on Islands and Tunnels

Multicast IslandUnicast Tunnel

Router

Client will request the router to forward all traffic on a given multicast IP address that would be a Class D address

Page 33: Introduction to Streaming © Nanda Ganesan, Ph.D..

Multicasting Requirements

• Clients must have a way to learn when a multicast of interest is available.

• Clients must have a way to signal that they want to receive the multicast.

• The network must have a way to efficiently route data to those clients who want to receive it.

Page 34: Introduction to Streaming © Nanda Ganesan, Ph.D..

Announcing Multicast

• Multicasts are announced in advance so that clients know when a multicast is available

• On the MBone, multicasts are typically announced using the Session Description Protocol (SDP)

• The announcement information is multicast to a well-known IP address and port where clients running the session directory tool receive this information

Page 35: Introduction to Streaming © Nanda Ganesan, Ph.D..

Joining Multicast Groups

• To signal that they want to receive a multicast, clients join the group to which the multicast is directed.

• The Internet Group Management Protocol (IGMP) handles this task

• Groups are dynamic: clients can join or leave at any time

Page 36: Introduction to Streaming © Nanda Ganesan, Ph.D..

Commercial Streaming Implementations

• Many companies provide streaming hardware and software

• Technologies may incorporate MPEG or proprietary file handling standards

• A new file extension is used for each separately developed & used standard

• Four major companies and technologies currently dominate the field

Page 37: Introduction to Streaming © Nanda Ganesan, Ph.D..

Companies and Streaming Technologies

Company Streaming Technology

Real Networks Real Audio, Real Video

Apple Computer QuickTime

Macromedia Flash

Microsoft Windows Media

Page 38: Introduction to Streaming © Nanda Ganesan, Ph.D..

ProprietaryTechnologies

• Each major streaming technology has its own proprietary server media file encoding format

• The various technologies do not generally support each other’s formats

• Standardization organizations are attempting to create specs for cross-platform interoperability

Page 39: Introduction to Streaming © Nanda Ganesan, Ph.D..

Summary

Page 40: Introduction to Streaming © Nanda Ganesan, Ph.D..

End of Module