Blue Sky

some interesting things

UltraVid Review: Guaranteed Traffic-Generating Video Niche Site

Well since we've done this for UltraVid Review (which is a hosted video library solution) from the ground up I feel like we're pretty qualified to talk about what's required here. 

Abstractly here are the things you will need to have a video hosting system do:
- handle video uploads (this isn't easy since there is a 2GB filesize limit in Flash, and a 5GB limit on HTML5)
- handle video encoding (this usually requires building encoding infrastructure with FFMPEG, LAME, and auto-scaling so that as more people host video with you your video encoding solution scales)
- handle video delivery (there are a number of CDN's which specialize in delivering media assets. We use CloudFront, but we've also been looking at EdgeCast and Akamai. Lots of options here depending on what you're willing to pay)
- metadata surrounding the video such as timestamp, title, description, category, tags

To do much of this yourself you're going to need developers with a wide range of expertise, and also a variety of servers to handle the various tasks (ie. load balancers, app servers, database servers, encoding servers and of course a CDN). I'd highly recommend using Amazon S3 for scalable storage since this storage is going to be the backbone of everything you will be selling. 

To build the basics from scratch is a large amount of work (it's taken us 1.5 years to get to where we are at), but the good news is that if you do want to build your own service then there are lots of tools you can use to save time. Here are a few: - If you wanna look into building your own video encoding platform - You can use this API service to handle the automatic encoding of video for your hosting platform. This can save you a tonne of time and money. - The free community version of the above, might be a good starting point - A good starting place for the basics of video hosting CMS that gives you basic tools to create much of what you need. Also it has a plugin that lets you use Panda in conjunction with it. It's community supported and has pretty active forums. - JW Player is a good base player for your video playback - Similar to JW but open source, also quite good.

If you decide not to use a video CMS like QuickStart Profits Review (though you still might want to have a look at our code so you can learn from some of the decisions we've made architecturally) for your hosting then you can always build your own from scratch. I'd recommend using either Rails (if you're a Ruby guy) or Pyramid (if you're a python guy) to get started with a web framework which can provide you with the code basics you'll need to start building your own CMS. 

Hope that provides a good bunch of food for thought.

A good part of the answer to this question depends on where to draw the line in terms of what you buy in from others and what you do yourself.

Like Stuart (although in a different, more niche area), I've built an OVP - online video platform - from the ground up.  In our case however, the OVP part was to support a wider range of services on top, so perhaps we made different calls than a more pure-player OVP such as MediaCore in terms of what needed to be an internally owned core competence.

I'd summarise the bits you need as this:

  • Web app (for the UI and backend elements)
  • Servers (we used AWS EC2 and Rackspace, then went back to AWS as Rackspace was unreliable)
  • Storage (S3 is great, but struggles with large file ingest; we used GlusterFS as the reception, then post to S3)
  • A transcode solution (as Stuart suggests, FFMPEG is the goto for DIY, but we also used Zencoder via its API (which itself uses FFMPEG)
  • A CDN (the value of this should not be underestimated in terms of quality content delivery.  In the Western world, Cloudfront is plenty good enough, and very easy to work with, IMO)
  • Some form of player (you can make your own from OSMF or something; we did, but Flowplayer always gave better performance than anything OSMF)
  • A database to keep track of what's where, including metadata (MySQL or PostgreSQL for example).
  • You would likely want to consider some form of DRM too, but the CDN will proabably handle a fair bit of that for you.

In terms of how long it'd take you to create such a platform, you could get something relatively basic and including a few third party bits (e.g. Zencoder and Flowplayer) together in 2-3 months.  In terms of a finished product, that is a bit open ended.  Brightcove and the like have been around for years and haven't stopped making their platforms better!

The main - highly subjective - area where I'd disagree with Stuart is on using Ruby on Rails as the language and framework.  Having done so it wasn't ideal.  It's not a sexy thing to say, but the next time I'd go back to PHP.  Horses for courses however.

I during my experience with VdoCipher have worked with various media and education enterprises across different continents and helped them stream & host video content online in most secure, smooth & affordable manner.

I have broken down the development into 7 core aspects of which I feel points 3–6 are the key differentiators and technically challenging for any new business.

  1. Website (CMS , Raw coding etc)

While you can choose to code your site from raw using languages like php, asp etc, for a quicker and easier means to quickly launch online , a lot of companies do use CMS like wordpress, joomla etc to build a site. There are many advantages related to direct usable plugins, themes which come with such CMS , mainly wordpress which are explained in second point below. One such article explaining how to build an education video hosting service is mentioned here

2. Galleries, playlists, themes, Membership Management

Membership management, having pretty video themes is a key aspect of overall user management and aesthetics. Again there are some ready to use plugins for membership and themes to manage video based sites. Reviews should be taken to ensure that these plugins and themes are scalable and will not break sometime in future, as you whole site relies on them

3. Video server + CDN

This is the key technical aspect and has to be optimized for smooth streaming globally at various internet speeds. You have to keep in mind the scale you aim to reach and unexpected peaks which you might face. AWS, Azure are major server providers while Cloudfront, Akamai, LimeLight are some really good CDNs. Relying on a great third party tool like Vimeo, Vdocipher can be a good option if you dont want to handle these on own. Here is a brief overlay on the setup by such a company using AWS + Akamai infrastructure

4. Transcoding

Different Device & Internet speeds require different formats and size/parameters for streaming. Bulk upload and transcoding are CPU intensive process and is recommend to leave it to some third party transcoding tools or use the packaged solution as provided by some streaming companies. AWS Transcoder, Zencoder are some other options.

5. Security/DRM

You would want that your video stick to your site and are not sharable or downloadable without your permission , leading to piracy. Encrypted video streaming can help you prevent this, There are video DRMs which can be integrated with your hosting to provide highest possible security of premium content.

6. Player customisation: Color & Controls

You might want to change the colour of your player and skin according to your site looks. also you may like to remove or add some additional controls and call to actions on video. HTML5 , Flash players can be customized for this.


7. Analytics, Usage reports

You need to get data and patterns of video usage , so that you can improve upon your content and also monetize to fullest. Either you can fetch data from video playback and build your own analytics.

A great many people who begin with video start with a stage like YouTube. The significant draw is that it is free. Anybody can make a record and begin in minutes.


However, after some time, all the more perceiving clients may come to seek extra elements and choices that YouTube simply doesn't give. This is particularly the case for business and expert clients. At the point when a lot is on the line, a more entire arrangement might be required.

Proficient video hosting gives an other option to free administrations. Basically, star video facilitating includes paying a little charge (regularly month to month). At this cost, you'll get a scope of advantages based on facilitating and conveying video to your watchers.

The administration gives a system of PC servers which will store your video on their plates. They likewise give a vigorous system association with the goal that anybody can get to the recordings rapidly and effectively. (In any event, any individual who you permit to do as such).

You can do this without anyone else's help in the event that you have a six-figure spending plan for gear and committed work force. If not, you won't have the capacity to convey the speed and components that a devoted video host can give.

The benefits of a dedicated video host are:

  1. Speed
  2. Features
  3. Security
  4. Affordability
  5. Power

Live Video Hosting :

Live video is an effective device that is getting to be something of a social wonder. Applications like Periscope and Facebook Live have made this innovation standard. Proficient facilitating stages frequently offer finish live spilling administrations reasonable for expert utilize. This can incorporate the capacity to:

  • Stream from different cameras
  • Stream in HD resolutions
  • Install live streams on your site or online networking stages
  • Charge for access

Hope it helps :)

Actually Video Hosting service means allocating a separate space in cloud like Bluehost or Bigrock etc..

Your question should have been this way. “How could I build a video on demand service?

Only a VOD website will have libraries of videos and provide it on demand to subscribers or paid users or at time free users, based on the video content.

Netflix and YouTube are classic examples of Video-On-Demand websites. They offer videos for a price.

VOD websites are not based on a specific platforms. They are mostly custom built. Laravel is considered to be the best to build the backend of VOD websites. AngularJS would suffice for frontend.

If you are looking forward to build one, I suggest Contus VPlay. It is a pre-built solution which can be customized to build a VOD website.




Go Back


Blog Search


There are currently no blog comments.