Obbod TV

Obbod TV

How we developed a new Netflix-style Internet tv

Big things start with a small question

At the end of 2015 we were asked if we would like to develop a website that is a bit special, as part of a new project.

After familiarizing ourselves with the site we understood we would have to develop a streaming service similar to Netflix. It should do everything Netflix can do, and be multilingual and operational by the end of 2016.

Courtship

Most people in COEX love movies, and all of us know Netflix and other streaming services. We understand​​ how many years of development by multiple specialist are behind these services. We understand the online streaming market is competitive and the risk it is to introduce a new streaming service in the Czech Republic or the CEE region.

Before we even got to the technical feasibility analysis, we had to know how realistically the client was considering the project and whether he was aware of the complexity and scope of the whole solution and the subsequent costs of operation and maintenance.

Think global, begin local. And stay agile.

After the introductory meetings, it was clear that Kamil Ouška’s project had real shape. In addition to classic and mainstream production, this new Internet TV should attract viewers with less known movies, as well as its own production aimed at local audiences. And with proven success in the Czech Republic, it would expand to neighboring countries and the East. While it seemed overambitious at times, we were getting more and more interested, and we agreed on first steps to start with the client:

  • Create a feasibility study and verify the technological possibilities
  • By the summer of 2016, run a prototype to verify the technology and audience interest

"Having the opportunity to develop an online streaming platform is a privilege and a joy. However, any project of this size needs a good amount of planning and specification."

Frantisek Salava, Project Manager

Analysis and feasibility studies

Prior to the technology proposal, there was also a series of debates over the validity of the business plan and the way the product will be launched. This is not our core service, but before starting a project of this level it’s crucial for all parties to know that it makes sense. Primarily we are software developers, not business consultants. However, we have a vast amount of experience with projects in a range of sizes. This experience puts us in a unique position to partner up with our clients as advisors, not just delivering a software product. For us it’s great to share what we know. For our clients it means they know we do not do any work they want, if in in the end it harms them and their project.

Workshops and concepting

The first workshops with the client were spent discussing feasibility. We analyzed Netflix, Hulu, Amazon and Czech competitors such as O2, Voyo, Alza media and Stream.cz to track their market developments, to define what they’re doing well and what could be improved. In addition to purely online streaming services, we were also interested in classic linear TV players such as Prima, HBO, UPC and Česká televize. We analyzed statistics of viewer ratings of individual services, price levels and functions. We also considered the implementation of a complete project in an existing type of service like Vimeo on Demand.

In spring 2016 we started our feasibility study. The technical analysis was written with a focus on current technological possibilities and integrated services of global companies. We also organized several meetings with online streaming services and verified our vision with several affiliated companies and online streaming consultants. Gradually it became clear where the road would go, and in May 2016 the analysis was complete, including wireframes, design concepts and a functional prototype using Axure.

MVP & VYŠEHRAD PRODUCTION

At the same time, Obbod began working on the pilot of their own comedy series set in the soccer community called Vyšehrad, which later became a kind of phenomenon in the Czech Republic.

After one month we launched a one-page prototype in the form of a microsite with a trailer for Vyšehrad. At the same time, the client tested ad campaigns to acquire users and build interest in the series.

Identifying crucial parts and finding key partners & services

The analysis confirmed what we guessed from the beginning - there was no point in reinventing the wheel and wasting time developing basic elements of the infrastructure. In particular:

  • Encoding engine
  • Storage
  • Player

For these parts of the system we used reliable suppliers, and our own development efforts could be routed to the front end, back office and UX, as well as the interconnection of various APIs. The result was we became systems integrators, taking the best parts from various suppliers and adding our own expertise to build a roof over the whole project.

We identified several suppliers for each of the planned outsourced parts of the system. We considered Czech as well as foreign companies like Amazon (USA), Irdeto (USA), Axinom (DE), České radiokomunikace (CZ), Etnetera (CZ).

We discussed collaboration with some of them, knowing our choices now would affect us greatly in the future. After evaluation our options and pros and cons, we eventually decided to work with Bitmovin, Google storage and EZ DRM.

What is better than
reinventing the
wheel?
Integr ation!

The first phase completed, let's tender

By summer 2016 we handed in our analysis and our view of the whole project, including detailed estimates and time frames. Openness and cooperation with win-win solutions are key values for us and we sent our results to Obbod with this in mind, giving them time to consider our proposal and get back to us after their tender closed.

Several other suppliers were considered, but in the end, our proposal made the cut and we set clear conditions to make a fair exit for both sides during the realization of the startup project.

