MediaConvertで変換して、ストリーミング配信を試してみる で再生できる所まで確認しましたが、今回はABR(アダプティブ・ビットレート)を試してみます。
回線速度に応じて、画質が自動で切り替わるやつです。
今は回線速度も上がっているし、品質に拘るなら使わないのも良い選択だと思います。

ジョブの作成

S3とCloudFrontを作成は前回の記事を参照してください。
ジョブも下記以外は同じなので、省略します。

最大レンディション
自動だと6つ作られた(素材や設定によると思いますが)ので、3つ(高画質、中画質、低画質)にしました。
この数だけvideoが作られるので、S3の料金が上がります。

ビットレート
今回、最小は最小値の100000(100Kbps)、最大は10倍の1000000(1Mbps)にしてみました。

画角

最大:1000000(1Mbps)、最小:100000(100Kbps)
Output 2はちょうど半分ですが、Output 3は更に半分の「320 × 180」にはならず。

画角を指定するオプションはなさそうなので、ビットレートを変えてみました。

最大:1200000(1.2Mbps)、最小:100000(100Kbps)
→ 上と変わらず。最大は画角に影響しなそう。

最大:1600000(1.6Mbps)、最小:120000(120Kbps)
Output 2が大きくなり、Output 3は変わらず。
→ 最小は中画質の画角に影響しなそう。

ゆえに画角を制御するのは難しそう。
別々に変換して、マニフェスト(m3u8やmpd)を書き換えるという方もありますが、
手間だし、特定の端末(STBや古いAndroid)以外は再生できない事はなさそうなので。

再生してみる

hls.js demo
https://hls-js.netlify.app/demo/

https://cdn.nightonly.com/Big%20Buck%20Bunny_ABR3/Big%20Buck%20Bunny.m3u8

Dash JavaScript Player
https://reference.dashif.org/dash.js/v4.3.0/samples/dash-if-reference-player/index.html

https://cdn.nightonly.com/Big%20Buck%20Bunny_ABR3/Big%20Buck%20Bunny.mpd


※なぜ「2000 kbps」になってるんだろう?

HTMLに埋め込んでみる

前回、作ったののURLのみ変更で、再生できます。
回線速度の応じて、画角が変わります。
※videoタグにwidth/heightを指定すれば固定できます。
TODO: auto以外への切り替えは実装が必要そう。

hls.js: https://cdn.nightonly.com/player/hls_abr3.html
dash.js https://cdn.nightonly.com/player/dash_abr3.html

料金

2パス料金が請求されますと書いてありますが、実際の請求から、どのくらいか確認してみました。

まず、1パス(HD、30fps以下)の場合

$0.017/min - Asia Pacific (Tokyo) - HD, AVC/H.264, <=30 fps, Single pass, Basic Tier
$0.0034/min - Asia Pacific (Tokyo) - Audio-only, Basic Tier

(0.017+0.0034) × 尺(分)なので、
10分のコンテンツだと、$0.204
60分のコンテンツだと、$1.224

2パス(HD、30fps以下)の場合

$0.0476/min - Asia Pacific (Tokyo) - HD, AVC/H.264, <=30 fps, Multi-pass HQ, Pro Tier
$0.0034/min - Asia Pacific (Tokyo) - Audio-only, Basic Tier

$0.0238/min - Asia Pacific (Tokyo) - SD, AVC/H.264, <=30 fps, Multi-pass HQ, Pro Tier

(0.0476+0.0034+0.0238*(レンディション数 - 1)) × 尺(分)なので、
10分のコンテンツで、videoを3つ出力していると、$0.986
60分のコンテンツで、videoを3つ出力していると、$5.916

約4.83倍にコストが増えますね。微妙。

Lambdaとかで作る必要があるけど、
1パスを組み合わせて、マニフェスト加工した方がコストは有利。
(0.017*3+0.0034)*10 = $0.544 -> 2.66倍
(0.017*3+0.0034)*60 = $3.264 -> 2.66倍

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です