Lesson of the Week: CMAF Proof of Concept

The Common Media Application Format (CMAF) is supposed to be the Holy Grail of streaming; one set of files that you can deliver to multiple output points. How well does it work today? This 3:47 video shows you.

I started by creating CMAF output in AWS Elemental MediaConvert. Why? Because they supply useful templates, have an easy to use UI, and it’s accessible to everyone with an Amazon account. The template created one set of media files and manifests for HLS and DASH, which I tested in:

JWPlayer test player (HLS and DASH)
Bitmovin test player (HLS and DASH)
Chrome (using the Native MPEG-DASH + HLS Player extension) (HLS and DASH)
Microsoft Edge (HLS only)

How did the players do? Watch the video and see. I will say that if you don’t need to protect your videos with DRM, CMAF is looking pretty functional right now.

This video is a lesson in my new course, Streaming Media 101: Technical Onboarding for Streaming Media Professionals. For more information on the course, click here.



About Jan Ozer

Avatar photo
I help streaming and video technology companies solve complex technical and market-facing problems in practical business terms. Engagements range from fixed-scope audits and codec strategy reviews to product testing and technical content that helps customers, prospects, and internal teams connect technical performance to business outcomes. I am a contributing editor to Streaming Media Magazine, writing about codecs and encoding tools. I have written multiple authoritative books on video encoding, including Video Encoding by the Numbers: Eliminate the Guesswork from your Streaming Video (https://amzn.to/3kV6R1j) and Learn to Produce Video with FFmpeg: In Thirty Minutes or Less (https://amzn.to/3ZJih7e). I have multiple courses relating to streaming media production, all available at https://bit.ly/slc_courses.

Check Also

Netflix’s Masterclass: Engineering Live Streaming at Scale

As a technologist and part-time couch potato, I appreciate Netflix on many levels. During the …

Inside AV2: Architecture, Performance, and Adoption Outlook

Three recent Alliance for Open Media presentations on YouTube shed new light on AV2’s performance …

The Future of Multiview: Client, Server, and Build Your Own (BYOMV)

Multiview, or the ability to view multiple live feeds simultaneously, is quickly becoming a must-have …

4 comments

  1. I have a couple of questions.
    1. Do you still recommend CMAF?
    2. Do you use your own presets in MediaConvert or the system-provided templates?
    3. Someone on a small budget, creating a video on-demand website for a personal project, I want to play on 90% of devices (Apple, Android, Web browsers), I want to transcode the fewest files to reduce AWS costs but I also want decent quality overall. Files will be stored in S3 so transcoding into small files is best. Do you have a few gold-standard presets you use? My player of choice is videojs that I am implementing.

    There’s so many variables involved. I’m sure a machine-learning algorithm can figure this out to optimize the many variables. I saw your ladder rung approach but also did not understand it and it seems like you need to produce multiple versions just to find the most optimal (which is up-front cost).

Leave a Reply

Your email address will not be published. Required fields are marked *