Django + Angular 2

It was July 2016 and the uncompromising goal was to have the official launch of the project before Christmas. We had five months for development and the test would have to take place on the fly during the test run. The development of the entire application itself was planned for a 6-member team, divided into several phases and based on a proven backend - RESTful API - Frontend technology base. Of course, on our favorite Django + Angular frameworks.

As part of the agile development, we started to work immediately on parts that were clear - back office, translation management, management of users and subscriptions. At the same time we worked on sketching and finishing the design, with a strong focus on mobile devices and a desire to keep everything as simple as possible.

DRM and key licensing

To complicate matters, companies like Google, Apple, Microsoft and Adobe have their own DRMs they prefer on their devices. For each device or browser you need to implement different types of decoding.

Streaming & DRM

Our early analysis showed that Digital Rights Management is crucial in negotiations with major players in the film market. Large providers such as Warner Bros, Paramount Pictures, Sony, and others demand implementation of DRM technology into any service using their content.

Getting to the finish line

In the fall of 2016 we finished the main parts of the system and started work on integrating third-party services. For storage, we finally chose scalable storage from Google Cloud Storage including CDN. It was not the cheapest alternative, but we bet on it because of its fast implementation capabilities, out-of-the-box scalability and extensive high-quality documentation. And finally because our chosen encoding provider hosted its services on Google infrastructure, which from the outset accelerated the transfer of data from encoding to storage.

Multiple audiotracks, subtitles & more Czech specifics

For our own video processing we used Bitmovin. They are fully focused on video encoding and streaming services, have a modern infrastructure and a highly competent team.

The biggest problems occurred (not surprisingly) with the debugging of connections to the DRM providers, as some of the videos had issues on certain devices.

The challenge was also to work with multiple audio tracks included in videos and subtitles. Bitmovin encoding and player supports both functions, but thanks to some specialties in Czech diacritics and the incompatibility of the Bitmovin API, we had work to do here.

To run the project we focused on the major systems, and it was clear right from the start that online streaming in today's form cannot be made compatible at all times on all platforms. For example, DRM is not supported in most Windows XP configurations, and thanks to Apple's policy, you cannot play encrypted movies in the browser on iOS devices. To work around these issues, it was necessary to develop a native mobile application that was scheduled for the spring of 2017.

Catching the Christmas season

The private launch and first test of the project was scheduled for early December, with the official launch scheduled for December 17, 2016. We were two days late as we had to solve few last-minute problems with our subcontractors (you might guess where the biggest issues were - licensing keys and DRM authentication with Apple). However, on December 19 the project was live, and after thousands of hours of work, we were nervously anticipating both the public's response and the verification of the technological proposal itself.

Timing for Christmas was a good move by the Obbod team, with several thousand people registering early on the first day for the short trial version. At the same time, other episodes of the Vyšehrad series were aired which gained great popularity among (not only) the football audience. By the beginning of January at the launch of the series, obbod.com peaked at around 170,000 users per day.

Three weeks
after launch
170.000
visits a day

Hundreds of subscribers in the first week

Vyšehrad's popularity has brought fame to Obbod too

Performance & load balancing

Even though the servers were initially designed to accommodate tens of thousands of parallel users, we had to deal with service failures during the peaks, and had to strengthen the infrastructure in the coming weeks to avoid downtime with sudden surges in traffic. This was done by optimization according to data from the first few weeks of real use of the application itself, where we optimized response times and loading key pages.

Ready for the

heavy traffic

The next step was to strengthen the performance of servers and support databases. In the next phase of the project, we prepared an extension of the load balancing architecture and, together with the client, we prepared a strategy to save costs in calmer times and fast scale performance in peak times.

After six months the project was among the established online streaming services on the Czech market and has a growing number of monthly subscribers. Obbod recently launched the follow-up called Lajna, this time set in the world of ice hockey.

At the same time the project is expanding towards users' own wishes - we introduced one-time payment options via text message for viewing content, and from spring the content could be viewed on iOS devices through a native application. Several other improvements are being prepared and implemented.

"COEX did a great job right from the beginning. I appreciate the choice of technology, the realization, launch and gradual improvement of the project and I especially appreciate the proactive approach."

Kamil Ouška, Founder of Obbod

Try the player

Bitmovin HTML5 player with multiple audiotracks and subtitles

Highlights and interesting numbers

Here are some interesting figures and numbers from the first half of year of pilot project

1M
Views of Vyšehrad
in 2 weeks
5K
Playbacks
a day
400K
Monthly
users