Industry Expert Blogs

Prathamesh Ghodke

Designing Cloud based Multimedia Solutions

Prathamesh Ghodke - Softnautics Inc.
Jan 18, 2022

Private, public or hybrid, cloud solutions for any business domain are designed to provide the freedom to grow and security for the organization and customer data. For cloud-based multimedia solutions, there is cloud-based custom transcoder IP that supports automated Video-On-Demand (VOD) pipelines. Cloud services offer solutions that ingest source videos, processes video for playback on a wide range of devices using cloud media converter, and store transcoded media files for on-demand delivery to end-users.

Custom IP integration along with other cloud services showcases better feasibility of using Open-Source codec, to use one's transcoder instead of cloud media-converter for multimedia solutions. In this blog, we will see how an Open-Source codec like AV1 is selected as a custom IP for encoding to integrate over the cloud as a service.

Thus, the video files uploaded on the cloud can be encoded with AV1 codec, without using cloud media-converter service. The solution is automated in such a way that the content provider just needs to upload video on cloud input file storage service and the further encoding happens automatically. It stores the content on cloud storage services after completion and the end-user gets notified about content availability.

Modules' usage

Local Ubuntu Linux machine can be used to upload input video on target AWS S3 bucket and EC2 instance is used to transcode input video into AV1 codec output. Encoding can be done through FFmpeg as well GStreamer, here FFmpeg is used considering the strong support community and extra features available. EC2 cloud instance can be used on any Linux-based system server. Further, the S3 cloud output file link is integrated into AWS Sumerian, to view it using VR set in 3D scene mode.

Following are the prerequisite for environment set-up:

  • Ubuntu local machine
  • Access to below AWS services
    • S3
    • Lambda
    • EC2
    • SNS
    • SES
    • CloudWatch

To overcome the limitations of cloud media converter, one can have own custom IP i.e. Transcoder solution, which can be used along with other cloud services. It will faster the encoding or provide the same speed as of cloud media converter with reduced cost per encoding job as compared to a cloud media converter. It is also easy to integrate any codec and provides a choice of multiple encoders per codec.

Benefits of using AOMedia Video 1 (AV1) codec

  • It is an Open-Source, royalty-free video coding format for video transmissions over the Internet
  • AV1 Quality and Efficiency: Based on measurements with PSNR and VMAF at 720p, AV1 was about 25% more efficient than VP9 (libvpx). Similar conclusions with respect to quality were drawn from a test conducted by Moscow State University researchers, where it was found that VP9 requires 31% and HEVC 22% more bitrate, than AV1 for the same level of quality
  • Comparing AV1 against H.264 (x264) and VP9 (libvpx), Facebook showed about 45-50% bitrate savings using AV1 over H.264 and about 40% over VP9, when using a constant quality encoding mode

Incorporated multimedia Solutions as per market trending features like image overlay, timecode burn-in, bitrate control mode, advertise, rotation, motion image overlay, sub-title, cropping, and more. Such features are required to build solutions like end-to-end pipeline orchestration, live and recorded streaming (VOD), transcoding, cloud services, Content Delivery Network (CDN) integration, and interactive VR scene creation.

Flow Diagram:

In the flow diagram of a Virtual Reality solution, the user uploads the video to the Watch Folder of the bucket in AWS S3. The multipart upload complete event will trigger the lambda function, which starts the EC2 instance. Encoding will then be performed through FFmpeg to encode output with the AV1 codec. If encoding is successful, then only the encoded file will be uploaded to the "output" directory in the AWS S3 bucket. If encoding is failed, then the input media file will be deleted from the "input" directory of AWS S3. The content provider will receive an email notification for failure or success of encoding job, using AWS SNS service. AWS SNS will trigger further AWS Lambda function and Lambda will stop the AWS EC2 instance. Lambda will also check whether the trigger is for output file upload or not, if yes, then it will send an email notification to the end user, using AWS SES service, to notify new content's availability. Further AWS S3 output file link can be integrated into AWS Sumerian, to view it using VR set, in 3D scene mode. Python3 can be used for entire automation scripts.

Thus, using cloud media custom IP-based solution services, one can stream videos to end-users at scale, deliver low-latency content, secure videos from unexpected downloads, remove the complexity of building development steps manually, and construct solutions in own environment for demo purposes. The above setup takes 18 minutes of encoding time with a cloud media converter giving a 4.4 MB output size. While it takes 12 minutes with custom IP giving 2.4 MB output size. Softnautics can help media companies design multimedia solutions across various platforms, merging physical reality and digital information in innovative ways using advanced technologies. Softnautics multimedia experts have experience working on Augmented Reality, Virtual Reality, AV codecs development, image/video analytics, computer vision, image processing, and more.

Read our success stories related to multimedia solutions to know more about our services for the media domain.

Contact us at business@softnautics.com for any queries related to your solution or for consultancy.

Click here to read more ...



Find Top SoC Solutions
for AI, Automotive, IoT, Security, Audio & Video...



I understand
This website uses cookies to store information on your computer/device. By continuing to use our site, you consent to our cookies. Please see our Privacy Policy to learn more about how we use cookies and how to change your settings if you do not want cookies on your computer/device.