How to create a video streaming service like Netflix for your business? If you are not a technical person, you may feel puzzled. What technical pitfalls to foresee for each function – to not face unexpected reworks and costs? What technologies to pick for each device? How much may it cost? We’ll help in this article using our 16 years worth of experience in video software development.
100.000 users of Janson Media Inc. can now watch movies and series in the iOS app. Rent a film and watch it in as good quality as your Internet connection allows.
OTT and IPTV are 2 kinds of Internet TV – television delivered to viewers by the Internet Protocol – IP:
- OTT – Over-The-Top or Television over the Internet, uses an open network. It’s the regular Internet you use for emails or website browsing. Examples: Netflix, YouTube, Hulu. Use it on the phone, tablet, smartTV, laptop, or desktop computer – at home or outside, even in another country. When you have the Internet, log in to your account and watch.
- IPTV – Internet Protocol Television, uses a closed network and not the public Internet – you access the TV through a private managed Local Area Network – LAN, or Wide Area Network – WAN. E.g., if an Internet provider makes a net of his own cable – this is the provider’s own private LAN, not accessible from the Internet. Examples: Comstar IPTV, DIRECTV STREAM, Movistar+. Works at your home only, where the cable is.
Check our infographic below to see more on the difference between OTT and IPTV as well as Cable and Satellite TV, or read more in this detailed article.
We at Fora Soft have spent years developing software for both types of Internet TV, including Set-Top-Box firmware, too. And, since OTT and IPTV interfaces extend the concepts used for Satellite and Cable TV receivers, our team is capable of developing frontends for these kinds of televisions, as well.
The most frequent and interesting features of Internet TV applications. At Fora Soft we develop custom software, so if you need something extra – we can plan and implement it.
4 types of content: live, pseudo-live, on schedule, on-demand
How to create a streaming service? Start with the decision of what type of content you’ll have.
It’s a live TV broadcast. You stream on the air – the audience watches right when everything happens.
How to create a live streaming service: the choice of technology is a balance between latency, scalability, and cost.
- WebRTC – for sub-second latency but the audience of fewer than 500 viewers
- HLS – for a big audience of 500 to millions of viewers but with a latency of 2-60 seconds
- WebRTC with Kurento and adjustments – for sub-second latency and a big audience but for a higher cost: read more in our article
Use cases: sports streaming, e.g. a football match, a show with questions from the public in real-time. Live streaming is more expensive than pseudo-live streaming – explained in the Pseudo-live streaming section below. So if you don’t really need real-time, it’s better to use pseudo-live streaming.
On classic TV, they call it live-to-tape: a pre-made recording broadcasted to all users simultaneously. Stream is not real-time – it’s pre-recorded, then transcoded on the server before going to viewers.
You get better video quality for less money when you do not compress in real-time:
- Less money:
The stream has a smaller size because there’s time to compress more effectively. Each of the video resolutions has a higher degree of compression. The smaller size goes through the servers the fewer you pay for that.
- Better picture quality:
What video resolution to show depends on the user’s Internet speed. The same video size has a lower resolution (worse quality) in real-time and higher resolution (better quality) when compressed before sending to users. The same user has the same video size limitation due to his Internet speed. Therefore the user gets a better quality video – with a higher resolution – with pseudo-live streaming.
Use cases: TV shows with no real-time interactions with the audience, e.g. news streaming, The Voice.
Streaming on schedule
Organizing pre-recorded streams into a grid gives a totally TV-like experience: a set of parallel channels with a set of shows going one after another on each channel.
We program the ability for the admin to create the channels and build their schedule with videos. Different versions for different countries and timezones.
Use cases: managing a TV channel with different TV show streaming, e.g. Discovery+.
A collection of movies, series, and other content that you can buy and watch at any moment – even radio. Some of the VOD features:
- Free and paid videos
- Favorite videos
- Recommended videos – set by admins or picked based on the user’s taste
- Filter and sort by genre, popular, newest, highest rating
- Direct search for videos – with a virtual keyboard for SmartTVs to type from a remote
- Rate videos
- Pin code before opening adult videos
- Schedule video release and expiration date – when the video stops being available
Use cases: movie and series streaming and distribution, e.g. Netflix.
Recording in real-time
Click record while watching online to record a show for your home collection. Download the recording to a user device, store it in the application, or in some third-party storage service. Or all of the above.
Recording on schedule
Set a time, and the recording will switch on. For STB-based solutions you need to leave the STB switched on.
Some channels support timeshift – rewind the allowed hours back and watch what you’ve missed.
Video player for video streaming services
Play, pause, stop, rewind, fast-forward buttons.
Upload a subtitles file to videos in formats like SRT, SUB, SSA, AQT, ASS, JSON. These are the most popular ones. If yours is not on the list, we can program support for other formats.
The video you watch now shrinks into a small one in the corner while you look through a TV guide or pick another show. Works in browser: check a PiP demo at the end of our article. Works on mobile devices as well: read more about PiP on Android in this our article.
Payment and monetization in a streaming platform
Monetization by ads
Advertising-based Video-on-Demand – AVOD: viewers watch movies and series interrupted by ads. Example: YouTube free version.
Advertisements on a website page or app page but not in the video: advertising networks like Google Ads integrate and show relevant ads to visitors. Website or app owner gets income from ads views.
Content unlocks for watching when the user subscribes. Subscription payments are automatically charged from his card. Monthly or annual.
Most popular, reliable, and easy for users payment systems: Stripe, PayPal. The owner registers an account with them to receive payments. Users just pay by card the way they are used to.
Buy a movie
Transactional Video-on-Demand – TVOD: pay for each piece of content: for one movie or one season of a show.
A mix of the models above. For example, a free plan with ads, a subscription to unlock some part of content, and some movies and series are paid for.
Enter the code on the TV to unlock access. Convenient for IPTV apps, e.g. for hotels.
Content Delivery Network (CDN)
You can’t beat physics: the longer the distance between your server and your audience, the bigger the delay. Taking this problem on in a straightforward way, by buying or renting hardware all around the world, will cost you a fortune.
CDN solves this problem. CDN is that network of servers in almost every country that someone has already bought and is ready to rent you. Each piece of your content is downloaded on each server – but only when the 1st user requests it. So the very 1st user still has the delay, but all the following do not.
Amazon’s CloudFront and Cloudflare are CDNs that we use most frequently at Fora Soft. Read more on CloudFront and Cloudflare differences in the article.
Adaptive video quality
Users should watch videos in the best quality possible. The limitation is their Internet speed. The program keeps an eye on it and automatically adjusts the video resolution to keep the video from stuttering even on a volatile network.
Converts videos into different formats to deliver to different end-users’ devices.
Converts videos in different resolutions to deliver to users with different Internet speeds.
Decreases video size without a loss in quality by removing doubling data.
Split into chunks
When the videos are delivered chunked, the user never needs to stand by until a full movie is downloaded. The playback starts almost immediately, and keeps on, while the remaining parts are being downloaded in the background. Scrobble through a movie seamlessly – once you move the playhead to the desired location, the stream will resume in a moment, no matter how long was the skipped part.
Digital Right Management (DRM)
– encryption to protect videos from stealing and unauthorized watching. The major studios will only let you sell their content if your platform is well-protected against copyright infringement.
When a user clicks play, the program checks the license server if he has the key. The server gives the decryption key if all is fine, and the player decrypts the video file with it and plays it.
- AES128 – for any browser or device
- ClearKey – for any browser or device except iOS and websites in Safari
- FairPlay for iOS and websites in Safari
- Widewine DRM for Android and websites in Google Chrome
- Full DRM compatibility with different devices and browsers see here
- Web browsers – use without download
- Smartphones and tablets – iOS and Android
- Desktop PCs and laptops
- Smart TVs – Samsung, LG, Android-based STBs, Apple TV
- Virtual reality (VR) headsets
Website is the simplest form of OTT online cinema.
- It opens on laptops and desktop computers.
- If optimized for mobile devices – it looks and works well on smartphones and tablets in a browser. Optimization requires extra time and cost because the UI for each page should be re-thought over for smaller screens.
- Modern smart TVs open websites as well – so you can watch such OTT on a smartTV. iPhone users share screens to modern smart TVs with 3 taps too – so for them, it’s even easier, and the full-screen view looks exactly like any other movie on TV.
So if you want the most cost-effective option, a web Internet TV application is the best.
iOS and Android native apps offer a better user experience. They are one tap away from the users, they don’t have to search for them in a browser. So for established media companies, we develop mobile apps.
How to make a mobile streaming platform? We use native programming languages: Swift for iOS, Kotlin for Android, mainly WebRTC, HLS, and Kurento technologies for video streaming, and FFMPEG and GStreamer for video processing.
Smart TVs have application stores too. It’s easier to launch a TV application like Netflix than search the site and share the phone’s screen. So for better user experience, we develop applications for Smart TVs. And yes, we can build a Netflix clone for your streaming TV service.
When planning your Internet TV app, it’s wise to check the best examples in the industry. The ones with the biggest worldwide user base:
- Netflix – 214 million subscribers in 2021
- Amazon Video – 120 million
- Disney+ – 118 million
- HBO Max
- Apple TV Plus
Check more indicators in this research from Statista.
At Fora Soft, we develop custom software and do not sell ready one. So all the functions listed above are the most useful examples based on our experience. We may develop all of them for you or just a few, or add something else.
That is why we do planning before programming like they do a blueprint before building a house. Analysts draw a wireframe, then estimate your project. Approximate indications:
✅ The simplest VOD OTT app for 1 platform
- 3-5 months
- About $36,000
A fully functioning system with VOD movies, login, simplest payment, rating, search. 1 platform means an iOS app or a web app for example.
✅ The simplest IPTV app for 1 platform
- 4-6 months
- Around $49,000
A fully functioning system with channels like at hotels.
✅ OTT solution similar to Netflix for 1 platform
- From 12 months
- From $115,000
A fully functioning system with different types of VOD content, live shows, login, a hybrid payment system, search, ratings, recommendations, special offers.
Call us to discuss your needs. Or send us your requirements and we’ll provide you with an estimation.