Creating mp4 files with Dolby Atmos content is very helpful for auditioning mixes on consumer equipment but also for facilitating remote mix approvals.   The mp4 export from the Renderer creates an mp4 file with black video.   Dolby has some tools available on Github to allow you to use the mp4 exported from the Renderer to create mp4 with “real” video content.   A guide to using these tools is available here:  

 

https://developerkb.dolby.com/support/solutions/articles/16000100317-can-i-put-my-own-video-into-the-mp4-file-instead-of-black-

 

This can also be done with Amazon Web Services (AWS) MediaConvert in conjunction with S3 storage.   Additionally MediaConvert can output Apple HLS which enables distribution of links to streaming media rather then .mp4 files themselves.

 

What follows is a guide to setting up an AWS account and using MediaConvert with S3 storage.   This is not meant to be a comprehensive guide and specifically does not address any security concerns that could arise for making S3 storage public.   There are additional parameters and video codec choices that might be more applicable to your use case but this should get you up and running.  AWS has extensive online and contextual help that should be referenced for additional guidance.

https://docs.aws.amazon.com/mediaconvert/latest/ug/what-is.html

 

The guide is divided into 7 sections with screen grabs provided for each section.   

 

Sections 1 to 3 covers initial set up and configuring the AWS account, user groups, users, roles, policy and permissions.  This process is laborious and complex.   However, this only needs to be done once.   

 

Creating and running jobs once this is done is relatively straight forward and templates can be created to make this even easier.  Sections 1 to 3 is a step by step guide.  Again, this is minimum required to get AWS MediaConvert and S3 operational.   See AWS online and contextual help for additional guidance.


Clicking on any image to enlarge it.

 

 

 

A screenshot of a computer

Description automatically generated

Index of AWS Related Screen Grabs

 

 

 

 

Section 1 – Creating an AWS Account:

 

Navigate to the AWS home page and signin to an existing account or create an account as pictured below and enter payment information etc:

 

A screenshot of a cell phone

Description automatically generated

1. AWS Home

 

 

A screenshot of a cell phone

Description automatically generated

2. AWS Sign In



A screenshot of a cell phone

Description automatically generated

3. AWS Create Account

 

Section 2 – Configuring AWS IAM Groups, Users, Roles and Policies:

 

After creating an you will receive and email with links to use once these steps are done.   Prior to this log in to your account as Root user with the User/PW created when establishing the account:

 

A screenshot of a social media post

Description automatically generated

4. AWS Root User Login

 

This will drop you into the Management Console view.  The “Services” drop down menu in the top left if the best way to navigate among functions.

 

A screenshot of a social media post

Description automatically generated

5. AWS Management Console

 

The IAM (Identity and Access Management) service is where most of this configuration work will take place.

 

A screenshot of a cell phone

Description automatically generated

6. AWS Services IAM

 

 

 

Once in the IAM view you will see the side bar with the Access Management categories.   While you are currently logged into root with the user/pw set when the account was created,  actual work is performed by a different user with defined credentials.   The identity and access hierarchy required is:

 

 

  • Group(s) which have associated access policies
  • User(s) who are assigned to groups
  • Role(s) associated with the user(s) have specific operational permissions

 

Click on Group in the side bar and “Create New Group.”  Follow steps 7 to 13.

 

A screenshot of a social media post

Description automatically generated

7. AWS Create New Group

 

 

A screenshot of a cell phone

Description automatically generated

8. AWS IAM Group Name

 

 

A screenshot of a social media post

Description automatically generated

9. AWS IAM Group Attach Policy S3

 

 

A screenshot of a social media post

Description automatically generated

10. AWS IAM Group Attach Policy MediaConvert

 

 

A screenshot of a social media post

Description automatically generated

11. AWS IAM Group Attach Policy IAM

 

 

A screenshot of a social media post

Description automatically generated

12. AWS IAM Group Review

 

 

A screenshot of a social media post

Description automatically generated

