Get all products
for one price
Streaming media are multimedia that are constantly received by, and normally presented to, an end-user while being delivered
by a streaming provider (the term "presented" is used in this article in a general sense that includes audio or video playback).
The name refers to the delivery method of the medium rather than to the medium itself. The distinction is usually applied to
media that are distributed over telecommunications networks, as most other delivery systems are either inherently streaming
(e.g., radio, television) or inherently non-streaming (e.g., books, video cassettes, audio CDs). The verb 'to stream' is also
derived from this term, meaning to deliver media in this manner. Internet television is a commonly streamed media.
Attempts to display media on computers date back to the earliest days of computing in the mid-20th century.
However, little progress was made for several decades, primarily due to the high cost and limited capabilities of
From the late 1980s through the 1990s, consumer-grade personal computers became powerful enough to display various
media. The primary technical issues related to streaming were:
having enough CPU power and bus bandwidth to support the required data rates
creating low-latency interrupt paths in the operating system (OS) to prevent buffer underrun.
However, computer networks were still limited, and media was usually delivered over non-streaming channels, such as
by downloading a digital file from a remote web server and then saving it to a local drive on the end user's computer
or storing it as a digital file and playing it back from CD-ROMs.
During the late 1990s and early 2000s, Internet users saw:
greater network bandwidth, especially in the last mile
increased access to networks, especially the Internet
use of standard protocols and formats, such as TCP/IP, HTTP, and HTML
commercialization of the Internet.
These advances in computer networking combined with powerful home computers and modern operating systems made streaming
media practical and affordable for ordinary consumers. Stand-alone Internet radio devices offer listeners a "no-computer"
option for listening to audio streams.
In general, multimedia content has a large volume, so media storage and transmission costs are still significant; to offset
this somewhat, media are generally compressed for both storage and streaming.
Increasing consumer demand for streaming of high definition (HD) content to different devices in the home has led the
industry to develop a number of technologies, such as Wireless HD or ITU-T G.hn, which are optimized for streaming HD
content without forcing the user to install new networking cables.
Increasing consumer demand for live streaming has prompted Youtube to implement their new Live Streaming service to
users. In 2008 Steve Chen reported to Sarah Meyers of ‘Pop17’ that "Live video is just something that we've always wanted
to do, we've never had the resources to do it correctly, but now with Google, we hope to actually do it this year."
A media stream can be streamed either by live or on demand. Live streams are generally provided by a means called true
streaming. True streaming sends the information straight to the computer or device without saving the file to a hard disk.
On Demand streaming is provided by a means called progressive streaming. Progressive streaming saves the file to a hard disk
and then is played from that location. On Demand streams are often saved to hard disks and servers for extended amounts of time;
while the live streams are only available at one time only (e.g. during the Football game).
Streaming bandwidth and storage
Unicast connections require multiple connections from the same streaming server even when it streams the same content
Streaming media storage size (in the common file system measurements mebibytes, megabytes, gigabytes, terabytes, and so on)
is calculated from the streaming bandwidth and length of the media using the following formula (for a single user and file):
storage size (in mebibytes) = length (in seconds) × bit rate (in bit/s) / (8 × 1024 × 1024)
since 1 mebibyte = 8 × 1024×1024 bits.
Real world example:
One hour of video encoded at 300 kbit/s (this is a typical broadband video in 2005 and it is usually encoded in a 320×240 pixels
window size) will be:
(3,600 s × 300,000 bit/s) / (8×1024×1024) give around 128 MiB of storage.
If the file is stored on a server for on-demand streaming and this stream is viewed by 1,000 people at the same time using
a Unicast protocol, the requirement is:
300 kbit/s × 1,000 = 300,000 kbit/s = 300 Mbit/s of bandwidth
This is equivalent to around 135 GB per hour. Of course, using a multicast protocol the server sends out only a single
stream that is common to all users. Hence, such a stream would only use 300 kbit/s of serving bandwidth. See below
for more information on these protocols.
Designing a network protocol to support streaming media raises many issues, such as:
Datagram protocols, such as the User Datagram Protocol (UDP), send the media stream as a series of small packets.
This is simple and efficient; however, there is no mechanism within the protocol to guarantee delivery. It is up to the receiving
application to detect loss or corruption and recover data using error correction techniques. If data is lost, the stream may
suffer a dropout.
The Real-time Streaming Protocol (RTSP), Real-time Transport Protocol (RTP) and the Real-time Transport Control
Protocol (RTCP) were specifically designed to stream media over networks. The latter two are built on top of UDP.
Reliable protocols, such as the Transmission Control Protocol (TCP), guarantee correct delivery of each bit in the media
stream. However, they accomplish this with a system of timeouts and retries, which makes them more complex to implement. It
also means that when there is data loss on the network, the media stream stalls while the protocol handlers detect the loss
and retransmit the missing data. Clients can minimize this effect by buffering data for display. While delay due to buffering
is acceptable in video on demand scenarios, users of interactive applications such as video conferencing will experience a
loss of fidelity if the delay that buffering contributes to exceeds 200 ms.
Unicast protocols send a separate copy of the media stream from the server to each recipient. Unicast is the norm
for most Internet connections, but does not scale well when many users want to view the same program concurrently.
Multicast protocols were developed to reduce the data replication (and consequent server/network loads) that occurs when
many recipients receive unicast content streams independently. These protocols send a single stream from the source to a group
of recipients. Depending on the network infrastructure and type, multicast transmission may or may not be feasible. One potential
disadvantage of multicasting is the loss of video on demand functionality. Continuous streaming of radio or television material
usually precludes the recipient's ability to control playback. However, this problem can be mitigated by elements such as
caching servers, digital set-top boxes, and buffered media players.
IP Multicast provides a means to send a single media stream to a group of recipients on a computer network. A multicast
protocol, usually IGMP, is used to manage delivery of multicast streams to the groups of recipients on a LAN. One of the
challenges in deploying IP multicast is that routers and firewalls between LANs must allow the passage of packets destined
to multicast groups. If the organization that is serving the content has control over the network between server and recipients
(i.e., educational, government, and corporate intranets), then routing protocols such as PIM can be used to deliver stream
content to multiple LAN segments.
Peer-to-peer (P2P) protocols arrange for prerecorded streams to be sent between computers. This prevents the server and
its network connections from becoming a bottleneck. However, it raises technical, performance, quality, and business issues.
The article is based on materials from wikipedia.org.