• 暗黒尺余りによる画質対策について、正確には何秒必要なのか、ビットレート分布を徹底的に調べる

    2016-12-22 01:20
    親記事はこちら→ar1109929
    まず普通に60秒の動画を、2000kbpsエンコになるように投稿するとこんな感じ↓

    1500~2500くらいで推移し全体として平均が2000kbpsとなる(最後の山は謎)



    これに暗黒尺余りを30秒追加すると↓

    本編60秒までの平均が3000kbps、そのあとはほぼ0となり、動画全体での平均は2000kbps



    試しに尺余りを120秒にすると↓

    2Mbpsでエンコされる条件を満たしてるが1Mbpsに留まっており、何か隠し条件がある模様。
    残念ながら本編部分の平均は3000kbpsで変わらなかった。
    さらに、再生中読み込みが追い付かずに止まりまくる事態に。



    暗黒画面の代わりに静止画を30秒使ってみると↓

    静止画の場面で1000kbpsのビットレートが使用されてしまい本編部分の平均は2500kbps程度に留まってしまう。



    それならばと静止画を60秒使用すると↓

    無事、本編部分の平均ビットレートは3000kbps確保できた。
    静止画を調整に使う場合は、本編と同じ長さが必要。



    動画冒頭でよくあるテロップ「この動画は○○の2次創作です・・・」(黒背景に白の文字)
    は200~300kbps程度消費してる模様(文字の大きさで変動あり?)↓

    1000kbps消費してしまう静止画より効果は高い(数秒しか使えないので大したこと無い。)
    さらに冒頭に時間稼ぎするので再生中に止まる症状を予防する効果も?


    静止画(エンドクレジットの時など?)や、文字のみ1色テロップなどは、それ自体がビットレート稼ぎ効果を持っているので、その分だけ暗黒尺余りの時間が少なくて済む事になる。
    {元の本編秒数-(文字のみ場面秒数x1.67+静止画秒数)}÷2=暗黒必要秒数
    仮に冒頭テロップ5秒、本編60秒、エンドクレジット静止画15秒の合計80秒の動画を仮定する
    その場合に本編部分3000kbpsにするのに必要な暗黒尺余り秒数は、(30秒ではなく)
    {60-(5x1.67+15)}÷2=18.3秒程度となる↓ (動画時間は98.3秒になる) 

    本編部分5秒から65秒の間の平均ビットレートは約3000kbpsになる。全体の平均は2Mbpsになった
    上の式の1.67は、だいたいで考えた仮の数値ですが、冒頭テロップの秒数は短いのであんまり気にしなくていいかな?と

    投稿前エンコードはaviutl + 拡張機能x264guiExを使用。
    fpsは24で投稿したものをcheckbitrateでチェックした。







  • 広告
  • 【1.5GB投稿】エンコード方式変更により各種動画が受ける影響について【前記事より抜粋して移動】

    2016-11-15 18:35

    http://ch.nicovideo.jp/tamazou/blomaga/ar1109929 
    が追記を繰り返して巨大化したので一部抜粋して移動

    ★各種動画が受ける影響について
    ・実写映像 2Mbpsで十分かも。コメントが画面上の流れてくるの前提だし、映像ソースが綺麗ならそれなりに見れる。


    踊ってみた系はカメラ固定が多いから、2Mbpsでも割と綺麗にエンコできると予想。
    エロ系とかだと画質欲しいけど、転載は無視すると、そういうの自分で高画質撮影する人殆どいないだろうし、しょうがないかなぁ。
    ・他動画投稿サイトからの無断転載動画  画質的にはこれは全滅でしょうね。
    投稿者本人じゃなきゃ「高画質の投稿前元映像ソース」を所有してないわけで。
    ・ゲーム実況動画  最近のゲームは高画質だしもうちょっと画質が欲しいか?
    まあ動画の特徴的に長時間なものが多かった訳で、
    今までの低画質映像よりはずっとマシになるはず。今回一番恩恵を受けてるジャンル。

    ・MMD動画 これが問題。短時間なものが多いから今回の恩恵ないし、
    エロMMDだとコメント消してじっと視聴する人すらいるだろうし画質命。
    しかもなぜか異様にビットレートを食う、劣化しやすい映像。
    これを2000kbpsで再エンコしようとするって、事前テストしなかったのだろうか?

    というわけでやっぱり画質対策を考える事にする。


    http://ch.nicovideo.jp/tamazou/blomaga/ar1109929 ←の記事に続く 


  • 1.5GB新規格。再エンコ後の画質を向上する5種類の方策【順次追記】20180502

    2016-09-25 17:226

    当記事は頻繁に追記&訂正されます。動画作成時にちょっとチェックしていただけると幸いです

    2018/5/2追記 これが現状のニコ動エンコの最新記事です↓
    ニコニコ動画開発者直伝!キレイな動画を投稿するテクニック【ニコニコ超会議2018】
    games.app-liv.jp/archives/356462

    (一部抜粋)
    >投稿可能な容量内(2018年4月現在は3GB)の動画であれば、そのまま投稿することを横畑氏は推奨する。


    >そのうえで、容量が投稿可能な領域をオーバーしてしまった場合、開発者が推奨するのは以下のツールだ。
    >つんでれんこ
    >x264guiEx(AviUtl用プラグイン)
    >HandBrake(Mac、Linuxにも対応)



    超クリエイターズLab.メインステージ@ニコニコ超会議2018[DAY2]

    -------------------------------------------------------------------------------------------

    2017/12/11追記 2018/4/1内容一部変更
    PC版ニコ動が1080pに対応し、同時にビットレートも大幅に上昇するようです。http://blog.nicovideo.jp/niconews/54740.html
    現在テスト期間中ですが6Mbpsの超高画質になってました。

    36fps以上(60fps推奨)12Mbps以上1080p以上
    31分未満のファイルを投稿すると6Mbpsになるという説が現在有力
    なのですが
    なぜかこの動画は30fpsで6Mbpsです。
    12/14追記 同じ元ファイルをさきほど再投稿してみると、4Mbpsになりました
    テスト開始後、時々エンコードビットレート設定が変更されてるのかもしれません。テストですし。
    もしこのまま導入されたら、以下はもう単なる過去の検証資料になってしまったかもしれませんね。
    さすがに6Mbpsあれば画質対策する必要はないし。        以上緊急追記でした。


    6Mbpsにできるのなら、
    以下はもはや意味のない対策方法ですが、資料として残します。
    苦労の軌跡






    ---------------------------------------------------------------------------------------------------------------

    では実際に画質がどれだけ変わるか見てみましょう。






    再生中に一時停止してみる。
    (カメラの動きも激しく、
    その為か画質は粗い)

         
         黄色枠の部分を拡大
             

      通常1.5GB投稿(2Mbps)  →→→ 画質対策1&2&3後
     http://www.nicovideo.jp/watch/sm30032712     http://www.nicovideo.jp/watch/sm30035951     
    まず
    "高画質"(2Mbps)に再エンコードされる条件について軽くおさらい。
    以下を守らないと、左の画質にも届かない。

    なるべく大容量で、高品質のままmp4化してアップロードした方が良い

    ●投稿する映像のサイズが幅1280【以上】x高さ720【以上】、4kサイズ以下であること。
     大きめの1920x1080 (30fps)くらいが適正
    ●投稿映像のビットレート2Mbs【以上】(mp4動画長1分間あたり15MBくらい以上)
     上記の画像サイズ以上で編集すれば普通に超えると思います
    (容量は動画の長さによって200MB~500MBとか色々。5Mbpsとかかな?)
    静止画を多用したりすると下回ってしまう可能性があるので注意。

    ニコ動対応動画編集ソフト最新版など、下限ビットレート設定が有る物なら大丈夫です。
    どうしても下回る場合は4Kサイズでエンコすれば多分OK
    私は現在はaviutl + 拡張機能x264guiExにて編集&mp4出力してます
    http://rigaya34589.blog135.fc2.com/blog-entry-139.html
    ●動画長 
    15分59秒以下であること。超えるようなら分割
      →→→最近「30分59秒以下」に条件緩和された模様

    ●推奨投稿フォーマット mp4形式
     aviとかでそのまま投稿しないように
    ●投稿サイズ制限 1.5GB以下
     mp4で1.5GBなのでかなりでかいです。普通は超えないと思われますが、
    逆に投稿前に100MB前後やそれ以下のmp4になってる人は設定が間違ってる可能性あり。
    ギリギリ2Mbpsにするより高めにしておいた方が、今後、エンコビットレートが向上した時(今秋?)に綺麗にエンコし直される可能性があるかも。


    どこまでやって妥協するかが悩みどころ。再エンコによる画質劣化 への対策は
    元の映像の画質に近づくと効果がだんだん弱まる。
    劣化の酷い映像の場合は対策の効果が大きい。
    水面や、電飾キラキラなど、派手で細かい動きなどの映像が劣化激しい印象です。

    ●対策その1● 追記)・・6Mbps動画でこれをやると確実に途中で止まりまくるので注意
    データ量がほぼ0の暗黒部分を追加し、動画時間を長くしてエンコ後ファイル容量を増やす。
    それを映像部分で使いきることにより通常の1.5倍の3Mbpsを映像部分で実現。
    (出力に失敗した時とかに動画後半しばらく真っ黒な画面が流れ続ける、たまにあるアレ)
    昔あった【エコノミー回避】と基本の考え方は同じです。


    映像が1分間なら30秒以内の暗黒部分を追加。
    (その比率より長い暗黒追加は効果なしで、再生中に止まりやすくなるだけです。)















     
    この方法を使う事で↓のように映像ビットレートの底上げができます。

                                     ↑転載自由です

    暗黒部分の割合を計算ミスして時間オーバーすると、途中で読み込みに再生が追い付いて
    一瞬止まる可能性があります。結構ギリギリのラインです。

    正確に何秒追加すればいいか別記事で検証しましたar1139135
    ちゃんと計算すれば、ちょっと少な目の時間で済ませられる可能性あり↑
    デメリット 
    ・動画時間が何分何秒か判りにくい→タイトルに実質時間「3:24」等を追記するという手も
    ・動画の最後がずっと尺余りなので生放送放映向きではない → 投稿者コメントスクリプトでジャンプさせる小技も生放送には通用しないっぽい。
    ・そもそも生放送時はビットレート制限がキツイので高画質にならない → 最近生放送ビットレート上がったっぽいけど、それでも最高1Mbps(アナログ放送並み)だししょうがない。
    対策2&3は原理が違うので生放送放映にも多少効果あるかも(生放送関係は未検証です)
    ・再生時間制限(「2Mbpsエンコ条件の30分59秒」「MMD杯規定の5分40秒」などに対して映像の長さがギリギリだと暗黒部分用の時間が少なく効果が薄くなるやらないよりはマシですが)  →可能なら分割投稿する
    ・混雑時などはDLに再生が追い付いてしまい、2Mbpsの動画より途中で止まりやすいかも。

    ・・・いいのか・・・

    ●対策その2● ←他の対策を行ってもまだ画質が粗い場合の最後の手段。やや非推奨
    追記注)1080p化の変更で、現在この対策を実行すると、かえって画質が下がります。


    fps(1秒あたりコマ数)を低く(24fpsが限度)抑える(フレームレートを下げる
    映像の劣化具合的には効果があるのは間違いない。
    ただヌルヌル動くのが大事なところがあるし、できれば30fps欲しいが・・

    映像部分のビットレートそのものが上がるわけではないですが、
    24fpsで妥協すれば30fpsと比べて1.2倍くらいは(ノイズの少なさ的な意味で)画質アップ。
    24fpsってプロが制作する映画と同じですよ?(公式推奨fpsは24もしくは30です
    少なくと60fpsは避けてください
    追記・・フレーム間予測により、60fpsでもさほど劣化しない場合があるようです。
    動きの激しい映像の場合は、高fps時の劣化が激しい??


    MMDでは普通に
    30fpsで出力しておいて、
    mp4にする段階でaviutlにて
    設定>フレームレート変更>
    という変更してもOK

    MMD以外の映像のfps変更も
    これで可能です






    デメリット
    ・24fps程度ではイマイチ効果が薄い。 → 60fpsより30fpsはずっとマシですが、30fpsと24fpsではあまり変化がありません。使用する場合は他の対策との併用が前提になります。
    他の対策を行ってもまだ画質が粗い場合用の最後の手段的なものです。
    ・パラパラ漫画のようになってしまう。
    MMEのモーションブラーを使えば、パラパラ漫画感が薄らいで、少し滑らかな動きに見えるかも?


    ●対策その3● ←場面によっては効果高いが手間がかかります
    カメラモーションを工夫する。
    旧投稿方式でも、なるべく綺麗に100MBまで圧縮する為によく言われてましたね。
    パン(振り)ズームを多用せず固定カメラのスイッチング(切り替え)で代用すれば、
    動かない背景の部分が【フレーム間予測】で効果的に圧縮され画質向上できます。(静止画像のような扱い) 
    実写を撮影する場合も、きっちり三脚で固定して撮影したほうが良かったりする?
    完全に1カメ固定のみ(動画の最初から最後まで全部同じ固定アングル)にする必要はなく、
    数秒~数十秒おき(?)にカメラを切り替えても十分効果あり。
    手間はかかりますが効果は高いので試しに何秒かだけやってみてください。

               ↑検証動画は、こんな感じでカメラモーションの変更をしました。

    固定カメラに変えた場面の元のカメラワークがどんなだったか、背景の面積割合がどの程度かで画質への効果が変わります。
    推察すると1.1倍~2倍程度でしょうか? 
    無理に全部を固定カメラスイッチにしなくても、気になる部分だけでもやれば、印象は変わると思います。


    ←カメラワーク変更前 クリックで拡大
    カメラワークのみ変更後→

    別の方法として、背景を映像データ量の少ないもの(同じ色が多く造形が細かくない等)にしても、同様に背景の圧縮率を上げられると思います。
    (自作MMDモデルの紹介動画などで、モデルだけ高画質で見せたい場合等は全面真っ黒やMMDデフォルト系っていう極端な方法も)

    カメラワークに関しては、特に映画マトリックスの有名なシーンの様な、モデルの周りをカメラが回るようなのが劣化が激しい印象。(例の動画おねがいダーリンでは2:20あたり)
    実写ではありえないカメラワークなわけで、これがMMDが画質劣化しやすい原因なのかも。

    デメリット
    (配布されたモーションを変更する場合)
    ・出来合のカメラモーションを変更する場合でも、ただの流し込みに比べると手間がかかる。
    ・元モーション制作者の苦労を考えると、バッサリ固定カメラに置き換えるのは忍びない
    → 特徴的なカメラモーションは少し残す &「参考作品」としてコンテンツツリー登録も。
    ・上手くやらないと画面の躍動感が減少する事態に。→CMや歌番組など(固定カメラのスイッチングが多用されている)を参考に勉強するしか・・・
    ・背景に使われるビットレートを節約するという理屈は対策その4と同じですから、
    その3とその4の併用はいまいち効果が薄いかも。

    上記の3対策を行った比較です。カメラワークの違いも解ると思います
    (張り切りすぎて、切り替えが多すぎですが)

     
    基本的にMMD作成テクニック無いので、流し込みを調整だけして、追加エフェクトも超シンプル(モーションブラーとシェーダーのみ)です。
    他の投稿動画(立体視動画とか)もだけど、基本的に「やり方のまとめ」だけ広めて後は他の人まかせ ってのが、自分の従来の基本スタイル。

    3つ全部適用は過剰だったかもしれません。実は対策その1だけで7割がた綺麗になってた。


    それぞれの対策を個別比較。

    その1単独・・・3種類全部適用に比べるとまだ粗いけど、かなり画質向上。
    映像ビットレート自体が上がってるので、問答無用で画質は上がる。
    簡単、強力でデメリットが少なく、「対策その1」は一番オススメです。


       その2単独・30→24fps程度なので効果弱い   こっち↑はあえて60fps投稿。これは酷い
    30にするか24にするか60にするかは、実際に(非公開)投稿したのを見比べてみるしかない。



    その3単独・・場面場面のカメラワークで向上具合が違うかな?
    場面によってはかなりの効果があるんですが、画質の為だけに変更するのは割と手間です。
    この動画はちょっと場面転換の頻度高すぎで見てて疲れますが。。

     
    その1+その4を組み合わせ・・・この動画だと、この2つでほぼノイズ消えますね。
    対策前から割と綺麗な映像でちょっと拍子抜け・・
    映像によってどのくらい対策すればいいか違ってくるので、要検証な訳です。

    ●対策 その4●
    上下もしくは左右をトリミングして、映像面積を小さくして画質アップ。
    ニコ動の投稿規格が変わる前はあまり意味が無かった方法ですが、他の動画サイト等では以前から非常によく使われてます。
    通常は16:9ですが、アスペクト比4:3(左右カット)や、映画のように上下カットなどをします
    約2割くらい画質アップでしょうか。
    あと上下カットの場合は、コメントが画面に重なるのをちょっと緩和できますw

    アスペクト比は維持してエンコードされるので気にしなくてもいいですが、
    動画の縦横サイズが幅1280px高さ720px以上になるように注意。
    縦横のどちらかだけでも条件から外れるとエンコードの画質ランクが下がります。
    データ的に1280x720以上あればOKなので、黒帯で足りない部分を埋めればOKです。

    モデルが一人で画面中心で踊ってる動画だから、左右カットしても別に構わないなーとか、
    空と地面の割合が多いから、上下カットしてもいっかな・・とか、そういう場合の方法です。
    デメリット
    ・当然、画面の大きさは、上下もしくは左右が小さくなります。
    ・背景に使われるビットレートを節約するという理屈は対策その3と同じですから、
    その3とその4の併用はいまいち効果が薄いかも。


    ●対策 その5● (検証途中)
    html5版プレーヤーに実装された再生速度変更機能を使い、
    低fps(=再エンコされてもノイズ少ないかつスロー映像を高速再生させ、
    結果的に普通fpsな映像で視聴してもらう。
    スロー映像になった時点で音の高さが低音になってしまうので、
    あらかじめピッチ(音程)を上げておく必要あり。(html5での高速再生時は音程が変わらないので)
    デメリット
    作成方法がややこしい。検証目的以外でやる人いないだろうなw
    ・スローになった分、再生時間制限がきつくなる。15:59秒以内に収めるなど。
    ・PC、html5での視聴のみを想定
    ・現在は1.2倍速再生までしかできないので、効果が薄い。「フレーム間予測」の効果に埋もれてしまってる感じがします。
    他の方がローダー配布した「おまけ映像」で、「非常に画面が賑やかで、再エンコ劣化しやすい映像」を手に入れたので試してみたら、1.2倍でも効果は有るのを確認できました。
    ・対策その1と併用すると3600kbps相当で非常に強力ですが、再生途中で止まりやすいです。
    (読み込みが追い付かない程度の、再生時間の短い動画向き?)
    2倍速が実装されたら再度詳細に検証予定ですが、多分途中で止まりまくる予感



    なにか目標とする画質合格点(「○○の部分をクッキリにする」とか)を自分で決めて、そこに向かって非公開投稿を繰り返して
    試行錯誤すると良さげ。
    デメリットもあるので、対策を複数適用するか選んで適用するかは仮投稿後の映像と相談です
    いろんな要因が重なっていて、どの程度の対策が必要かはそれぞれの動画で変わってきます
    対策しなくてもほぼ気にならないレベルから、複数適用してもノイズが消えないものなど・・

    無対策投稿後の画質が酷い場合は、対策すればするほど目に見えて効果がでて面白いですw
     

    慣れるまで何度もエンコードするはめになるので、
    aviファイルをMMDから出力する際など「可逆圧縮コーデック(無劣化のほう
    http://aviutl.info/category/%E3%82%B3%E3%83%BC%E3%83%87%E3%83%83%E3%82%AF/%E5%8F%AF%E9%80%86%E5%9C%A7%E7%B8%AE/
    を使うと時間短縮になります(自分はUt VideoコーデックRGBを使用)


    ごくまれに、プレミアム会員なので最高画質版になるはずなのに、
    何故か中画質版(1Mbps)が再生される
    (実際の見た目もノイズが有る)場合があるのですが、しばらくすると最高画質版に変化しました(
    可能性は低いのですが、画質チェックする際は要注意です。
    追記・・動画プレーヤーの機能追加で、右下の詳細(歯車マーク)から、どの画質が再生中か確認、変更できるようになりました。


    ---------------------------------------------------------------------------


    ●対策 番外編●(希望的観測)
    個人で有料チャンネルを開設しチャンネル動画として投稿すると
    ビットレート8MBps、エンコ後容量500MB
    の動画を投稿できるらしい
    無料動画としても投稿可能で、それはチャンネル有料入会しなくても今まで通り見られる。投稿者名欄がチャンネル名になるだけかな?)

    http://qa.nicovideo.jp/faq/show/4688

    これまで、キャンペーン形式で一定数の個人応募を受け付けておりましたが、
    ・niconicoでの活動実績(投稿・配信数、再生・視聴者数、継続性等)
    ・その他ネット上での活動実績
    などをもとに基準を設け、対象となった方にのみ、あなたのマイページ(PCのみ)や、
    ニコニコアカウント登録時のメールアドレスへご連絡させていただきます。
    マイページに案内が表示された方は、いつでも開設いただけますので、ぜひユーザーチャンネルへご参加ください。

    ・・・いやさすがに無理だろこれは・・
    川上会長が株主総会で、MMDは非常に意義があると考え支援したいって言ってたし、
    今回一番貧乏くじを引いた(検証記事ar1139040)MMD投稿者のみなさんに、優先的に案内をかけて欲しいなー。
    (高画質動画投稿機能だけの"ミニチャンネル”みたいなのでもいいから)
    有名MMDerで既に開設者いるのだろうか?


    ●今後の予想●
    おそらく10月のniconico新バージョン(く)で、ビットレート向上を行うのではと予想します。
    以下の記事から推測。

    ドワンゴのエンジニア魂    http://gihyo.jp/dev/serial/01/dwango-engineersoul/0003

    第3回 ドワンゴがFPGAを使った開発に乗り出したワケ
    (抜粋)
    ――FPGAを利用することで,具体的にどのようなメリットが生まれるのでしょうか。

    たとえばユーザーの方々にもっと高画質・高ビットレートの映像を配信するといったことが可能になります。



    もしくは、投稿された動画の元ファイルをサーバーに全保存する計画があるらしいので、

    それを(超低速でいいので)ダウンロードする機能が付いたらいいな。
    10分以内の〇〇MB以下の動画限定とか制限付きで良いので。