[アップデート] AWS Elemental MediaConvertで変換時の動画の回転処理に対応しました!

ファイルベースの動画変換サービスであるAWS Elemental MediaConvertに動画の向きを回転させる機能が追加されました。これまで回転機能がなくAWS Elemental MediaConvert導入を断念していたケースなどあるかと思いますが、嬉しいアップデートです!
2019.03.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。AWS Media Servicesの細かなアップデートを追っていくコーナーです。本エントリで紹介するのはこちら、ファイルベースの動画変換サービスであるAWS Elemental MediaConvertで動画を回転させる変換(ローテーション)に対応しました。(2019/02/21にアップデートされた内容となります。)

例えばスマートフォンで動画を撮影した場合、スマホを持っている角度などで動画が90度回転してしまう(タテ・ヨコが入れ替わってしまっている)、もしくは上下反転してしまうなどで動画を回転させたい、ということがあります。これまでAWS Elemental MediaConvertでは変換時に動画の向きを回転させる機能(ローテーション)がありませんでした。対して、AWS Elemental MediaConvertサービス開始以前からAWSで提供されていた、同じくファイルベースの動画変換サービスAmazon Elastic Transcoderでは、この動画の向きを回転させる機能が提供されていました。

そのためAWS Elemental MediaConvert登場後、Amazon Elastic Transcoderと比べてコストメリットやH.265やQVBR、CMAFなど最先端の変換フォーマットに対応しているAWS Elemental MediaConvertに魅力を抱いても、この動画回転が要件に入っている場合にはAWS Elemental MediaConvertの採用を断念しAmazon Elastic Transcoderを選択する必要がありました。 これは例えば、以下のAWS Developer ForumでAWS Elemental MediaConvertとAmazon Elastic Transcoderどちらを採用するべきか、という議論でもAWS Elemental MediaConvertリリース直後から選択の基準として話されていたことになります。

この度AWS Elemental MediaConvertが変換時の動画の回転処理に対応したことで、この要件があっても、コストメリットや最先端のフォーマット等に対応するAWS Elemental MediaConverが選択できるようになりました!とても嬉しいアップデートですね!

AWS Elemental MediaConvertで動画を回転させてみた

では実際にMediaConvertで動画を回転させてみます。変換元となるのは下記の動画です。個人的に思い入れ深いのですが、弊社せーのがAWS re:Invent 2016のre:Playで撮影してきたもので、re:Playeでテンションが上がりすぎて向き(タテ・ヨコ)が変わってしまったケースです。(Amazon Elastic Transcoderでも回転を試しています。詳しくは「Amazon Elastic Transcoderを使ってre:Playで撮影した動画の向きを直してみよう #reinvent | DevelopersIO」をご参照ください。)

変換したいファイル(ここではファイル名replay2016-tate.m4vをS3にアップロードし、通常のMediaConvertの変換と同じようにジョブを作成していきます。

Input設定画面でS3から入力ファイルを選択して、続いてVideo selectorの項目を確認するとRotationの項目が見つかりますね!

デフォルトではNo rotationですが、90 degrees180 degrees270 degreesAutoが選択できます。今回は90度(90 degrees)を選択しました。

Inputの設定をしたら、変換したいファイル形式をOutput groupで選択、通常と同じようにジョブを作成します。今回はOutputをFile groupに設定、System PresetのSystem-Generic_Hd_Mp4_Avc_Aac_16x9_Sdr_1280x720p_30Hz_5Mbps_Qvbr_Vq9を選択しました。

Job settingsのSettingsの項目でIAM role設定を行い、ジョブを作成します。

変換が完了したら、S3に出力されている変換後の動画を確認してみます。以下のように回転された動画が変換されました!

まとめ

ファイルベースの動画変換サービスであるAWS Elemental MediaConvertで追加された新機能、変換時の動画の回転処理についてまとめてみました。AWS Elemental MediaConvertを用いた動画変換フローでこれまで動画の回転処理を別ソリューションなどで手動で行ってからS3にアップロードしていた、もしくは回転処理のためにAWS Elemental MediaConvertが使用できずAmazon Elastic Transcoderなどを使っていた、といった場合に、今回のアップデートを利用することでAWS Elemental MediaConvertのみで処理フローが完結することになります。これまでAWS Elemental MediaConvertで対応できなかったことができるようになった、すばらしいアップデートだと思います。引き続きAWS Elemental MediaConvert含めたAWS Media Servicesの機能アップデートに注目していきたいと思います。