Introduction to Streaming © Nanda Ganesan, Ph.D

Preview:

Citation preview

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.

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

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

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

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

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

The Streaming Model (Picture)

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

Media Streaming Stages

• Draw a file analog to digital to streaming format

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

Major Steps in Streaming

• Capture• Covert• Distribute • Play

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

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

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

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

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

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

Some Streaming File Formats

• Audio– Mp3

• Video– MPEG Standards

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

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

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

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.

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

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

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

Unicasting Bandwidth Requirement

• Draw a picture

Multicasting Bandwidth Requirement

• Draw a picture

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.

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

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.

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

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

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.

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

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

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

Companies and Streaming Technologies

Company Streaming Technology

Real Networks Real Audio, Real Video

Apple Computer QuickTime

Macromedia Flash

Microsoft Windows Media

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

Summary

End of Module

Recommended