All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed spelling errors in CloudFormation template.
- Added new input file types wmv, mkv, m3u8, mpeg, webm, and h264.
- Now allowing uppercase input file types to run the end to end video encoding workflow.
- Added the MXF and mxf file types. Closes this request (aws-solutions#124)
- Additional headers added to Amazon CloudFront distribution attached to destination bucket for the out/* prefix. This will allow easier playback of content on modern browsers. Additional headers whitelisted are Origin, Access-Control-Allow-Origin, Access-Control-Request-Method, and Access-Control-Request-Headers.
- Additional methods added to Amazon CloudFront distribution for destination bucket. Head and options added.
- Added steps in Readme to make building the project more clear.
- Added Readme build step to ensure bucket ownership when uploading build files.
- Removed deinterlacer preprocessor from templates to reduce costs. This causes MediaConvert jobs to run in Basic Tier mode instead of Pro Tier.
- Modified job templates that force output frame rate to 30, 24, or 15 fps to instead follow the source fps of your video file. This allows 60fps content, as well as PAL 25/50 fps video files to have their frame rate preserved.
- Removed Dash and MP4 outputs, leaving just the HLS output. This saves costs running this solution.
- Removed SelectorType and Tracks from job profiles, we will auto pick the first track. This allows audio only videos to encode without having an error.
- Changed AWS MediaConvert templates codecLevel to auto to allow for more supported input file types.
- Changed AWS MediaConvert audio track to auto to allow for video only workflows. This allows video files without audio track to work with the included AWS MediaConvert profiles.
- Fixed naming in the MediaConvert custom resource. Closes this PR (aws-solutions#84)
- Update Axios package to 0.21.1
- Support for S3 Signature Version4 for pre-signed URLs (aws-solutions#111)
- New MediaConvert job templates with:
- Fewer HLS and DASH ABR renditions
- Updated encoder settings
- No presets
- Enabled point-in-time recovery backup for DynamoDB table
- MediaInfo executable version (from v19.09 to v20.09) (aws-solutions#116)
- CloudFront configuration improvements (aws-solutions#96, aws-solutions#99)
- MediaConvert presets are no longer being created
- All new MediaConvert job templates gets created regardless of whether MediaPackage is enabled or not
- Settings are no longer overwritten when using custom templates (aws-solutions#107)
- Solution now deploys even in regions with no MediaPackage support
- Default encryption to SNS topic
- Environment variable to configure the AWS SDK to reuse TCP connections (https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/node-reusing-connections.html)
- SQS queue options at deployment to capture workflow outputs
- Support for accelerated transcoding in Elemental MediaCoonvert: https://aws.amazon.com/about-aws/whats-new/2019/10/announcing-new-aws-elemental-mediaconvert-features-for-accelerated-transcoding-dash-and-avc-video-quality/
- support for Glacier deep archive
- Lambda functions runtime to latest available (Node.js 12)
- Build assets to include package-lock.json files
- Build and test commands to use npm ci instead of npm install
- Cloudformation template to use AWS::Partition instead of aws
- Logic to add MediaPackage VOD as a custom origin to CloudFront (it's now done as a custom resource when the stack is created / updated)
- Links in README file
- fix to buildUrl function in output-validate lambda to support non root objects (aws-solutions#61)
- fix mediainfo lambda function signing method error (https://github.com/awslabs/video-on-demand-on-aws/issues/670
- 'use strict' directives
- MediaPackage VOD support
- Rotation support (aws-solutions#27)
- License to Apache-2.0
- Time properties in notification event (startTime and endTime) to use ISO 8601 formatting
- README to use correct casing for metadata sample
- Always use QVBR (Quality-Defined Variable Bitrate Control)
- DynamoDB table to use on-demand billing option
- Each function in the workflow to have its own role
- Typo in notification event property name (ecodeJobId -> encodeJobId)
- Links to issues in the CONTRIBUTING file
- Anonymous metrics helper to remove ServiceToken (which includes Lambda ARN) from sent data
- Suffix for supported format (mv4 -> m4v)
- Custom resource to handle WorkflowTrigger parameter update
- References to unused workflowTrigger (Api)
- CHANGELOG file
- Lambda functions (except for mediainfo) runtime to nodejs10.x
- Mediainfo lambda function to python3.7
- Mediainfo executable version (from v0.7.92.1 to v19.09)