Introduction to Streaming

Download Report

Transcript Introduction to Streaming

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
Store and
Distribute
from a
Media
Server
Encode
Using
Media
Encoder
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 of
Raw 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 Island
Unicast 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
Proprietary
Technologies
• 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 crossplatform interoperability
Summary
End of Module