ちりとまとチャンネル

チリトマト好きがゲームや動画などについて取り扱っています
トップスポンサー広告 → スポンサーサイト

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
トップ動画作成およびエンコード関連 → BPPで目標とする画質ごとの最適ビットレートを計算してみる

BPPで目標とする画質ごとの最適ビットレートを計算してみる

ニコ動は一般会員だとビットレートは600Kbpsまでしか指定できません。
プレミアムだとビットレートは無制限ですが、うpできるファイルサイズが100MB以下なので、
それなりに再生時間のある動画だと、結局のところ

ビットレート→サイズ制限ギリギリの量を指定


という感じになることが多いです。

2~3分程度なら4000~5000Kbpsという贅沢な値を指定できますが、
上げすぎるとシークバーの溜まりが遅くなって再生途中で止まります。
しかも、ニコ動の標準解像度(512x384や640x360)だと、
画質は大して変わらないのに無駄に重くなってるという可能性が高いです。


そこでアップロード制限は置いといて、どれくらいビットレートを振ればいいのか
(これ以上増やしても画質が変わりにくく、重くなるだけというライン)を考えてみる。


しかしネット上でその線の情報を調べても、
保存用途が前提でありったけ高いビットレートを推奨していたり、
「この解像度ならこれくらいあれば綺麗に見える」という主観的な情報が多くて悩みました。



そんな時に、よさげなものが見つかったのでご紹介。
http://service.jp.real.com/help/faq/prod/faq_4226.html


BPPとは Bits Per Pixel(ピクセルあたりのビット数)、
つまり1ピクセルにどれくらいビット数を割り振るかを意味します。


サイズとフレームレートが決まっている場合、

ビットレート = BPP × フレームレート × 幅 × 高さ

という計算式を使うことで、自分が望む画質を得るにはどれくらいビットレートを振ればいいかがわかります。
BPPには下の表のような数値を当てはめます。

動作品質
最高
高度0.2250.1750.1250.100
中度0.2000.1500.1000.075
低度0.1750.1250.0750.050

動作は映像の動きの激しさで、この表では以下のように分けられます。

高度-スポーツやミュージックビデオ
中度-映画
低度-ニュースなど


例えば、映画をHDかつ最高品質でエンコードする場合、

ビットレート = 0.2 × 30 × 1366 × 768 = 6294528 となり、

目的の画質を得るためにはビットレートが約6300Kbps必要になると考えられます。



ここまでなら同じような内容を載せているページは結構あります。
それじゃあ、ニコ動くらいのスケールではどうなるんだ?という話をこれから致します。

よくありそうな設定では、ゲームのプレイ動画を16:9サイズかつそこそこの画質でアップしたい場合、

0.1×30×640×360=691200 →約690kbpsが必要です。

つまり、一般会員の制限である600kbpsでは正直苦しいです。
(実際は656kbpsとすると、音声に80kbpsは使うとして映像部は最大でも560~570kbps程度)
そんなに動かず、グラフィックがシンプルとかなら十分な画質になるかもしれませんが、
アクション、特にFPSとかだとキツイです。


もっともh264はそれ以前のコーデックより性能がいいので、
そこまでこの表のBPP値を真に受けなくても大丈夫です。
動きが多いか少ないか、アニメか実写かでも結構違います。

プレミアムに関しては、BPP=0.12前後(640x360で830kbpsくらい)あれば十分な画質になります。
動きの激しいアクションやFPS、弾幕ゲーとかだとBPP=0.14~0.15(1000kbpsくらい)、
極端なケースだともっと必要かもしれません(MHP3のラスボスとか)


ひたすら高画質にしたい!という場合、BPP=0.165程度として
・512x384なら970Kbps(音声96Kbpsで13分)
・640x360なら1140Kbps(音声96Kbpsで11分)

くらいを目標にするといいでしょう。
それでもまだビットレートに余裕があって画質が不満なら、
あとはご自身の目で確認しながら満足するまでビットレートを振って下さい。



最近はニコ動のプレイヤーの標準解像度より大きい動画も増えてきたので、そっちにも触れてみる。


ニコ動のプレイヤーが通常モードで等倍表示できるのは、アス比4:3で512x384、16:9で640x360(か384)。
それよりデカいサイズとなると、基本的にはフルスクリーン表示での視聴が前提となります。

当然ながら解像度を上げるほど、画質を維持するのに必要なビットレートは増えます。
そしてビットレートを増やしすぎると、
サーバからの読み込みが遅くなって再生が止まり止まりになります。
1500Kbpsくらいなら大概は安定しますが、休日の10時~12時とかだとこれでもキツイかったりします。

最も混雑する数時間さえ避けてスムーズに再生出来るならいい!というのであれば、
人と時間帯にもよりますが4000Kbpsでも行けないことはないです。

フルスクリーン再生を前提とする動画は、高画質を売りにしたい場合が大半なので、
むしろ多少のリスクを負ってもそれくらいのビットレートは指定していいかもしれません。


いずれにせよ解像度とビットレートを上げすぎるとフルスクリーン表示でコマ落ちが発生したり、
再生中で止まったりと害も多くなるので、限度があります。

HDサイズの場合 BPP=0.13 すなわち、

0.13 × 30 × 1366 × 768 = 4091443.2 →約4090Kbps

この辺りを限度にしといたほうがいいでしょう。

よほど動画にコダワリがあるとか、視聴者のPC性能を試したいとか、ベンチマーク上等ォ!
という場合を除き、これ以上はやらないほうがいいです。


実際はフルHD(1920x1080)の動画もニコ動には上がっていますが、
フルHDは同じ品質を維持する場合、HDに対して二倍ものビットレートが必要であり、
BPP=0.1の並品質ですら6000kbps以上というシャレにならないビットレートを要求されます。

マトモに再生できない環境&時間帯のほうがおそらく多くなるので、
実験とかベンチマークでない限り解像度はHD程度で留めておくほうが無難です。
エンコードする方も相当キツイですからね…。
このコメントは管理者の承認待ちです
2015/05/02(土) 18:10:07 | | #[ 編集]
URL
コメント
パスワード
秘密
管理者にだけ表示を許可する
 
トラックバックURLはこちら
http://chilicore.blog46.fc2.com/tb.php/28-8396a835
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。