What is Streaming Media and How Does it Work?
(Edited from: “RealPlayer Plus G2 Manual”)
What follows is an explanation of how streaming media woks and how RealPlayer Plus fits into the scheme of it all…
…you first need to understand networking. In its most simple form, networking is one computer exchanging information with another…The first computer addresses a piece of information to another computer and then sends it across the wire…The second computer reads all off the messages coming by and when it sees a message addressed to it, it then takes the time o read the information inside.
…the essentials described above…are the same no matter the size of the network. Every computer has a unique address and all the bits (pieces of information) have an address to which they will eventually be delivered.
[Since pieces of information can vary greatly in size…] If everyone on a network were given exclusive use of the wire until the whole message was sent or received, it wouldn't work. To avoid this problem, messages are broken into lots of little pieces of information that are called packets. On most common networks each packet is the same size and is addressed as described above.
This process may sound like extra work, but it keeps the flow of information smooth and constant with fewer bottlenecks.
Handling the flow of information is a number of specialized traffic cops: routers, brouters, bridges, servers, gateways, etc. Only two need to be understood for this discussion:
Servers are computers that store information. These computers serve the information and programs to other computers on the network to which they're connected. Every network has at least one server and sometimes several servers.
Routers scan the flow of information, read the address on each packet of information and send each packet along the appropriate route to get to its final destination.
Internet
The Internet is not a specific entity. The Internet is a collection of networks that are interconnected. Sometimes this connection is physical, such as with a wire or fiber-optic connection, but sometimes the connection is via satellite or microwave.
While the Internet is a physical apparatus, the WWW (World Wide Web) is more an agreed upon collection of standards about how to address packets and how to create Web pages with Hypertext Mark-up Language.
At a certain point the Internet changed from a text based system to one that contained pictures, sounds, videos and animations. Large animations and video have a unique problem. Both large animations and video are essentially a whole bunch of still pictures that need to be seen at a very quick rate to give the illusion of continuity.
Until recently the best way to ensure that video and large animations worked well over the Internet was to download the whole file and run it from your machine. Sometimes one could wait a very long time for the download to complete and the animation to begin.
Streaming
Enter Streaming Streaming takes large files – whether they are sound, video, animation, or other media types – breaks them up into smaller pieces and sends them to their destination. This is very similar to how computers send information across a network or the Internet in general.
The difference is that RealPlayer is able to read the file stream as it is coming in and begin playing it long before the rest of the file arrives.
RealPlayer combines another technology with streaming to make playback smooth: buffering.
During buffering a whole bunch of packets are collected before playing them. As RealPlayer begins to play the file, it continues to collect packets in reserve. This means that even if there are minor delays in getting the information packets to your computer, your experience of the file will be continuous.
What is a Stream?
Each stream carries specific types of information. When you watch a video the visual part, what you watch, comes to you in one stream while the sound comes in another. RealPlayer synchronizes these two separate streams so that words come out of a newscaster's mouth when it moves or so that music crescendos appropriately when the action requires it.
Additionally, streams can be optimized for different bandwidths. Bandwidth is the amount of information that can pass through a particular point of the wire in a specific amount of time. The higher the bandwidth, the greater the amount of information that can come through. The speed of your modem, and the capabilities of your phone connection determine the bandwidth of the stream that you can receive.
BAUD is the rate of frequency of change in the base sound (the carrier wave). Information is interpreted by how that sound changes. Originally, a single change (say from a high tone to a low tone) was a single bit of information. Because of improvements in compression (essentially a way to tell the screen that – say – the next 60 pixels are all the same) many more than just a single bit of information can be transmitted per change in the carrier frequency. The higher the bandwidth you can receive, the higher the quality of the sound or video will be.
Where do streams come from?
Streams have to be created; an original performance of broadcast was recorded and then turned into a stream.
1. The performance is captured. Recorded or Created. 2. The captured performance is edited 3. The edited performance is encoded into a stream. 4. The encoded file is placed on a RealServer.
This holds true for live broadcasts as well.
Encoding
The process of getting a file ready to be streamed is called encoding. Encoding takes a file and breaks it up into readable packets so it can be sent and read “on the fly”. Every clip, or every stream in a clip, is encoded for a specific bitrate. The higher the resolution (the more information) a stream has, the higher the bandwidth it needs to get the information through to you at a useable speed.
The pipeline is the bandwidth available from your modem. Content providers usually encode their streams to handle a variety of bandwidths. To watch a stream encoded for a 56K modem using a 28.8K modem you would have to buffer a large amount of information.
Codecs
If something is encoded, it must be decoded in order for it to be read. To decode information on your computer you use a codec.
Modems convert digital information from your computer into analog information (sound waves) that can be sent over traditional phone lines. Codecs read digital information and process it into analog information for your player.
How does streaming occur?
Where do these streams come from and how does the player find them?
Remember, the Internet is simply a bunch of connected servers. A clip is any number of streams that make up a presentation. A clip can be made up of more than one stream, such as a video stream and a sound stream. Clips themselves can be a single entity or several clips in a row. Thus “clip” or “multi-clip”.
1. When you click on a link in a Web page to listen to a clip, the web server sends your browser a small file that is associated with that link. 2. Your browser recognizes that the file isn't another page so it checks to see what program can read it. It starts up the player. 3. The file is very small and contains only the name and location of the clip on a RealServer. Your player contacts the RealServer which sends the actual stream and stays in contact with RealServer so you can fast forward or rewind or otherwise work with the clip.
RealServers are similar to web servers but rather than serving pages to browsers, they serve streams to RealPlayers.
RealServers work in concert with web servers to bring multi-media to networked environments (meaning that in addition to the Internet and the Web, such servers are also being used on company networks, etc.), such as the Internet.
RealPlayer and RealServers can communicate with each other so that RealServers can pick the appropriate streams to send.
SureStream [This appears to be a feature for the you pay for it RealPlayer Plus. I include information about it here because it seems to me that it represents an advance that will soon become a standard.]
1. RealPlayer Plus sends the Normal and Maximum bandwidth settings from the Connections tab of your Preferences to the Real Server serving the clip. 2. The RealServer automatically selects the streams encoded at a bitrate closer to your Normal setting without exceeding it. If your actual connection is faster than Normal, the server will upshift to a higher bitrate if it is available.
SureStream becomes especially important when you are viewing some of the newer presentations. When playing a SMIL (Synchronized Multimedia Integration Language) presentation, each of the different streams for each of the components of the presentation has a bitrate associated with it. The total of all of those bitrates is the lowest connection speed you need to have to play the clip without excessive buffering.
The price to watch higher bitrates over slower connections is the time it takes to buffer.
SMIL
Playing multiple clips presented simultaneously as a single presentation is done using SMIL. (Smile!) While HTML (Hyper Text Mark-up Language) controls how Web pages present text and pictures on your computer, SMIL controls how complex media presentations should be streamed to and laid out within your player.
Multicast
In networking, every packet of information is uniquely addressed to a specific computer. But when 25,000 people all tune in to see the same broadcast, they are all watching the same thing, but each must have their own individual stream. Multicast takes one or a limited number of streams and tells every player connected to the event to read the same stream. This keeps the congestion low and the connection more reliable and responsive.
Multicast requires special hardware on the Internet that must be provided by ISPs and other hosting services and is not always available.
|