When we watch videos online, for example on YouTube or Netflix, we call it streaming. But how does streaming work, what is buffering and how does it differ from downloading files normally?
Back in the early days of the Internet, streaming things like video was nearly impossible, simply because our Internet connections were so slow. Of course things today have changed drastically, and streaming services like YouTube, NetFlix, Amazon Prime and any number of on-demand catch-up services for TV channels have become a staple part of the Internet.
But what is streaming and how does it work? How does it differ from simply downloading a video as a file and saving it to your computer?
Streaming a video is when you watch a video on the Internet without downloading it as a file to your computer hard drive. However it is important not to be confused by this, because with streaming, you are still downloading the video, just in a different way. Any video that comes from the Internet needs to be downloaded to your computer in some way so your computer can send it to your display so you can watch it.
That can serve as a word of warning to those with data limits on how much they can download each month. Streaming still counts towards those download limits, because the video content still gets downloaded to your computer!
So what’s the different between streaming and traditional downloading?
With streaming, your computer (or rather the software you are using to watch the video) downloads the video to your computer in sequential segments (from the start to the end) allowing you to start watching the video almost straight away.
These video segments are saved in a specific place in your computer memory. From there your computer software calls up those segments once you’re ready to watch them (i.e. reach the respective part of the video.) Once a specific part of the video is both downloaded and watched, it is typically discarded and overwritten with a later part of the video.
The software streaming the video will try and download the video at a faster rate than you are watching it, to prevent interruption. However if your computer cannot save the video segments faster than the time it takes to watch the video, you will inevitably run out of downloaded video to watch, in which case the video will stop playing and “buffer”. This means the software is downloading more video segments to your computer memory to be watched.
Downloading video (or any file) in a traditional manner, by saving it to your computer hard drive, is different. In this case the file is downloaded in a desired location and will not be downloaded in any sequential order, rather just the most efficient order to ensure the quickest download, thus watching the video whilst it downloads is usually out of the question. In this case the video segments are all placed into a single file with an extension (e.g. AVI) and can be played at any time once the download has completed.
So to summarise… (and add a few extra points)
– Streaming downloads a video in order, while traditional downloading does not. This means streaming allows you to watch the video as it downloads.
– Streaming video segments are overwritten or deleted once they’ve been watched. Downloading a video saves all segments into one file which you can watch later on.
– Segments (known as packets) that are damaged “in transit” are ignored with streaming (which can cause brief video interruption or pixelation), but are re-downloaded with traditional downloading.
– Streaming video needs to be from a special web server capable of sending out streaming data.
– Both streaming and traditional downloading counts towards any applicable download limits you may have.