S3をつかったVideoの変換サービスのようです。
それでは実際に触ってみたいと思います。
AWSコンソールをみると、「Amazon Elastic Transcoder」という新しい項目が増えているのがわかります。
開くと、Transcoder画面が表示され、使用開始申請をするとサブスクリプション認証が始まります。
使用できるようになると、再びConsoleを訪れた時このような初期画面が表示されます。
入力と出力をpipelineとして定義して、ジョブを作成する流れのようです。
「Create new pipeline」をクリックすると、Pipelineの定義画面になります。
Pipelineでは変換したいビデオファイルがある入力元バケットと変換したビデオの出力先のバケットを指定します。
- Pipeline Name:適当に名前をつけます。
- Input Bucket:変換元のビデオファイルが置いてあるS3のバケット名。
- Output Bucket:変換後のビデオファイルを保存したいS3のバケット名。
- IAM Role:TranscoderがアクセスするためのIAMロール
ここでは、以下のように入力してみました。
- Pipeline Name:myfist-converter
- Input Bucket:memorycraft-video-input(S3に予めバケットを作成しておきます。)
- Output Bucket:memorycraft-video-outpu(S3に予めバケットを作成しておきます。)
- IAM Role:指定なし
オプションで通知方法など選べるようですが、ここでは割愛します。
「Create Pipeline」をクリックして登録します。
すると、Pipelineの一覧画面に作成したものが表示されます。
ここで、Input Bucketに指定したバケットに変換したいビデオファイルをアップします。
次に、Create Jobのボタンをクリックして、変換ジョブを作成します。
Jobでは、Pipelineの中で、変換元のファイル名と保存先のファイル名を定義し、利用したい変換方式のプリセット(Preset)を選びます。
- Pipeline:どのPipelineを使うかを選びます。
- Preset:変換方式をプリセットの一覧から選べます。プリセットはAWSが用意したもの以外に、自分で定義もできます。
- Input Key:PipelineのInput Bucketにある、変換したいビデオファイルのパスを入力します。フォルダの中にあるものは、フォルダも含めたパスにします。
- Output Key:PipelineのOutput Bucketにある、変換後に保存したファイルパスを入力します。フォルダの中に保存する場合は、フォルダも含めたパスにします。
ここではiPhone4Sで再生するため、3つのジョブを作成し、以下のように指定しました。
- Pipeline:myfist-converter
- Preset:System Preset : iPhone4S -System
- Input Key:Caravan-Palace-Dramophone.mp4
- Output Key:Dramophone.mp4
下に変換オプションなどもありますが、ここでは割愛します。
「Create Job」をクリックするとジョブが開始され、Job一覧画面に移ります。
おそらく大量のジョブが実行されることを想定しているのか、最初は検索画面の状態です。
ここで、Pipelineを指定して「Search」をクリックすると、先ほど実行したJobが一覧に表示されます。
まだ実行中のものは「Processing」となっており、完了すると「Complete」になります。
完了したら、S3のバケットを見てみます。
無事出力されていました。
これをダウンロードしてみると、正常に再生されました。
iPhoneにいれても再生されているようです。
今回はシステムプリセットを使用しましたが、既存のプリセットを元に自分で定義することもできます。
おそらく本来は、大量のビデオをAPI経由などでバッチ的に変換するような使い方が思いつきますが、現在以下の制限があります。
- Pipelines:1アカウントにつき4つまで
- Active jobs:1Pipelineにつき1,000まで
- Presets:1アカウントにつき、ユーザー定義プリセットは50つまで
変換したファイルをCloudFrontでストリーミング配信したり、Glacierにバックアップしたりなどの動画関連のサービスアプリケーションが作りやすくなるかもしれません。
Amazonってほんとにリリースペース速いですね。
以上です。