Video streaming refers to when viewers can view a video over the internet without downloading it, through a browser or an application. In much more detail, video streaming involves the delivery of video from one point (recording through a camera or video stored somewhere) to the other point (viewer).
What happens behind the scenes when a video is recorded? How does it reach potential audiences? In this blog, we are going to first provide a simple overview of the video streaming process and then discuss the different types of streaming (live and on-demand). Lastly, the blog will briefly discuss the different technologies used in video streaming and how you can leverage such technologies to stream video to your potential audiences.
The aim of this blog is to help you better understand the video streaming market, and you can then better choose the applications that are best suited for you.
What is the Video Streaming Process?
The video streaming process is not new and has existed as a concept since decades. There has been academic and industrial research on various ways in which video streaming takes place. We have consulted various research documents, and these are included at the end of the blog. However, based on research and our experience in video streaming, the process can be summarized in the following diagram:
The process in its simplest form is as follows:
- Capture: Video is captured from a camera.
- Encoding: Video is then converted from raw formats to compressed digital formats so that they can be easily transmitted over the internet.
- Transmission: Video is delivered from point of capture to the user, over the internet.
- Decoding: Video is uncompressed into playable formats.
- Display: The viewer can then view the video from an application or web player (eg, HTML5 Player).
It is also important to understand how video streaming is different from when you simply download a video. In downloading, the entire video file is downloaded on the user's device for it to play. In video streaming, the video is loaded in chunks rather than the whole.
In video streaming, parts of a video are encoded, transmitted, and decoded. This way, when a user plays a part of a video, the next part of the video goes through the streaming process, just in time for it to be ready when the user finishes watching the first part. This way, the user experiences minimum load time (or buffering), when viewing a video.
What are the Different Types of Video Streaming?
Real-Time Encoding: Real-time encoding refers to video that is recorded from a capturing device (camera) and streamed to a user in real time. In simple terms, this refers to live streaming or video conferencing (online meeting) solutions. Examples of this includes YouTube live and Zoom.
Pre-Encoded: Pre-encoded video streaming is when pre-recorded and stored videos are streamed to a user when demanded. In simple terms, this refers to on-demand video streaming; much like YouTube.
The difference between these two can be summarized by the following diagram.
In pre-encoded video streaming, an additional step is added where videos are stored. These videos are later fetched by a player, as and when needed.
How Can You Use Different Technologies to Improve Video Streaming?
In video streaming, there are certain technologies that help improve the process. These technologies help improve video quality, reduce buffering and help support playback on different devices (tablet, mobile, TV). They also help make your content more secure and compliant with various regulations.
Transcoding is the process where an existing video file is re-encoded into different file formats. In simple terms, this means that different versions of varying quality, are created. A 1080p video will have varying versions created; 144p, 240p, 360p, 480p etc. Different file formats such as mpeg4, wmv, webm etc. are also created.
This helps support varying bandwidth conditions and playback on multiple devices. Users with poor bandwidth can choose to watch a 144p video, while users with devices that support only wmv format, can watch videos in wmv.
Content Delivery Network (CDN)
A content delivery network (CDN) is a server in the user’s location that helps reduce the distance between the original server and the user. In simple terms, rather than serving a video from the original storage every time a user has to watch it, the video is cached (saved) on a local server called CDN, and the video is fetched from this CDN every time a user in that location watches it.
If for instance, a viewer in Japan wants to watch a video stored in USA. Then, instead of streaming the video from USA every time, the video will be cached on a CDN in Japan. The video will then be streamed to each viewer in Japan through this CDN. This helps reduce load time by reducing the distance between the viewer and the stored video.
A CDN is recommended if you want to stream to large audiences that are located in different areas or are far from where the video content is stored.
You can reduce load time at the user’s end by doing the following:
- Using a LAN/Internal Network, where the videos are stored and viewed on the same network. This can be done by large organizations or organizations that want to stream confidential video content internally.
- Using an ExpressRoute, where organizations can store videos on cloud datacenters, but with secure and fast connectivity to these datacenters.
Organizations can now also decide where to store video content, and this is usually done by organizations that have stringent security and compliance requirements. For instance, organizations in the EU have to ensure that video content that contains personal data, needs to be stored within the EU only.
There are solution providers in the video streaming market that allow you to pick and choose where videos are streamed from. Some of these options are:
- Commercial Cloud Data Centers: There are numerous cloud providers that organizations can choose to store data on; AWS, Azure and Google being the leading ones.
- Commercial Cloud Data Centers in Specific Location: Most leading cloud providers provide organizations with the option to choose the location as to where they would want to store their videos.
- Government Cloud Data Centers: AWS and Azure provide organizations in the US with the option to host data in government data centers, that only store data of federal, state, local, and tribal governments, and the operations of these data centers are carried out by screened US citizens.
- Private Data Centers or Local Drives: Organizations can store videos on their premises and employ their own security protocols to limit access.
Using Enterprise Video Content Management Systems for Video Streaming
The various technologies mentioned above, can be used by organizations to improve their video streaming. However, implementing these technologies and managing them can be burdensome and requires IT resources.
Thankfully, due to enterprise video content management systems, organizations can make use of all of these technologies. These systems make use of transcoding and CDNs for improved load times. These systems also offer the flexibility to choose where videos should be stored and the networks over which they should be streamed.
All users need to do is upload videos and view them through YouTube-like portals; both internally or externally. They can live stream, record the stream and make it available as on-demand video.
VIDIZMO offers an enterprise video content management system that enables organizations to set up live/ on-demand video streaming for internal or external use. Organizations can choose the technology to use, according to their security, compliance and business requirements.
Or contact us if you have any questions.
References for Additional Reading
Apostolopoulos, J. G., Tan, W. T., & Wee, S. J. (2002). Video streaming: Concepts, algorithms, and systems. HP Laboratories, report HPL-2002-260.
Wu, D., Hou, Y. T., Zhu, W., Zhang, Y. Q., & Peha, J. M. (2001). Streaming video over the Internet: approaches and directions. IEEE Transactions on circuits and systems for video technology, 11(3), 282-300.