Video streaming: Difference between revisions
(using an external editor) |
|||
Line 83: | Line 83: | ||
* Multicast protocols send only one copy of the media stream over any given network connection (this is more difficult to implement). | * Multicast protocols send only one copy of the media stream over any given network connection (this is more difficult to implement). | ||
* Peer-to-peer solutions will have clients sent data that they alreay have to other clients (that will save a lot of bandwidth but raises other issues). | * Peer-to-peer solutions will have clients sent data that they alreay have to other clients (that will save a lot of bandwidth but raises other issues). | ||
=== Container formats === | |||
A streamed content is delivered with a [[container format]], e.g. QuickTime, Real Audio, AVI, ... | |||
== Links == | == Links == | ||
=== Streaming formats === | === Streaming and container formats === | ||
See [[codec]]s | * See [[codec]]s for compression formats | ||
* See [[multimedia container format]]s | |||
=== Streaming technologies === | === Streaming technologies === | ||
; | ; Streaming media systems | ||
* [http://en.wikipedia.org/wiki/Ampache Ampache]. Free opensource Web-based Audio file manager. | |||
* | |||
* [http://epresence.tv/ ePresence] an open source infrastructure for webcasting audio, video and synchronized presentation media and automated creation of navigable and searchable multimedia archives (special hardware and services are commercial) | * [http://epresence.tv/ ePresence] an open source infrastructure for webcasting audio, video and synchronized presentation media and automated creation of navigable and searchable multimedia archives (special hardware and services are commercial) | ||
* [http://www.apple.com/quicktime/streamingserver/ QuickTime Streaming Server] (QTSS), Supports H.264, MPEG-4 and 3GPP and is included in MacOSX | * [http://www.apple.com/quicktime/streamingserver/ QuickTime Streaming Server] (QTSS), Supports H.264, MPEG-4 and 3GPP and is included in MacOSX | ||
* [http://www.umediaserver.net/ Unreal Media Server] (commercial streaming media platform to be used for web casting, video conferencing, distance learning, video surveillance, internet Radio/TV, ....). A free version is limited to 15 concurrent connections. | |||
; Index pages Streaming media systems | |||
* [http://en.wikipedia.org/wiki/List_of_streaming_media_systems Wikipedia List of streaming media systems] | |||
* [http://en.wikipedia.org/wiki/Streaming_media Wikipedia Streaming media] | |||
=== Other Information === | === Other Information === | ||
Line 115: | Line 118: | ||
[[Category: Technologies]] | [[Category: Technologies]] | ||
[[Category: Multimedia]] |
Revision as of 15:40, 20 March 2007
Definition
- Streaming video is a a video/audio data transfer technique to allow steady and continuous processing by a client.
See also: Videoconferencing
Architecture
Multimedia (or video) streaming is based on the following technology
- In order to play video immediately as it is downloaded from the Internet (as opposed to storing it in a file on the receiving computer first) special servers and clients are needed.
- Clients can be web browser plug-ins or special stand-alone applications.
- A compression method (also called Codec) is used to compress data. In order to decompress a file in real time, a fast computer is needed.
- A special transport protocol is needed for optimal transfer.
Streaming bandwidth and storage
- Storage size
According to Wikipedia, storage size is calculated from streaming bandwidth and length of the media with the following formula:
storage size (in mebibytes) = length (in seconds) · bit rate (in kbit/s) / 8388.608
Real world example:
One hour of video encoded at 300 kbit/s (this is a typical broadband video for 2005 and it's usually encoded in a 320×240 pixels window size) will be:
(3600 s * 300 kbit/s) / 8388.608 = 128.7 MiB of storage
Note: A mebibyte is roughly a megabyte.
Here is an example taken from the ePresence website: “Compressed video is about 200mb per hour per format. If you support all 3 media formats (Windows Media, Real media and QuickTime) you will need about 500-600 mb per hour. Therefore one a 100 GB hard drive can hold approximately 500 hours of video in one format or 150 hours x 3 formats. Please note that these numbers can vary depending on the encoding options.”, retrieved 13:13, 20 March 2007 (MET).
- Bandwidth
Problems arrise when lots of people pull the a file. E.g. if the above stream is viewed by by 1000 people, one would need:
300 kbit/s * 1000 = 300'000 kbit/s = 300 Mbit/s of bandwidth
Video compression (codecs) can make a difference. E.g. the more recent MPEG-4 H.264 standard has the following performance according to Apple (retrieved 13:13, 20 March 2007 (MET)):
Use Scenario | Resolution & Frame Rate | Example Data Rates |
---|---|---|
Mobile Content | 176x144, 10-15 fps | 50-60 Kbps |
Internet/Standard Definition | 640x480, 24 fps | 1-2 Mbps |
High Definition | 1280x720, 24p | 5-6 Mbps |
Full High Definition | 1920x1080, 24p | 7-8 Mbps |
Transport protocols
See the Wikipedia article on Video streaming. It explains several issues:
- Underlying protocol
- Datagram protocols (UDP) based solutions are simpler and more efficient, but there can be data loss.
- Transmission Control Protocol (TCP) based solutions gurantee correct delivery, however this can lead to timeouts and therefore needs clients to have a sufficient buffer (data stored before displayed)
- Streaming for multiple clients
- Multicast protocols send only one copy of the media stream over any given network connection (this is more difficult to implement).
- Peer-to-peer solutions will have clients sent data that they alreay have to other clients (that will save a lot of bandwidth but raises other issues).
Container formats
A streamed content is delivered with a container format, e.g. QuickTime, Real Audio, AVI, ...
Links
Streaming and container formats
- See codecs for compression formats
- See multimedia container formats
Streaming technologies
- Streaming media systems
- Ampache. Free opensource Web-based Audio file manager.
- ePresence an open source infrastructure for webcasting audio, video and synchronized presentation media and automated creation of navigable and searchable multimedia archives (special hardware and services are commercial)
- QuickTime Streaming Server (QTSS), Supports H.264, MPEG-4 and 3GPP and is included in MacOSX
- Unreal Media Server (commercial streaming media platform to be used for web casting, video conferencing, distance learning, video surveillance, internet Radio/TV, ....). A free version is limited to 15 concurrent connections.
- Index pages Streaming media systems
Other Information
- Bytes and Bibytes
- Mebibyte (Wikipedia)
- Binary prefix (Wikipedia) (Wikipedia)
- Binary vs. Decimal Measurements (pcguide.com)