If you’re reading this, you must already know how important video is for a modern business. The interactive component of websites is growing, more and more businesses try to enhance their user experience and incorporate not only streaming video into their business models but also AR and VR technologies.
So we’re going to talk about how you can host streaming video on your website without putting in much effort. Actually, when you host an ordinary video and not a live stream, you come up against such problems as compatible file format, media files sizes, the speed etc. How many times have you discovered problems with format, page load time, mobile responsiveness etc.? Well, you might think that hosting streaming video is way more complicated but in fact you don’t have to write any code to do it and it’s easier than you think.
Average time spent per day on digital video by US adult users
To have a live video stream on your website you need to think about 3 things:
- Hardware for broadcasting a live stream;
- Software (a platform) where you’ll host your stream;
- Embedded code to add on your web page to be able to host a stream there;
Here are possible solutions to run a high-quality stream on your website. But remember the implementation of any of them requires a good internet connection. This is the first requirement you need to meet before going any further. Also, if you decide to host on-demand and not a live stream, you’ll be able to reach a better quality of the video and the internet may be a little bit slower in this case.
Using a free platform like Vimeo or Youtube
The most popular platforms for streaming videos are of course Vimeo and YouTube. However, they are not always the right solutions for businesses because of security issues and some specific business requirements. Also, these platforms are better for recorded video, so this is not the best choice for live streaming.
To start a stream on Youtube, you’ll need to take the following steps:
- Log into YouTube using the account that you want to host the stream with.
- Create an event on the .youtube.com/features page.
- Fill in the details on your event and adjust the schedule.
- You can also choose the type of event. It may be Public, Unlisted (accessed if the person has a link) and Private.
- Start Google+ Hangouts and go live.
- Then you can start your broadcast, which is, by the way, restricted to eight hours.
To host this stream on your website, you’ll need to add the embedded code on your website. The steps to embed a video are pretty easy and straightforward. Find the embed code on the host website, copy it, and paste it onto your website. Here you have a step-by-step guide on how to do it on Youtube:
- Go to the YouTube page where your video is posted;
- Click Share and then click Embed to get the HTML code to embed your video.
- Copy the code displayed in the box;
- Paste this code into page on your website where you want to host the video;
- As soon as you update the page, you’ll have your video stream ready.
Using paid streaming host to get custom service
Streaming services like Ustream, YouNow, Livestream and Dacast provide the bandwidth that allows you to share your stream with others and you don’t need to worry about installing an encoder. Their main advantage over solution #1 is wider functionality. They all offer different packages and have different prices for their services. Most of them have free basic packages, but if your business needs more viewer hours and storage, the price will rise depending on the scale of your stream. Obviously, the most popular Ustream will be more expensive than some of his smaller competitors, so you can find good value for money and decide what works for you. Such services will give you a properly formatted live streaming video which you’ll be able to upload to the host’s website. And then you can embed your video stream to your own website by copy-pasting the embedded code on the target page on your website.
Using NGINX + FFMPEG (dev)
In case you want to have all the functionality of Ustream and even more, and at the same time not pay for the service, you may use the combination of NGINX server and FFMPEG library. To implement this solution, your standard website hosting won’t be enough. You’ll also need a virtual server, say, DigitalOcean. In fact, this is the simplest free custom solution. FFMPEG processes your video and NGINX distributes a video to your users. Although this method is free, it needs constant support, and without technical knowledge, you won’t be able to set it up yourself. When do you need such solution?
- Firstly, to be able to use your own player without being dependant on Youtube or Ustream;
- Secondly, you have absolute control over streaming content; you can make open or closed streams and you don’t need to worry about security, which is a hot issue right now;
Flussonic is a totally automated system, you can set up and configure it, and you won’t need support afterwards. So you’ll only need a tech expert to install it, who, by the way, may be provided to you for an additional fee by the Flussonic company. The major disadvantage of this approach is that you need a super powerful server, a $5 virtual server won’t do here. Besides, you need the right specialist for configuration process. Yet, there are many advantages:
- You don’t need support;
- The platform is extremely powerful, so you can have many users and many viewing hours; to achieve the same results with NGINX and FFMPEG, you’ll have to spend a lot of money on implementation and support, even though at first sight it seems like a free solution; in the long run, Flussonic will be much cheaper. In addition, it has its API, the visual component, everything is set and working. This system is, for example, used in many airports as a security system when the security workers watch the stream in real time. So you can imagine how powerful the system is. An undeniable drawback of this solution is that Flussonic is a system ‘in the box’, it’s not a modular, so can’t expand it. You cannot add or delete any functionality, you use it as it is. You buy is, set it up and use it. The only exception here is that you can call customer support service and ask them to add something. In fact, we had such a situation with our client, we addressed Flussonic support and they added the functionality we needed for us and all their other clients.
Wowza is an extremely popular software. They claim that even not technical people can set up and use it. It’s written in Java, a more popular programming language than Erlang, so people often think that it’s easier to find a specialist to work with it. Yet it’s not as simple as it seems, not every Java programmer can deal with this platform as they need to understand how video technology and streaming work. Secondly, Wowza positions itself as a multi-modular system where you can switch off or add some functionality. Yes, there are many plugins you might use but around 50% of them don’t work, some of them may even break the system, so you need to be careful. More importantly, Wowza is not as powerful as two previous solutions primarily because it’s written in the language used for virtually anything in the world, including microwave ovens, phones, washing machines etc. Productivity is the price you have to pay for a universal language. And in video streaming productivity is crucial, that’s why more and more businesses turn to either Nginx-based solution with FFMPEG or Flussonic, which is written in Erlang, to save money.
Building your own custom solution
Big media companies like Youtube or Ustream don’t use any of the aforementioned solutions. They have their own servers and build custom solutions like Wowza or Flussonic themselves. This way they can customize everything to fit their specific business needs, increase productivity. You may ask, why to spend so much time and money when there are some ready-made services. Well, the answer is simple – they can have their own advertising, the platform is branded, so they have full control over their own product. Take incredibly successful Petcube startup, they needed their branded product without Youtube logo anywhere.