13. AWS IAM Croup Created

 

Next click on Users in the side bar and “Add New User.”  Follow steps 14 to 19.  Download and save the .csv file from step 19 to a secure location.

 

A screenshot of a social media post

Description automatically generated

14. AWS IAM User

 

 

A screenshot of a social media post

Description automatically generated

15. AWS IAM User Set User Details

 

A screenshot of a social media post

Description automatically generated

16. AWS IAM User Add User to Group

 

 

A screenshot of a cell phone

Description automatically generated

17. AWS IAM Add User Tags optional

 

 

A screenshot of a cell phone

Description automatically generated

18. AWS IAM Add User Review

 

 

A screenshot of a social media post

Description automatically generated

19. AWS IAM Add User IMPORTANT Download csv


 

Next click on Roles in the sidebar and “Create Role.”  Follow steps 21 to 26.  

 

 

A screenshot of a social media post

Description automatically generated

20. AWS IAM Roles

 

 

A screenshot of a cell phone

Description automatically generated

21. AWS IAM Create Role

 

 

 

A screenshot of a computer screen

Description automatically generated

22. AWS IAM Create Role Select User Case  MediaConvert

 

 

A screenshot of a cell phone

Description automatically generated

23. AWS IAM Create Role Attached Permissions Policy

 

 

A screenshot of a social media post

Description automatically generated

24. AWS IAM Create Role Add Tags Optional

 

 

A screenshot of a cell phone

Description automatically generated

25. AWS IAM Create Role Review and Name

 

 

A screenshot of a social media post

Description automatically generated

26. AWS IAM Role Created

 

 

 

Section 3 – Creating and Configuring S3 Buckets and Uploading Media:

 

All the above steps in Section 2 were performed when logged in as Root using the User/PW created with the AWS Account.   Root is used for account info, billing information or to add additional groups, users, and roles if needed.

 

Now you need to click on the link provide in the email received when you created the account and Sign in as IAM user you create above using the credential in the “credentials.csv” you downloaded in step 19.     Going forward all work is performed signed in as IAM User.    

 

 

A screenshot of a cell phone

Description automatically generated

27/28. AWS Sign In as IAM User 

 

Now you will navigate to S3 from Services and create and configure your S3 storage “buckets.”   Follow steps 29 to 39.

 

A screenshot of a computer

Description automatically generated

  29. AWS Services S3

 

 

A screenshot of a cell phone

Description automatically generated

30.  AWS S3

 

 

 

A screenshot of a computer screen

Description automatically generated

31. AWS S3 Create Bucket 1

 

 

A screenshot of a computer

Description automatically generated

32. AWS S3 Create Bucket 2

 

 

A screenshot of a computer

Description automatically generated

33. AWS S3 Create Bucket 3 Set Permissions Turn off Block Public Access

 

 

A screenshot of a computer

Description automatically generated

34. AWS S3 Create Bucket Set Permissions Warning

 

 

A screenshot of a computer

Description automatically generated

35. AWS S3 Create Bucket Review

 

 

A screenshot of a computer screen

Description automatically generated

36. AWS S3 Bucket Created

 

 

A screenshot of a cell phone

Description automatically generated

37. AWS S3 Bucket Overview

 

Create Folders in your Bucket to keep files organized between source and output

 

A screenshot of a social media post

Description automatically generated

38. AWS S3 Bucket Create Folders

 

 

A screenshot of a social media post

Description automatically generated

39. AWS S3 Bucket Folders Created

 


NOTE:  You can create a separate S3 Buckets for your source media and your output repeating the above steps.   If doing so skips steps 33 to 35 re: making the bucket public for your source media.


Now it is time to upload some media

 

A screenshot of a computer screen

Description automatically generated

40. AWS S3 Bucket Ready to Upload to Source 1

 

 

A screenshot of a computer screen

Description automatically generated

41. AWS S3 Bucket Ready to Upload to Source 2

 

