MEDIA2CLOUD IMPLEMENTATION GUIDE - AWS DOCUMENTATION
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
Media2Cloud Implementation Guide Media2Cloud: Implementation Guide Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.
Media2Cloud Implementation Guide Table of Contents Welcome ........................................................................................................................................... 1 Cost .................................................................................................................................................. 2 Example monthly cost ................................................................................................................ 2 Architecture overview ......................................................................................................................... 5 Solution components .......................................................................................................................... 7 Web interface ............................................................................................................................ 7 Ingestion workflow ..................................................................................................................... 8 Analysis workflow ...................................................................................................................... 9 Error handling .......................................................................................................................... 10 Proxy files ............................................................................................................................... 11 Amazon DynamoDB .................................................................................................................. 11 Amazon OpenSearch Service ..................................................................................................... 11 Amazon SNS ............................................................................................................................ 11 Security ........................................................................................................................................... 12 Server-side encryption .............................................................................................................. 12 Amazon CloudFront .................................................................................................................. 12 Amazon OpenSearch Service ..................................................................................................... 12 Deployment considerations ................................................................................................................ 13 Limitations .............................................................................................................................. 13 Search engine sizing ................................................................................................................. 13 Integrated partners .................................................................................................................. 14 Cloudfirst.io ..................................................................................................................... 14 Levels Beyond .................................................................................................................. 14 Nomad CMS .................................................................................................................... 14 EditShare ......................................................................................................................... 15 eMAM ............................................................................................................................. 15 Evertz ............................................................................................................................. 15 IMT ................................................................................................................................. 15 Quantiphi ........................................................................................................................ 15 Signiant .......................................................................................................................... 15 Starchive ......................................................................................................................... 16 TrackIt ............................................................................................................................. 16 Regional deployments ............................................................................................................... 16 AWS CloudFormation template .......................................................................................................... 18 Automated deployment .................................................................................................................... 19 Deployment overview ............................................................................................................... 19 Step 1. Launch the stack ........................................................................................................... 19 Step 2. Upload a video or image file .......................................................................................... 21 Step 3. Create your face collection ............................................................................................. 22 Step 4. Advanced search ........................................................................................................... 22 Step 5. Customizing AI/ML settings ............................................................................................ 22 Step 6. Viewing statistics .......................................................................................................... 23 Additional resources ......................................................................................................................... 24 Update the stack .............................................................................................................................. 25 File paths in Amazon S3 ................................................................................................................... 26 Table 1: File types and Amazon S3 file paths ............................................................................... 26 Ingestion state machine .................................................................................................................... 28 Ingestion fixity sub-state machine .............................................................................................. 28 Video ingestion sub-state machine ............................................................................................. 29 Image ingestion sub-state machine ............................................................................................ 30 Audio ingestion sub-state machine ............................................................................................. 30 Document ingestion sub-state machine ....................................................................................... 31 Analysis state machine ...................................................................................................................... 32 Video analysis sub-state machine ............................................................................................... 33 iii
Media2Cloud Implementation Guide Audio analysis sub-state machine ............................................................................................... 35 Image analysis sub-state machine .............................................................................................. 37 Document analysis sub-state machine ......................................................................................... 38 Main state machine .......................................................................................................................... 39 State machine error handling ............................................................................................................ 40 Lifecycle policy ................................................................................................................................ 41 Amazon SNS notifications ................................................................................................................. 42 Ingestion state machine notification message: ............................................................................. 42 Table 2: Ingestion notification key name descriptions ............................................................ 43 Analysis state machine notification message: ............................................................................... 46 Table 3: Analysis notification key name descriptions ............................................................. 48 State machine error notification message: ................................................................................... 50 Table 4: State machine notification key name descriptions ..................................................... 50 Customizing the solution ................................................................................................................... 51 Considerations ......................................................................................................................... 51 Bucket Region .................................................................................................................. 51 Bucket CORS settings ....................................................................................................... 51 Operational metrics .......................................................................................................................... 52 Source code ..................................................................................................................................... 53 Revisions ......................................................................................................................................... 54 Contributors .................................................................................................................................... 55 Notices ............................................................................................................................................ 56 AWS glossary ................................................................................................................................... 57 iv
Media2Cloud Implementation Guide Extract key details from your media files in your AWS accounts Publication date: January 2019 (last update (p. 54): February 2022) Migrating your digital asset management to the cloud allows you to take advantage of the latest innovations in asset management and supply chain applications. However, transferring your existing video archives to the cloud can be a challenging and slow process. The Media2Cloud solution helps streamline and automate the content ingestion process. It sets up serverless end-to-end ingestion and analysis workflows to move your video assets and associated metadata to the Amazon Web Services (AWS) Cloud. During the migration, this solution analyzes and extracts machine learning metadata from your video and images using Amazon Rekognition, Amazon Transcribe, and Amazon Comprehend. It extracts tabular information from scanned documents using Amazon Textract. This solution also includes a web interface to help you to immediately start ingesting and analyzing your content. Media2Cloud is designed to provide a serverless framework for accelerating the setup and configuration of a content ingestion and analysis process. We recommend that you use this solution as a baseline and customize it to meet your specific needs. This implementation guide discusses architectural considerations and configuration steps for deploying the Media2Cloud solution in the AWS Cloud. It includes links to an AWS CloudFormation template that launches, configures, and runs the AWS services required to deploy this solution using AWS best practices for security and availability. The guide is intended for IT infrastructure architects and developers who have practical experience working with video workflows and architecting in the AWS Cloud. 1
Media2Cloud Implementation Guide Example monthly cost Cost You are responsible for the cost of the AWS services used while running this solution. The total cost for running this solution depends on the amount of data being ingested and analyzed, running the solution’s Amazon OpenSearch Service cluster, and the size and length of media files analyzed with Amazon Rekognition, Amazon Transcribe, and Amazon Comprehend. As of February 2022, the cost for running this solution on 100 hours of videos totaling one terabyte with the default settings in the US East (N. Virginia) Region is $2,149.95/month (one time processing) with $104.60/month (recurring) for Amazon S3 data storage and Amazon OpenSearch Service search engine. Example monthly cost The following example is for a total file size of one terabyte, which equates to one hundred total hours of video content where each video is one hour in duration. The cost is broken down to the following categories: 1. Migration cost – when the video files are uploaded and stored in Amazon S3 Glacier Deep Archive storage. The cost is estimated based on the total size of the video files. 2. Ingestion cost – when the uploaded video files are transcoded with AWS Elemental MediaConvert to create low resolution proxy video files plus the ingestion workflow cost composed of AWS Step Functions state transitions and AWS Lambda compute runtime, and Amazon DynamoDB Read/Write request units. 3. Analysis cost – when proxy files are analyzed with Amazon Rekognition, Amazon Transcribe, and Amazon Comprehend plus the analysis workflow cost composed of AWS Step Functions state transitions and AWS Lambda Compute runtime, and Amazon DynamoDB Read/Write request units. 4. Search engine cost – when the generated metadata are indexed to an Amazon OpenSearch Service cluster. The cost depends on the number of dedicated nodes, the number of instance nodes, and the amount of Amazon EBS volume. AWS service Quantity Monthly cost Migration cost (one terabyte) S3 Glacier Deep Archive $0.00099 per GB / Month * 1024 $1.01 GB Ingestion cost (100 hours) AWS Elemental MediaConvert $0.012 per minutes * 100 hours $72.00 (SD, AVC with Professional Tier) AWS Elemental MediaConvert $0.003 per minutes * 100 hours $18.00 (Audio only) AWS Step Functions State Varies depending on number of ~$1.05 transitions, AWS Lambda state transitions, the Lambda Compute unit (MB per 1ms), and function memory size and Amazon DynamoDB Read Write runtime duration, and read write Request Units request to DynamoDB tables. Analysis cost (100 hours) 2
Media2Cloud Implementation Guide Example monthly cost AWS service Quantity Monthly cost Amazon Rekognition Celebrity $0.10 per minute * 100 hours $600.00 Recognition Amazon Rekognition Label $0.10 per minute * 100 hours $600.00 Detection Amazon Rekognition Segment ($0.05 + $0.05 per minute) * 100 $600.00 Detection (Shot and Technical hours Cues detections) Amazon Transcribe $0.024 per minute * 100 hours $144.00 Amazon Comprehend Key $0.0001 per unit ~$5.00 Phrase Extraction Vary depends on number of characters extracted from audio dialogue of the video files Amazon Comprehend Entity $0.0001 per unit ~$5.00 Recognition Vary depends on number of characters extracted from audio dialogue of the video files AWS Step Functions State Varies depending on number of ~$ 0.30 transitions, AWS Lambda state transitions, the Lambda Compute unit (MB per 1ms), and function memory size and Amazon DynamoDB Read Write runtime duration, and read write Request Units request to DynamoDB tables. Search engine cost Amazon OpenSearch Service $0.036 per hour * 0 node $0.00 dedicated node (t3.small.search) Amazon OpenSearch Service $0.142 per hour * 1 node $102.24 instance node (m5.large.search) Amazon OpenSearch Service $0.135 per GB / month * 10 GB $1.35 EBS Volume (GP2) Total cost (based on one terabyte with 100 hours of videos) Monthly recurring cost $1.01 + $102.24 + 1.35 $104.60 (S3 storage and Amazon OpenSearch Service cluster) One-time processing cost ($72 + $18) + $1.05 + ($600 + $2,045.35 (AWS Elemental MediaConvert, $600 + $600) + $144 + ($5 + $5) Amazon Rekognition, Transcribe, + $0.30 Comprehend, AWS Step Functions, AWS Lambda) Total: $2, 149.95 We recommend creating a budget through AWS Cost Explorer to help manage costs. Prices are subject to change. For full details, refer to the pricing webpage for each AWS service used in this solution. For 3
Media2Cloud Implementation Guide Example monthly cost customers who want to process large-scale video archives, we recommend that you contact your AWS account representative for at-scale pricing. 4
Media2Cloud Implementation Guide Architecture overview Deploying the Media2Cloud solution builds the following environment in the AWS Cloud. Figure 1: Media2Cloud architecture on AWS The AWS CloudFormation template deploys the following infrastructure: 1. An Amazon Cognito user pool to provide a user directory. 2. An Amazon API Gateway RESTful API endpoint, which is configured to use AWS IAM authentication. 3. An Amazon CloudFront distribution that hosts the web application artifacts such as minimized JavaScript files and graphics stored in the web bucket. 4. An AWS Step Functions main state machine which serves as the entry point to the solution’s backend ingestion and analysis workflows. 5. An AWS Step Functions ingestion sub-state machine that orchestrates the ingestion process by media file type and generates proxies for ingested media. It uses AWS Elemental MediaConvert for video and audio files and open-source tools for image files and documents. 6. An AWS Step Functions analysis sub-state machine that is responsible for the analysis process. It consists of AWS Step Functions that run analysis jobs with Amazon Rekognition, Amazon Transcribe, Amazon Comprehend, and Amazon Textract. 7. Amazon DynamoDB tables to store artifacts generated during the ingestion and analysis processes, such as overall status, pointers to where intermediate files are stored, and state machine run tokens. 8. An Amazon OpenSearch Service cluster, which stores ingestion attributes and machine learning metadata, and facilitates customers’ search and discovery needs. 9. Four Amazon Simple Storage Service (Amazon S3) buckets to store uploaded content, file proxies that the solution generates during ingestion, static web application artifacts, and access logs for services used. 10.Amazon CloudWatch event rules that are logged when specific tasks undergo state changes. 11.Amazon EventBridge used by an internal queue management system where the backlog system notifies workflows (state machines) when a queued AI/ML request has been processed. 5
Media2Cloud Implementation Guide 12.An AWS IoT Core topic that allows the ingestion and analysis workflows to communicate with the front-end web application asynchronously through publish/subscribe MQTT messaging. 13.Amazon Simple Notification Service (Amazon SNS) topics to allow Amazon Rekognition to publish job status in the video analysis workflow, and to support custom integration with customers’ system, by allowing the solution to publish ingest_completed and analysis_completed events. 6
Media2Cloud Implementation Guide Web interface Solution components The AWS CloudFormation template deploys three logical components: a front-end web application, orchestration workflows (ingestion and analysis), and data storage. The web application provides an interface for customers to upload media content, and view and manage their archive collection. The ingestion and analysis workflows are initiated when a customer uploads content to the application. The ingestion workflow orchestrates tasks to ingest source videos, images, audio, and documents in a serverless manner. The analysis workflow analyzes and extracts machine learning metadata from content. When you upload a media asset to the Amazon S3 ingestion bucket, the ingestion workflow creates a standardized proxy file and thumbnails for analysis. The analysis workflow analyzes the content and extracts metadata using AWS AI services. The Amazon S3 ingestion bucket has an Amazon S3 lifecycle policy that allows the solution to move uploaded videos and images to Amazon Simple Storage Service Glacier (Amazon S3 Glacier) for archiving. Additionally, the AWS CloudFormation template deploys multiple Amazon DynamoDB tables to store metadata about each processed content, such as pointers to where its proxy files are stored in Amazon S3 and the types of AI/ML analysis performed on it. The solution also deploys an Amazon OpenSearch Service cluster that allows customers to search and discover technical media metadata or AI/ML generated metadata. Web interface This solution deploys a web interface that allows you to upload, browse, search video and image files, extract metadata, and search and discover content metadata. The web interface leverages Amazon Cognito for user authentication and is powered by web assets hosted in the web Amazon S3 bucket. Amazon CloudFront provides public access to the solution’s website bucket contents. An Amazon API Gateway RESTful API is used for searching results stored in the Amazon OpenSearch Service cluster, and AWS IoT Core is used as a publish/subscribe message broker to periodically update workflow progress to connected web clients. The web interface also provides a human-in-the-loop feature that allows customers to remediate cases where Amazon Rekognition cannot detect individuals in a video or cannot provide logical groupings of related individuals based on the customer’s specific use case, for example, Olympic athletes for a specific year. Using the web interface, customers can create face collections and index people in the video to that face collection. 7
Media2Cloud Implementation Guide Ingestion workflow Figure 2: Media2Cloud web interface Ingestion workflow The ingestion workflow includes AWS Step Functions and AWS Lambda, which orchestrate the specific ingestion workflow for a video, image, audio file, or document. When a customer uploads a new media file to the Amazon S3 ingestion bucket through the Media2Cloud web interface, the ingestion process starts. The workflow generates an asset unique identifier, computes and validates an MD5 checksum, and extracts media information such as bitrate, formats, audio channels container format for video, or EXIF information such as GPS location, model, and make for image. For video and audio files, the ingestion workflow initiates AWS Elemental MediaConvert to create standardized proxy files and thumbnails of the media for analysis. For image files, the ingestion workflow uses an open-source tool, EXIFTool to extract technical metadata and to create proxy images. Similarly for documents, the ingestion workflow generates image proxies for each page in a document. If the media content is in Amazon S3 Glacier or S3 Glacier Deep Archive storage, the workflow temporarily restores the media content from archive storage to Amazon S3 storage. Proxy files are created and stored in a Amazon S3 proxy bucket, while the technical metadata extracted from media content are indexed in an Amazon OpenSearch Service cluster. When video ingestion process completes, Amazon SNS sends notifications to subscribed users who might use the notification to start other workflows. For example, third party partner solutions, such as Media 8
Media2Cloud Implementation Guide Analysis workflow Asset Manager (MAM) and Archive System, can subscribe to the Amazon SNS topic and then integrate the derived information into their workflows. When an Amazon SNS ingestion notification is received, the automated system can import the files into its system. For more information, refer to Amazon SNS notifications (p. 42). Figure 3: Media2Cloud ingestion workflow Analysis workflow The analysis workflow includes AWS Step Functions and AWS Lambda which leverage Amazon Rekognition, Amazon Transcribe, Amazon Comprehend, and Amazon Textract to analyze and extract machine learning metadata from the proxy files generated in the ingestion workflow. The Media2Cloud solution provides the following preset options for the analysis process when you deploy the template: Default, All, and Audio and Text. • Default - Activates celebrity recognition, labels, transcription, key phrases, entities, and text processes. • All - Activates all detections including celebrity recognition, labels, transcription, key phrases, entities, text, faces, face matches, person, moderation, sentiment, and topic processes. • Audio and Text - Activates transcription, key phrases, entities, and text processes. The web interface also allows the end user to refine the AI/ML settings during the upload process. The analysis workflow includes four sub-state machines to process the analysis. • The video analysis state machine analyzes and extracts AI/ML metadata from the video proxy using Amazon Rekognition video APIs. • The audio analysis state machine analyzes and extracts AI/ML metadata from the audio stream of the proxy file using Amazon Transcribe and Amazon Comprehend. 9
Media2Cloud Implementation Guide Error handling • The image analysis state machine analyzes and extracts image metadata with Amazon Rekognition image APIs. • The document analysis state machine extracts text, images, and data using Amazon Textract. To start the analysis workflow, a Lambda function first checks an incoming analysis request and prepares the optimal AI/ML analysis option to run, based on the type of media in the request, and the availability of specific detections. For video and audio, it transforms the metadata results into WebVTT subtitle tracks, chapter markers, key phrases, labels, sentiments, entities, and locations. The analysis workflow can also provide customized analysis output if the customer uses Amazon Rekognition custom label models, Amazon Transcribe custom vocabularies or Amazon Comprehend custom entity recognition. The machine learning metadata results are stored in an Amazon S3 proxy bucket and indexed in an Amazon OpenSearch Service cluster. When the analysis is completed, Amazon SNS sends notifications to subscribed users. For more information, refer to Amazon SNS notifications (p. 42). Figure 4: Media2Cloud analysis workflow Error handling The Media2Cloud solution applies a catch and retry concept for error handling to the state machines to improve the resiliency of the solution by retrying the state run multiple times. When the state run exhausts the retries, it stops the run and generates an error. 10
Media2Cloud Implementation Guide Proxy files The solution also uses Amazon CloudWatch Events to respond to run errors caused by the state machines (ingestion and analysis). The Lambda error handling function processes the error by analyzing the run history of the failed state machine and sends an Amazon SNS notification to subscribers. Proxy files When a new video is uploaded to Amazon S3, the Media2Cloud solution automatically converts the video to MP4 format and creates a compressed version of the video known as a proxy file. For this solution, proxy files are used to allow users to upload videos of various sizing and formatting, without being subject to Amazon Rekognition and Amazon Transcribe quotas. Additionally, the proxy files can be used as reference proxies in a Media Asset Manager (MAM) for search, discovery, and proxy editing. The solution also generates compressed proxies for audio, images, and documents after extracting technical data from these file types during the ingestion process. Amazon DynamoDB The solution deploys the following Amazon DynamoDB tables which are configured to use on-demand capacity and encryption at rest using Server-Side Encryption (SSE). • A table to store ingestion information • A table to store machine learning metadata • A table to temporarily store state machine run tokens that are used internally to communicate back to specific state machine runs • A table to temporarily store service backlog requests, an internal queue management system to support large number of AI requests Amazon OpenSearch Service The solution configures an Amazon OpenSearch Service cluster to index ingestion technical metadata and analysis metadata. The solution creates indices per type of the machine learning categories such as celeb, label, face, faceMatch, segment, moderation, person, textract, transcribe, keyphrase, entity, and ingest to allow the end user to fine tune the search results. The indexed documents are encrypted at rest. Node-to-node encryption is also activated. Amazon SNS This solution deploys two Amazon SNS topics. One to receive ingestion, analysis, and error notifications from the workflows and the other topic is used internally by Amazon Rekognition to send job notifications to the state machine run. 11
Media2Cloud Implementation Guide Server-side encryption Security When you build systems on AWS infrastructure, security responsibilities are shared between you and AWS. This shared model can reduce your operational burden as AWS operates, manages, and controls the components from the host operating system and virtualization layer down to the physical security of the facilities in which the services operate. For more information about security on AWS, visit the AWS Security Center. Server-side encryption AWS highly recommends that customers encrypt sensitive data in transit and at rest. This solution automatically encrypts media files and metadata at rest with Amazon Simple Storage Service (Amazon S3) Server-Side Encryption (SSE). The solution's Amazon Simple Notification Service (Amazon SNS) topics and Amazon DynamoDB tables are also encrypted at rest using SSE. Amazon CloudFront This solution deploys a static website hosted in an Amazon S3 bucket. To help reduce latency and improve security, this solution includes an Amazon CloudFront distribution with an origin access identity, which is a special CloudFront user that helps restrict access to the solution’s website bucket contents. For more information, refer to Restricting Access to Amazon S3 Content by Using an Origin Access Identity. Amazon OpenSearch Service Documents indexed to the Amazon OpenSearch Service cluster are encrypted at rest. Node-to-node communication within the cluster is also encrypted. 12
Media2Cloud Implementation Guide Limitations Deployment considerations Limitations Currently, the Media2Cloud solution has the following known limitations: • Maximum media duration is limited to four hours - Amazon Transcribe can process files up to four hours in length. For more information, refer to Amazon Transcribe Guidelines and Limits. • Amazon Rekognition Custom Labels limited to two models - The Amazon Rekognition Custom Labels setting is currently limited to running up to two models. For more information, refer to Amazon Rekognition Guidelines and Quotas. Figure 5: Amazon Rekognition default detection settings Search engine sizing The CloudFormation template provides presets for the end user to configure different Amazon Open Search Service clusters: Development and Testing, Suitable for Production Workload, Recommended for Production Workload, and Recommended for Large Production Workload. 13
Media2Cloud Implementation Guide Integrated partners • Development and Testing – This preset creates an Amazon Open Search Service cluster in a single Availability Zone with a single m5.large.search data node, 10GB storage, and without dedicated primary node. • Suitable for Production Workflow – This preset creates an Amazon Open Search Service cluster in two Availability Zones with two m5.large.search data nodes, 20GB storage, and three dedicated t3.small.search primary nodes. • Recommended for Production Workload – This preset creates an Amazon Open Search Service cluster in two Availability Zones with four m5.large.search data nodes, 20GB storage, and three dedicated t3.small.search primary nodes. • Recommended for Large Production Workload – This preset creates an Amazon Open Search Service cluster in three Availability Zones with six m5.large.search data nodes, 40GB storage, and three dedicated t3.small.search primary nodes. Integrated partners The Media2Cloud solution is designed to provide a standardized architecture to support AWS Partners to integrate with content from AWS customers. A standardized architecture helps accelerate the migration and supply chain process, and helps Media Asset Manager (MAM) partners provide solutions for their customers. The Media2Cloud solution integrates with the following AWS Partners: Cloudfirst.io Cloudfirst.io is an AWS Partner that specializes in large-scale, unstructured, active archive, and content storage management solutions for Media and Entertainment. They actively assist clients with legacy archive migrations embracing various next-generation technologies. Cloudfirst provides consulting and a product called Rapid Migrate that address the challenges of moving content out of existing LTO archives, process and move content into Amazon Simple Storage Service (Amazon S3) storage in supported content and metadata formats for Media2Cloud to initiate the ingestion process. Levels Beyond Levels Beyond is an AWS Partner that provides a Media Asset Manager (MAM) service platform called Reach Engine. Levels Beyond can be integrated with the Media2Cloud solution through Amazon Simple Notification Service (Amazon SNS) and interface with the output to consume the JSON formatted metadata to provide customers with a rich search, discovery and management service to manage their content archives. Levels Beyond can support customers further by configuring the services to add additional metadata faceting as well as automating the processing of content for production, OTT, digital publishing and other content related services. Nomad CMS Nomad CMS is an AWS Partner that supports the ability to bring an OTT metadata enrichment and discovery system to existing Amazon S3 assets. Nomad augments Amazon S3 asset storage without requiring any changes to the existing asset structure or files themselves. Nomad also automatically integrates with Media2Cloud and other AWS AI/ML services. Confidence scores, labels, transcriptions, and other AI enrichment is used to tag each asset with appropriate discovery information. Searching and publishing activities are used to make the resulting metadata available to custom solutions or in support of other integration activities. 14
Media2Cloud Implementation Guide EditShare EditShare EditShare is an AWS Partner that designs and delivers high-performance, scalable, shared storage solutions that allow media professionals to create outstanding content. EditShare’s EFSv with FLOW is a Media2Cloud activated, end-to-end cloud production solution. It supports tiered asset storage, media management, intelligent archiving, and broad compatibility with creative tools such as the Adobe Creative Suite. Highlighting only one use case, EFSv and FLOW powered workflows have fast search and seamless switching between proxy and high-resolution editing right in the video editorial application. EditShare’s Professional Services team can offer AWS customers seamless workflows designed around their business processes, leveraging solutions from EditShare and other providers. eMAM eMAM is an AWS Partner that powers workflows for production, post-production, sharing, and distribution: the entire lifecycle of a digital asset. eMAM provides a web interface designed to support non-technical users, providing a collaboration nexus for editors and designers using integrations into Apple Final Cut and Adobe Creative Cloud applications. eMAM is flexible, with easy configuration and scalability for the entire range of use cases and verticals, to provide customers with choice and control. eMAM provides a range of options for deployment including AWS cloud and hybrid solutions. eMAM is available as a permanent license or as a subscription in the AWS Marketplace with SaaS/PaaS-Server options. Evertz Evertz is an AWS Partner that provides the Mediator-X, a cohesive, highly scalable, infrastructure agnostic platform for Media Asset Management, Transmission Playout and Non-Linear delivery applications. Evertz Mediator-X allows customers to manage their Cloud Content Factory at scale using a rich feature set of integrations and options under the functional blocks of acquisition, processing, management, production, playout, and delivery. Utilizing Media2Cloud and other AWS services, customers can gather and store both metadata and content in highly durable cloud storage, use the intuitive user-interface to visualize machine learning data alongside other customer-specific metadata or pull data from API endpoints within the Mediator-X platform. IMT IMT is an AWS Partner that provides SoDA, a new way to control data movement between storage tiers, on-site and in the cloud. Since its inception 13 years ago, IMT has grown to become a leading next-gen Systems Integrator supporting over 800+ customers in Media & Entertainment, broadcast, sports, and corporate video in North America. SoDA is IMT’s Intelligent Data Management Software that can be leveraged as a simple data migration tool to help customers move off from legacy archives, as well as broker data movement to and from the cloud to various endpoints. Designed to work with all types of storage—on-premises, hybrid, and AWS—users can define rich, flexible policies or manually transfer data. SoDA plugs into multiple MAM solutions to empower end users to control their own data movement. Quantiphi Quantiphi is an AWS partner that provides an AI-powered Media Intelligence solution that helps media and entertainment customers unlock hidden data potential to curate better content, enhance customer targeting, and implement effective channel strategies to transform their customer experience. Signiant Signiant is an AWS Partner that offers fast and secure movement of large data sets over any IP network. Signiant provides foundational technology that allows content exchange within and between companies 15
Media2Cloud Implementation Guide Starchive of all sizes to connect the global media supply chain. The Signiant Software-Defined Content Exchange (SDCX) SaaS platform provides people and systems with access to media assets located across disparate and distributed storage repositories # and lays the groundwork for innovations that extend beyond file transfer. Signiant’s proprietary transport technology is the foundation upon which Signiant was built. Signiant’s continued investment in this area has allowed them to remain a leader in the category for more than 15 years, and their software is relied upon to move petabytes of high-value content every day. Each Signiant product capitalizes on their advanced acceleration technology to transfer content up to 100 times faster than standard Internet transmission speeds, and Signiant technology is capable of moving any size of file or data set over any IP network, while taking advantage of all available bandwidth. Starchive Starchive is an AWS Partner that offers a command center for today’s content producers. Starchive brings the power of digital asset management to the entrepreneur and small/medium business with the elegance of a modern consumer SaaS application and at a fraction of the cost of comparable solutions. Starchive helps users find the signal in the noise of their digital chaos and get back to work building their brand, business, and bottom line. In a world where every individual has the power to create and the opportunity to consume digital media 24/7—every business has the mandate to be a content powerhouse to thrive. Learn more about how Starchive used Media2Cloud to help Essence Magazine support their 50-year anniversary by improving the accessibility to their historical archive. TrackIt TrackIt is an AWS Advanced Consulting Partner with decades of experience in the Media & Entertainment industry and a wealth of cloud technology design and deployment work performed for many media- centric companies. TrackIt has experience building advanced pipelines that include AI/ML tools and integration with asset management systems, along with transcoding, rendering, VOD, OTT, live streaming, cloud-based editorial, and collaborative online tools. Learn more about how Trackit used Media2Cloud to help Jukin Media improve the utility of their archive. Regional deployments This solution can be deployed to any AWS Region. If a service, such as Amazon Rekognition, is not currently available in the Region, the solution reduces its functionality. Analysis features such as celebrity recognition, label detection, and face detection will be turned off. We recommend for you to launch the solution in an AWS Region where Amazon Rekognition, Amazon Transcribe, and Amazon Comprehend are available. For the most current availability of AWS services by Region, refer to the AWS Regional Services List. As of February 2022, this solution is fully supported in the following Regions: Region ID Region name us-east-1 US East (N. Virginia) us-east-2 US East (Ohio) us-west-2 US West (Oregon) ap-south-1 Asia Pacific (Mumbai) ap-northeast-2 Asia Pacific (Seoul) 16
Media2Cloud Implementation Guide Regional deployments Region ID Region name ap-southeast-2 Asia Pacific (Singapore) ap-southeast-2 Asia Pacific (Sydney) ap-northeast-1 Asia Pacific (Tokyo) eu-central-1 Europe (Frankfurt) eu-west-1 Europe (Ireland) eu-west-2 Europe (London) 17
Media2Cloud Implementation Guide AWS CloudFormation template This solution uses AWS CloudFormation to automate the deployment of the Media2Cloud in the AWS Cloud. It includes the following AWS CloudFormation template, which you can download before deployment: media2cloud.template: Use this template to launch the solution and all associated components. The default configuration deploys Amazon Simple Storage Service (Amazon S3) buckets, an Amazon OpenSearch Service cluster, AWS Lambda functions, AWS Step Functions state machines, an Amazon API Gateway RESTful API, an Amazon CloudFront distribution, Amazon Cognito user pools, Amazon Simple Notification Service (Amazon SNS) topics, AWS IoT Core, and Amazon DynamoDB tables. You can also customize the template based on your specific needs. 18
Media2Cloud Implementation Guide Deployment overview Automated deployment Before you launch the automated deployment, please review the architecture, configuration, and other considerations discussed in this guide. Follow the step-by-step instructions in this section to configure and deploy the Media2Cloud solution into your account. Time to deploy: Approximately 25 minutes Deployment overview The procedure for deploying this architecture on AWS consists of the following steps. For detailed instructions, follow the links for each step. Step 1. Launch the stack (p. 19) • Launch the AWS CloudFormation template into your AWS account. • Enter values for required parameters: Stack Name and Email Address. • Review the other template parameters, and adjust if necessary. Step 2. Upload a video or image file (p. 21) • Upload a file using the web interface to begin the ingestion and analysis workflows. Step 3. Create your face collection (p. 22) • Index faces to create your face collection to improve face analysis results. Step 4: Advanced search (p. 22) • Find the specific moment you are looking for. Step 5: Customizing AI/ML settings (p. 22) • Configure the AI/ML services that you want to use in your analysis. Step 6: Viewing statistics (p. 23) • A summary of all content in your collection. Step 1. Launch the stack This automated AWS CloudFormation template deploys the Media2Cloud solution in the AWS Cloud. Note You are responsible for the cost of the AWS services used while running this solution. For more details, visit the Cost (p. 2) section in this guide, and refer to the pricing webpage for each AWS service used in this solution. 19
Media2Cloud Implementation Guide Step 1. Launch the stack 1. Sign in to the AWS Management Console and select the button to launch the media2cloud AWS CloudFormation template. Alternatively, you can download the template as a starting point for your own implementation. 2. The template launches in the US East (N. Virginia) Region by default. To launch the solution in a different AWS Region, use the region selector in the console navigation bar. 3. On the Create stack page, verify that the correct template URL shows in the Amazon S3 URL text box and choose Next. 4. On the Specify stack details page, assign a name to your solution stack. 5. Under Parameters, review the parameters for the template, and modify them as necessary. This solution uses the following parameters. Parameter Default Description Email Email address of the user that will be created in the Amazon Cognito identity pool and subscribed to the Amazon SNS topic. Subscribed users will receive ingestion, analysis, labeling, and error notifications. After launch, two emails will be sent to this address: one with instructions for logging in to the web interface and one confirming the Amazon SNS subscription. Price Class Use Only U.S., Canada A dropdown box with price and Europe classes for the edge location from which Amazon CloudFront serves your requests. Choose Use Only U.S., Canada and Europe; Use U.S., Canada, Europe, Asia and Africa; or Use All Edge Locations. For more information, refer to Choosing the price class. Amazon OpenSearch Service Development and Testing A drop-down box with four Cluster Size Amazon OpenSearch Service cluster sizes: Development and Testing, Suitable for Production Workloads, Recommended for Production Workloads, and Recommended for Large Production Workloads. 20
Media2Cloud Implementation Guide Step 2. Upload a video or image file Parameter Default Description Analysis Feature(s) Default A drop-down box with nine presets: Default, All, Video analysis, Audio analysis, Image analysis, Document analysis, Celebrity recognition only, Video segment detection only, and Speech to text only. For more information about the presets, refer to Analysis workflow (p. 9). (Optional) User Defined If you have an existing bucket Amazon S3 Bucket for ingest that you would like to store uploaded contents, specify the bucket name. Otherwise, leave it blank to auto create a new bucket. (Optional) Allow autostart on NO A drop-down box to specify if ingest S3 bucket you would like to automatically start workflow when directly upload assets to Amazon S3 ingestion bucket. 6. Choose Next. 7. On the Configure stack options page, choose Next. 8. On the Review page, review and confirm the settings. Be sure to check the boxes acknowledging that the template will create IAM resources. 9. Choose Create stack to deploy the stack. You can view the status of the stack in the AWS CloudFormation console in the Status column. You should receive a CREATE_COMPLETE status in approximately 25 minutes. Step 2. Upload a video or image file After the solution successfully launches, you can start uploading video or image files for processing. The solution sends two emails: one with the subscription confirmation for the Amazon SNS topic to send ingestion, analysis, labeling, and error notifications, and one with instructions for signing into the solution’s provided web interface. 1. In the M2CStatus email, select Confirm subscription to subscribe to the Amazon SNS topic. 2. In the second email, follow the instructions to sign in to the website. You will be prompted to change the password the first time you sign in. 3. Choose Sign in on the upper right corner of the page and sign in using your recently created password. 4. Navigate to the Upload tab. 5. Drag and drop your files to the Upload Video box, or choose the Browse Files button to upload a video or image file. Once the files are uploaded, choose Quick upload, or select Next to Start Upload. Once the ingestion process is completed, a thumbnail image of the video or image is created. You can hover over the thumbnail image and select Play now to view the media file. 21
Media2Cloud Implementation Guide Step 3. Create your face collection Step 3. Create your face collection The web interface allows you to create your own Amazon Rekognition face collection and index and store faces in the collection to improve the analysis results. 1. In the web interface select FaceCollection in the top navigation. 2. Type in the name of the face collection in the blank field and choose Create New Collection. 3. In the web interface, hover over a created video or image and choose Play. 4. Choose the Play button again and then choose Pause once you find a face in the content. 5. Move the toggle by Snapshot Mode to the right to display a bounding box. 6. Adjust the size of the bounding to fit tightly over the face. 7. Type the name of the person in the Name box and select your Face Collection from the dropdown menu. 8. Once finished, choose the Index Face button. 9. Repeat steps 4-8 until you have identified all of the faces. 10.After the faces are indexed, choose Re-analyze to analyze the video or image using the newly indexed faces in your face collection so that all unidentified faces are recognized and indexed. Step 4. Advanced search Included in the web interface is the ability to search for specific moments across the analyzed content. A user has the ability to put in specific search terms and have timestamped results returned. 1. In the web interface select Collection in the top navigation bar. 2. On the collection page, there is a search bar in the top right-hand corner of the page. Deselect any of the attributes that you want excluded from your search and then type a term or phrase in the Search box and hit submit. 3. Assets matching the search term will be presented under the Search Results section of the page and highlight where there was a match to your search term. 4. Choose the file thumbnail in the search results to be taken to that asset. Step 5. Customizing AI/ML settings In this version of Media2Cloud, users have a lot of flexibility on the AI/ML services that are used. They also have the ability to configure those services for their use cases. 1. In the web interface select Settings from the top navigation bar. 2. In the Amazon Rekognition Settings section: • You can set the minimum confidence level that you want results from. • Toggle on or off specific detection types. • Select the face collection that you want to use when analyzing assets. • When using Amazon Rekognition to detect text on screen, you can select the specific regions of the screen for analysis. • If you have created a custom AI/ML model using Amazon Rekognition Custom Labels, you can use that model when analyzing assets. • The Frame Based Analysis section give the flexibility to switch from the Amazon Rekognition Video API to the Amazon Rekognition Image API. When you toggle the Frame Based Analysis button on, you can determine the frequency that frames are analyzed. 22
Media2Cloud Implementation Guide Step 6. Viewing statistics 3. In the Amazon Transcribe settings section: • Select the language that you want Amazon Transcribe to create a transcript of the video in. For a complete list of supported languages, refer to Amazon Transcribe Supported Languages. • If you have created a Custom Vocabulary to improve the accuracy of Amazon Transcribe, you can select that model for the analysis of your assets. • If you have created a Custom Language Model you can activate that model for the analysis of your assets. 4. In the Amazon Comprehend settings section: • Activate Entity Detection, Sentiment Analysis, and Key phrase Detection. • If you have built a Custom Entity Recognizer to identify custom entities for your business needs, you can activate that as well. 5. In the Amazon Textract settings section, you can activate the service to extract text from documents that you are analyzing. Step 6. Viewing statistics Once content has been analyzed, the web interface has a way to show an aggregation of the metadata generated by the AI/ML Services. This helps to answer the question of what the most popular or frequent tags and detections are in the library. 1. In the web interface select Stats from the top navigation bar. 2. Pie charts show the overall and categorized statistics of your content collection. 23
Media2Cloud Implementation Guide Additional resources AWS services • AWS CloudFormation • Amazon API Gateway • AWS Lambda • Amazon OpenSearch Service • Amazon Rekognition • AWS Step Functions • Amazon Cognito • Amazon CloudFront • Amazon Simple Storage Service • Amazon DynamoDB • Amazon Transcribe • AWS IoT Core • Amazon Simple Notification Service • AWS Elemental MediaConvert • Amazon Comprehend • Amazon EventBridge 24
Media2Cloud Implementation Guide Update the stack Media2Cloud Version 3 can be deployed side-by-side with your previously deployed Media2Cloud versions (Version 2 and Version 1). However, this version is incompatible with previous versions due to changes of the Amazon DynamoDB tables and Amazon OpenSearch Service indices used by the solution. To migrate from your existing Media2Cloud version (Version 2 or Version 1) to this version, contact your AWS account representative for assistance. 25
Media2Cloud Implementation Guide Table 1: File types and Amazon S3 file paths File paths in Amazon S3 When a customer deploys Media2Cloud, the solution creates four different Amazon Simple Storage Service (Amazon S3) buckets to store assets: • A web bucket that stores the static HTML, CSS, and JavaScript files for the web interface. • An ingestion bucket that stores your original source files. • A proxy bucket that stores all the files and assets generated by the solution, including: • Video proxies and thumbnail images generated by AWS Elemental MediaConvert • MediaInfo XML output generated by MediaInfo • JSON documents generated by EXIFTool • Machine learning metadata generated by AWS AI services • Additional WebVTT tracks and analysis JSON documents created by the solution • A logs bucket that stores all access logs for the web bucket, the ingestion bucket, the proxy bucket, and Amazon CloudFront standard logs. Table 1: File types and Amazon S3 file paths File type File path Web static assets S3:/// Uploaded file S3://// Technical metadata such as mediainfo and EXIF S3:///// results mediainfo/ S3:///// imageinfo/ Proxy files, thumbnails generated by S3:///// MediaConvert transcode/proxy S3://///transcode/aiml S3:///// transcode/frameCapture All AI/ML analysis results S3:///// raw/ Raw AI/ML analysis results from Amazon AI S3:///// services raw//comprehend/ S3:///// raw//rekognition/ S3:///// raw//transcribe/ S3:///// raw//textract/ 26
You can also read