VES的制作:Netflix视频编码的宇宙微服务
Liwei Guo, Vinicius Carvalho, Anush Moorthy, Aditya Mavlankar, Lishan Zhu
Liwei Guo,Vinicius Carvalho,Anush Moorthy,Aditya Mavlankar,Lishan Zhu
This is the second post in a multi-part series from Netflix. See here for Part 1 which provides an overview of our efforts in rebuilding the Netflix video processing pipeline with microservices. This blog dives into the details of building our Video Encoding Service (VES), and shares our learnings.
这是Netflix的多部分系列文章中的第二篇。请参阅 此处 的第1部分,概述了我们在使用微服务重建Netflix视频处理流水线方面的努力。本博客深入介绍了构建我们的视频编码服务(VES)的细节,并分享了我们的经验。
Cosmos is the next generation media computing platform at Netflix. Combining microservice architecture with asynchronous workflows and serverless functions, Cosmos aims to modernize Netflix’s media processing pipelines with improved flexibility, efficiency, and developer productivity. In the past few years, the video team within Encoding Technologies (ET) has been working on rebuilding the entire video pipeline on Cosmos.
Cosmos是Netflix的下一代媒体计算平台。Cosmos将微服务架构与异步工作流和无服务器函数相结合,旨在通过提高灵活性、效率和开发人员生产力来现代化Netflix的媒体处理流程。在过去几年中,编码技术(ET)团队内的视频团队一直在Cosmos上重建整个视频流水线。
This new pipeline is composed of a number of microservices, each dedicated to a single functionality. One such microservice is Video Encoding Service (VES). Encoding is an essential component of the video pipeline. At a high level, it takes an ingested mezzanine and encodes it into a video stream that is suitable for Netflix streaming or serves some studio/production use case. In the case of Netflix, there are a number of requirements for this service:
这个新的流水线由许多专注于单一功能的微服务组成。其中一个微服务就是视频编码服务(VES)。编码是视频流程的重要组成部分。在高层次上,它将一个摄入的中间产物编码成适合 Netflix 流媒体或某些工作室/制作用例的视频流。对于 Netflix,这项服务有一些要求:
- Given the wide range of devices from mobile phones to browsers to Smart TVs, multiple codec formats, resolutions, and quality levels need to be supported.
- 由于从手机到浏览器到智能电视等各种设备的广泛存在,需要支持多种编解码器格式、分辨率和质量级别。
- Chunked encoding is a must to meet the latency requirements of our business needs, and use cases with different levels of latency sensitivity ...