Click Upload

 

A screenshot of a cell phone

Description automatically generated

42. AWS S3 Bucket Uploading in Progress

 

 

 

 

While you need to upload media for additional jobs as in steps 40 to 42 you will not have to repeat steps 1 to 39.

 

 

Section 4 – Creating and Running Jobs in MediaConvert:

 

Now you will navigate to S3 from MediaConvet and create and run your jobs.   Inputs will come from your S3 Bucket source folder and be Output to the appropriate output folders.    Follow steps 43 to 58.   Note that some repetitive steps are not pictured.

 

Start by navigating to MediaConvert from Services.

 

 

A screenshot of a cell phone

Description automatically generated

43. AWS Services MediaConvert

 

 

From the main MediaConvert view Click on “Create Job.”

 

 

A screenshot of a cell phone

Description automatically generated

44. AWS Media Convert Main Page

 


 
A screenshot of a cell phone

Description automatically generated

45. AWS MediaConvert Create Job Blank

 

 

Browse to set the job input.   In this case this is a .mov file in the S3 Bucket Source folder

 

 

A screenshot of a social media post

Description automatically generated

46. AWS MediaConvert Create Job Input Browse

 

 

A screenshot of a social media post

Description automatically generated

47. AWS MediaConvert Input 1 Set

 

 

The Audio for this job is not a separate input but rather specified as an external file to Input 1.   In this example it will be the .mp4 file exported from the Renderer that contains Atmos content encoded as Dolby Digital Plus JOC.   If the audio is encoded outside of the mp4 export function of the Renderer (using Dolby Media Producer) the .ec3 file can be used.

 

 

 

 

A screenshot of a cell phone

Description automatically generated

48. AWS MediaConvert job Input 1 Audio Selector External File Set

 

 

After the input is set, the job output needs to be created.   In this example there will be a File Group output and a Apple HLS output.   

 

The File Group output will generate will have two outputs that both generate MP4 files.   The only difference between the two MP4 files will be the datarate of the encoded video.   Two different datarates are used for the MP4 files to facilitate local playback (higher) and remote playback (lower datarate).    

 

 

The Apple HLS output will likewise generate two sets of segmented files at different datarates.   Two different datarates are used to allow for the lower bitrate video to be used in the event of network congestion.

 

To start click on Output groups “Add”

 

 

A screenshot of a cell phone

Description automatically generated

49. AWS MediaConvert Create Job Output Group Add 1

 

 

 

A screenshot of a cell phone

Description automatically generated

50. AWS MediaConvert Create Job Add Output Group File group

 

 

A screenshot of a cell phone

Description automatically generated

51. AWS MediaConvert Create Job Add Output Apple HLS

 

 

 

A screenshot of a computer

Description automatically generated

53. AWS MediaConvert Create Job File Group add 2nd output set Destination and Name Modifiers

 

 

 

A screenshot of a computer

Description automatically generated

54. AWS MediaConvert Create Job Apple HLS add 2nd output set Destination and Name Modifiers

 

A screenshot of a computer

Description automatically generated

55. AWS MediaConvert Create Job File Group Output 1 Video set Container, Video codec, Resolution

 

 

 

A screenshot of a computer

Description automatically generated

56. AWS MediaConvert Create Job File Group Output 1 Video set Quality and Bitrate

 

 

 

A screenshot of a computer

Description automatically generated

57. AWS MediaConvert Create Job File Group Output 1 Audio set Audio codec to Passthrough.

 

 

Repeat 55 to 57 for File Group Output 2 setting bitrate to 8000000.

 

Repeat 55 to 57 for Apple HLS Outputs 1 and 2 setting Output 2 bitrate to 800000.

 

Next go to Job Settings/Setting to set the IAM role

 

 

A screenshot of a computer

Description automatically generated

58. AWS MediaConvert Create Job Job Settting IAM role

 

Scroll down and click “Create”

 

