Amazon Cloud-based Video Transcoding
Cloud computing is a kind of distributed computing, preferable to data-intensive processing, like web-scale problems, large data centers, highly interactive web applications etc. Transcoding is a computationally expensive process with high peak-to-trough ratio (“bursty”). Its CapEx hurts media companies more than ever. The rapidly growing need in transcoding requires high scaling capability in the system. Cloud computing provides a good solution to this specific service requirement. We propose a new framework to build transcoding system on
1. Transcoding videos from one video encoding setting to the one in another setting;
2. Transcoding from one video to a series of synchronized videos which is used in Smooth Streaming;
3. Scalability, which could increase or decrease the computing resource according to LA (Load Average), memory usage and etc;
4. Stability, while some computing nodes do not function well, they can be replaced by some new computational resource;
5. Granularity, big files are split into a number of small fragments that are easier to be allocated to more virtual machines, while a splitting-while-uploading mode is supported and a final stitching process is compulsory;
6. CDN is optional for fast downloading if required.
Note: open sources we use include FFMpeg, PandaStream, Scalr, FlvTool2 and MP4Split etc.
Fig. 1, Amazon Cloud-based Video Transcoding Platform
Fig. 2, Scalr-based Video Transcoding on EC2, S3
Fig. 3, Panda stream based Video Transcoding on EC2, S3
1. Huang Y., Lv X., Chen Y., Yu, H., A Cloud-based Video Transcoding Platform, Huawei Technology (USA). US Patent Pending, 2010. Amazon cloud or Amazon cloud compatible resource, consisting of EC2, EBS, S3 and CloudFront (CDN). There are some functionalities in this framework as follows: