How DeNA developed a live streaming app in just 2 months with Live Stream API
Kenta Sugahara
Director, Solution Business Department, DeNa
Naoto Ikeno
Engineer, Solution Business Department, DeNa
As a provider of several mobile portal and e-commerce platforms in Japan, DeNA Co., Ltd (DeNA) has continuously sought to expand its portfolio of services to create value for society and innovation in the entertainment business by leveraging internet and AI technologies. That is why it launched Play-by-Play LIVE, an application that allows professional or amateur play-by-play commentators to stream live sporting events and engage with the audience as they do so. This is done by setting up multiple commentary channels for every match, so fans can engage with their favourite sports teams and commentators in real-time.
There are as many ways to enjoy sports as there are commentators. The concept of Play-by-Play LIVE is for the audience to enjoy sports in a new way that is not limited to just watching live sports streaming. This was done through the effort of our two business areas, from sports business and live streaming business.
One of the biggest hurdles DeNA faced was the short development time frame. With only two months from the start of the project to producing a proof of concept, building a video streaming server from scratch was a sizable challenge. The company decided to turn to Live Stream API by Google Cloud to deploy the application, entrusting the fully managed service to build the infrastructure so that we can focus more on the development of user experience. We chose Live Stream API for its ease of usability, cost and operations.
Putting the app together with Google Cloud
One of the company’s first steps in development was to use Flutter, an open-source software development kit (SDK) by Google, to create the application’s user interface, while the backend system was built with Google Cloud and Firebase. We also built an authentication feature that is aligned with our own user identification system, BAYSTARS ID, that is required to be able to use the service provided by Yokohama DeNA Baystars, a platform for the fans of the baseball team.
Here is how Play-by-Play LIVE was developed with Google Cloud:
Live streams of baseball games are received via Real Time Messaging Protocol (RTMP), and converted to HTTP Live Streaming (HLS) with Live Stream API. Information about the game, such as scores, pitching charts, and the name of players will be overlaid on screen, with this functionality being built on Flutter and Firebase.
The progress of live matches are updated in real time on the Cloud Firestore database, as a third party vendor is asked to input these information on a management console that’s developed with Firebase.
The information will then be displayed as a subtitle or caption. To fully utilize the application, users will need to log in with a guest or Baystars account.
Videos of these live sporting events are captured by OBS Studio, an open source software for video recording and live streaming, then combined with the footage of commentators on OBS Studio.The final videos are then exported to the Live Stream API via RTMP, converted to HLS and delivered to the audience on their mobile app.
Additional features such as quizzes and questions are built with Firestore. For functions that cannot be processed through Firestore and mobile apps, Cloud Functions is used to process them server side, through a serverless environment.
Flutter is also used to develop a console application for monitoring the comment and quiz functions, with this hosted on Firebase as a web application.
Broadcasting major sporting events confidently
With Google Cloud, DeNA was able to deliver a proof of concept for Play-by-Play LIVE within the short timeline of two months. On top of managing the hefty workload of live video streaming with Google Cloud, these tools have provided its team the means to build and deploy simple functions swiftly, such as with open source function-as-a-service frameworks in Cloud Functions. This has helped DeNA eliminate the complexity of constructing the non-essential components of the application’s backend system, while accelerating development.
Another benefit of using Google Cloud was to leverage the function of Firestore. When there was a specification change in the midst of development, we were able to reduce the amount of workload for the change since Firestore’s structure was simple.
Play-by-Play LIVE was eventually used to broadcast the 3x3 football championship that was held on March 26, 2023. The braodcast’s success has given DeNA the confidence to livestream other major sporting events in Japan through the application in the future.