If there are no errors you should see a job summary window.    Refresh this window.   When the job is completed navigate back to S3 via Services.

 

Section 5 – Alternative Encoding Parameters in MediaConvert:

 

 

MediaConvert to passthrough Atmos content as Dolby Digital Plus JOC either in an mp4 container or as a .ec3 file.   MediaConvert can also encode Dolby Digital Plus JOC from 9.1.6 output as a Re-Render.    It can only accept 16 mono .wav files.  To do this 16 Audio Selectors need to be used when specifying the input with each set to External File and using 9.1.6 in the following channel order:  L, R, C, Lfe, Lss, Rss, Lsr, Rsr, Lw, Rw, Ltf, Rtf, Ltm, Rtm, Ltr, Rtr.    Follow steps 59 to 61.

 

 

A screenshot of a computer

Description automatically generated

59.  ALT AWS MediaConvert Create Job Input 16 x Audio Selector External File for 9.1.6 as 16 x mono .wav

 

 

The 16 Audio Selectors are then the input for an Audio Selector Group.

 

 

A screenshot of a cell phone

Description automatically generated

60. ALT AWS MediaConvert Create Job Input Audio Selector Group

 

 

In the Output Audio page the Audio Codec is set as Dolby Digital Plus JOC (Atmos) and the Audio source as Audio Selector Group 1.

 

A screenshot of a computer

Description automatically generated

61.  ALT AWS MediaConvert job File Group Output 1 Audio 1 Audio codec DDPJOC Audio Source Audio Selector Group 1

 

 

MediaConvert can also encode Dolby Vision content from MXF or IMF with interleaved Dolby Vision metadata.  To enable Dolby Vision encoding the Video Codec must be HEVC,  Color metadata must set to Insert,  and the profile set to Main10/Main or higher.   Follow Steps 62 to 64.

 

 

A screenshot of a computer screen

Description automatically generated 

62. ALT AWS MediaConvert Create Job Video 1 Video codec HEVC

 

A screenshot of a computer

Description automatically generated

63 ALT AWS MediaConvert Create Job Video 1 Profile Main10_Main

 

 

A screenshot of a social media post

Description automatically generated

64.  ALT AWS MediaConvert Create Job Video Dolby Vision processing enabled

 

 

Section 6 – Downloading MP4 files and Copyng Links for Streaming:

 

When the job is completed navigate back to S3 via Services.   In the file_output folder of the S3 bucket select either MP4 and download for playback via USB/Blu-Ray Player or Plex Media Server/Player on Apple TV 4k.

 

A screenshot of a social media post

Description automatically generated

65 AWS S3 file_output download

 

 

For the Apple HLS links to work the output files must first be made public.   Then the Object URL can be copied (highlight it and copy).   The “copy path” button will not copy the full path.   Follow steps 66 to 69.

 

A screenshot of a cell phone

Description automatically generated

66. AWS S3 HLS_output

 

A screenshot of a cell phone

Description automatically generated

67. AWS S3 HLS_output Make Public

 

A screenshot of a cell phone

Description automatically generated

68. AWS S3 HLS_output make public 2

 

A screenshot of a social media post

Description automatically generated

69. AWS S3 m3u8 highlight copy Object URL

 

 

 

Section 7 – Playback on AppleTV 4k:

 

The copied object URL can now be tested to stream content from S3 directly.   To do this email the link to an Apple device, click the link, and use AirPlay from the device browser to connect to an AppleTV 4k.   Make sure the Audio Format settings on the AppleTV 4k are Auto, Atmos Available.  Follow steps 70 to 73.

 

 

A screenshot of a cell phone

Description automatically generated

70. iPhone Email w/AWS S3 link

 

A screen shot of a smart phone

Description automatically generated

71. iPhone select AirPlay device

 

 

A screenshot of a cell phone

Description automatically generated

72. iPhone AirPlay connected

 

 

 

A screenshot of a cell phone

Description automatically generated

73. AppleTV 4k Audio Settings