エンコード設定
当ページは、動画を投稿(アップロード)する際の変換、及び画質・音質の調整方法に関する基本的な情報をまとめています。
書き手や引用元が異なるため統一できませんが、「エンコード」「エンコ」「変換」は基本的にどれも同じ意味です。また、「アップロード者」「うp主(うぷぬし)」「投稿者」も同じ意味です。
目次
SMILEVIDEOの仕様について †
ニコニコ動画はニコニコ動画自体に動画をアップロードできる訳ではなく、SMILEVIDEOに動画をアップロードし、それをニコニコ動画から閲覧する仕組みになっています。ということで、まずはSMILEVIDEOの特徴・仕様を知ろう。
2009/10/29メンテナンス終了後~ †
赤字が以前との変更箇所。
| 一般会員 | プレミアム会員 |
| 対応動画フォーマット | FLV/MP4/DivX/XviD/ MPEG1/MPEG2/WMVなど (再エンコの基準は違うので注意) |
| ディスク容量 | 2GB | 8GB |
| 1ファイルあたりのアップロード可能サイズ | FLV ~40MB MP4 ~40MB 他の形式 ~100MB | 100MB |
| FLV及びMP4のビットレート上限(公式) | 600kbps | 制限無し |
| プレイヤーの解像度 | 512x384(4:3), 512x288(16:9) |
| アップロード可能解像度 | 800x600以内 | 制限無し |
2009/10/29メンテナンス以前 †
| 一般会員 | プレミアム会員 |
| 対応動画フォーマット | FLV/MP4/DivX/XviD/ MPEG1/MPEG2/WMVなど (再エンコの基準は違うので注意) |
| ディスク容量 | 2GB | 8GB |
| 1ファイルあたりのアップロード可能サイズ | FLV ~40MB MP4 ~40MB 他の形式 ~100MB | 100MB |
| FLV及びMP4のビットレート上限(公式) | 600kbps | 1000kbps |
| プレイヤーの解像度 | 512x384(4:3), 512x288(16:9) |
| アップロード可能解像度 | 800x600以内 |
指定の形式でアップロードした場合は、アップロード者品質の動画になります。指定の形式の詳細は、以下の表を参考にして下さい。
| 再エンコを回避できる動画の条件(2008年12月現在) |
| コンテナ(ファイル形式) | FLV (FLV1) | FLV (FLV4) | MP4 |
| 映像コーデック | Sorenson H.263 | On2 VP6 | H.264 AVC (MPEG-4 Part 10 AVC) |
| 映像の解像度 | 512x384(4:3), 512x288(16:9), 800x600以内 |
| 映像のフレームレート | 0.33fps~120fps |
| 音声コーデック | MP3 | AAC-LC HE-AAC HE-AACv2 |
| 音声のサンプリングレート | 22kHzまたは44.1kHzのみ | 48kHz以下 |
| ファイル容量(映像+音声) | プレミアム会員 | 100MB以下 |
| 一般会員 | 40MB(40*1024=40960KB)以下 |
| 平均ビットレート(映像+音声) | プレミアム会員 | 1049kbps以下 |
| 一般会員 | 656384bps以下 |
上記形式以外の動画は、SMILE VIDEO仕様でエンコード、つまり再エンコされます。
- 一般会員の場合は、プレミアム会員の条件しか満たさない動画でも、再エンコもしくは拒否されます。
音声なしの動画も問答無用で再エンコされるようです(2008/05/27現在)。対処法は適当な無音MP3を入れるなど。FLVは無音でもアップロード可能だが無音MP4は再エンコ(2009/5/31現在)。
- 再エンコされた動画は解像度320x240(4:3)/352x200(16:9)、映像コーデック On2 VP6 236 kbps、音声コーデック MP3 64 kbps。映像音声合計300 kbps前後になります。
- ニコニコ動画の表示画面解像度は512x384なので、再エンコされた動画は拡大されて粗く表示されます。
- アップロード可能最小サイズはFLVでは8x8、MP4では16x16(2009/5/31現在)。
- ステレオ、モノラルの他に5.1chのAACを含むMP4もそのままアップロード可能(Flash Playerの仕様上、再生時には2chになります。)(2008/09/30現在)
- 再エンコされない動画でも、以下の条件を満たすものは、エコノミーモード用の低画質動画が投稿時に生成されます。低画質動画は、エコノミーモードが適用されているときのみ再生されます。
- 映像コーデックがVP6で、平均ビットレートが 313.00 kbps以上のもの。
- 映像コーデックがH.264、平均ビットレートが 245.78 kbps以上のもの。
- エコノミー用動画は投稿したファイル形式がFLV/MP4のどちらであってもFLV形式の動画が生成されます。エコノミー用動画の設定はおおよそ以下のようになっています(再エンコ動画と同じ)。
映像: VP6, 320x240(4:3) 352x200(16:9), 約240kbps, フレームレートそのまま
音声: MP3, 64kbps, 44.1kHz
エコノミーでカクカクするのはVP6のTemporal Resamplingを有効にしているためと思われます。動きの激しい場面でヌルフレームを挿入し実質フレームレートを下げて画質を稼ぐことができる反面動きがぎこちなくなります。
- mp4のエコノミーモードの動画も同様のflvです。システムタブのおしらせに「mp4動画を再生します。」と表示されますが嘘です。
各コーデックの仕様 †
動画にはさまざまな圧縮フォーマットがあり、それぞれ大きく性質が異なります。用途ごとに使い分けることによって、エンコードを効率化・高画質化できます。
映像 †
- Sorenson H.263(.flv)
- FLVコンテナでSMILEVIDEOに再エンコなしでアップできる(制限あり)。
- YOUTUBEも採用している形式。VP6よりも速くエンコードできるが、動きに弱い。
- 初心者におすすめ。
- On2VP6(.flv)
- FLVコンテナでSMILEVIDEOに再エンコなしでアップできる(制限あり)。
- 当初はニコ動で最も一般的な形式だった。
- H.263よりも動きに強く、高画質が望める。
- ただ、他のコーデックよりもエンコード時間がかなり長いので注意。
- AVC/H.264(.MP4)
- MP4コンテナでSMILEVIDEOに再エンコなしでアップできる(制限あり)。
- 携帯サイズからフルHDにまで対応している注目のフォーマット。VP6よりも高圧縮で高画質が望める。
- ニコ動で最も一般的な形式。
- 低スペックのPCでは再生時に重くなる。
- Divx(.divx .div .avi)
- 広く普及している高画質・高圧縮フォーマット。かつてのStage6の動画の形式。
- XviD(.avi .mp4)
- Divx形式とほとんど同じフォーマット。非常に高速なエンコードが可能。希にバグも。
- 中間出力(例:他の形式→Xvid→VP6)などにもよく使われる。
- Windows Media Video(.wmv)
- マイクロソフト社の独自の圧縮形式。超高圧縮・高画質だが、扱いが難しいので注意。
- huffyuv
- 無圧縮aviの品質を劣化させずに容量を半分くらいにする(ロスレス)。
- 動画キャプチャ、映像作成の中間出力によくつかわれる。
- MPEG1,MPEG2(.mpg .m2v)
- 家電なんかだと現役だが圧縮効率では時代遅れ。エンコードは速い。
- TVやDVDからの入力時とDVDビデオの製作時しか使われない。あとHDVぐらいか。
音声 †
- MPEG Audio Layer-3(.mp3)
- 最も扱いやすく、信頼性の高い音声コーデック。
- FLVコンテナの音声に採用されている。
- AAC(.mp4 .m4a .m4b .m4p .3gp .3g2 .aac)
- 主にAAC-LCとHE-AACとがある。
- MP4コンテナの音声に採用されている。
- 高圧縮&高音質なので、地デジの音声などにも使われている。
- Vorbis(.ogg .oga .ogx)
- パテント(ライセンス料)フリーのコーデックで、MP3より音質が高いといわれている。
- ちなみに、Oggは音声や動画を格納するコンテナでコーデックではない。
- 今のところニコニコ動画のエンコードなどでは使わない。自分でとっておくのに使うくらいか……。
- 実際の統計データを取るとmp3と大して変わらないと言われている
- Windows Media Audio(.wma)
- マイクロソフト社の独自の音声圧縮形式。MP3より音質がいいとされている。
変換設定による画質の違い †
以上のように、SMILEVIDEOには色々なコーデックの動画をアップロードすることができますが、それぞれ品質に大きな違いがあります。また、同じコーデックでも変換設定をちょっといじるだけで画質がかなり変わります。
◇変換前の動画
映像 848x480 24Bit AVC/H.264 29.97fps 5630f 1551.11kb/s
音声 MPEG4-AAC 44.10kHz 16Bit 2ch 120.41kb/s
◇コーデックと画質
- 共通設定
映像 512x288 24Bit 29.97fps 5630f 600kbps 2pass
音声 44.1kHz 16Bit 128kbps 1pass
- 各設定と結果
- 考察
- 総合的な画質
H.264>>VP6>>>>>H.263
- 変換設定の正確さ
H.264>H.263>>>>VP6
- 変換の速さ
H.264≒H.263>>>VP6
- 結論
やはりH.264強し。VP6は、時間もかかるうえに、設定と結果が大きくずれるのが大変不便。でも、VP6も粘れば良くなる可能性は十分ある。低ビットレート時や、素材によってはH.264よりもVP6やH.263の方が優れる場合もある(低ビットレートの静止画ではVP6が有利)。
エンコード †
低画質エンコード †
ニコニコ動画用に最適化したFLVを用意せず、サーバにエンコードやリサイズを任せる方法です。「PC初心者でもわかりやすい」「作業が速い」「40分や90分といった長時間動画の投稿も可能」という長所はありますが、画質ではどうしても劣ります。
- 投稿する動画を用意します。
- 動画のアスペクト比(縦と横の比)が、4:3か16:9かを調べます。調べるには「AVIcodec」や「真空波動研」などを使うといいです。もしもこれ以外のアスペクト比だった場合は、拡大縮小とかアスペクト比とか黒べたとかメモを参考に、動画サイズを変更して下さい。
- SMILEVIDEOの「動画の新規アップロード」ページを開いて、投稿する動画と、そのアスペクト比を選択して、投稿ボタンを押します。
- SMILEVIDEOのサーバー側でエンコードされるので、しばらく待ちましょう。サーバーの混み具合、及び動画の容量によっては、エンコードに1時間以上かかることもあります。何らかのエラーが発生したら、まず質問する前に真空波動研などで動画が対応形式かどうか、ちゃんと調べて下さい。2回以上アップロードに失敗し、しかもエラーの原因がどうしても分からない場合は、動画の詳細情報を書いて、どこかの質問掲示板に聞いて下さい。
- 動画情報を入力し、ニコニコ動画のプレイヤーで正常に再生できれば成功です。
中画質~高画質エンコード †
YouTube?動画の転載 †
- 保存したflvをそのままアップすると低画質になる。でも画質にこだわらない動画ならこのままでも大丈夫。転載投稿の場合は投稿者コメントに「転載です」などと書き添えるのが望ましい。
- YouTube?動画の保存は視聴に便利なツールやサイトなどを参照のこと。
エンコードの練習によさげなサンプル動画 †
100MBと40MBで使用できるビットレート早見表 †
基礎情報 †
- コンピュータは2進数で計算を行うため、データの大きさの単位の位を2の累乗で区切るほうが都合がよいため、1000に近く、またきりのよい2の10乗 (=1024) ごとに位を変えるのが一般的です*1。以下の一覧では、バイトをB、ビットをbと表記しています。
- 1 B = 8 b
- 1 KB = 1,024 B
- 1 MB = 1,024 KB = 1,048,576 B
- 1 GB = 1,024 MB = 1,048,576 KB = 1,073,741,824 B
- 1 TB = 1,024 GB = 1,048,576 MB = 1,073,741,824 KB = 1,099,511,627,776 B
- ビットレートはbps (bits per second) という単位で表される、データ転送効率のことです。通信の世界では1バイトが8ビットとは限らず、またビットレートが1秒間にある地点を通過したビットの個数と定義されていることから、ビットにSI接頭辞を用いて位をとるのが一般的です(つまり1000ごとに単位が繰り上がります)。動画でもこの慣習にのっとってSI接頭辞で位とりをします。ダウンロードなどで1秒間にどれだけのデータを受信したかを表す際にバイトと2進接頭辞を用いて位をとる(500KB/sみたいな)ことがありますが、その場合、通常はコンピュータ内部で実際に処理されるデータの量をあらわし、ネットワークの速度とは意味合いが違うので注意が必要です。ビットレートはニコニコ動画へのエンコード設定で嫌でも取り扱う単位ですので、よく覚えておきましょう。
計算 †
- ビットレート計算式
ビットレート[bps] = ファイルサイズ[Bytes] × 8 ÷ 再生時間[秒(小数点以下切り捨て)]
- ファイルサイズ[Bytes]
作成したFLVファイル、又はMP4ファイルのサイズです。単位はバイトです。Windowsならば、ファイルの右クリックメニューから「プロパティ」を選択し、「サイズ」のところの()括弧内の(~バイト)と表示されている部分の数字を使います。「ディスク上のサイズ」のほうではありませんので注意しましょう。
- 再生時間[秒(小数点以下切り捨て)]
動画の再生時間です。単位は秒です。小数点以下は切り捨てて計算します。
上限ビットレートとエコノミー回避ビットレートについて †
- ニコニコ動画では、以下のような計算式で上限ビットレートやエコノミー回避ビットレートを判定しているものと思われます*3。
- 上限ビットレート
- プレミア会員
(1024+1)×1024=1049600[bps]
- 一般会員
(640+1)×1024=656384[bps]
- エコノミー回避ビットレート
- FLV
306×1024=313344[bps]
- MP4
240×1024=245760[bps]
40MBで使用できるビットレート(一般会員上限) †
08分31秒: 656384[bps] ビットレート限界 656kbps(一般会員上限)
09分00秒: 621378[bps]
10分00秒: 559240[bps] 目安 : 映像400k・音声128k ステレオ(実写はこのくらい欲しいところ)
15分00秒: 372827[bps]
17分00秒: 328965[bps] 音声320kbpsで上げる際の上限 (映像0.5kbps程度)
17分54秒: 312309[bps] これ以下はVP6エコノミー回避
20分00秒: 279620[bps]
22分45秒: 245820[bps] これ以下はH.264エコノミー回避
25分00秒: 223696[bps] 目安 : 映像130k・音声 64k モノラル(24fpsのアニメなら見れるレベル)
30分00秒: 186414[bps]
40分00秒: 139810[bps] ここまで落とすならFLVにせずWMV以外のAVI系コーデックで100MBにエンコードしてアップした方が良い
50分00秒: 111848[bps]
60分00秒: 93207[bps]
100MBで使用できるビットレート(プレミアム会員上限) †
00分30秒:27962000[bps]
01分00秒:13981000[bps]
01分30秒: 9320666[bps]
05分00秒: 2796200[bps]
10分00秒: 1398100[bps]
13分20秒: 1048576[bps] ビットレート限界 1049kbps(旧プレミアム会員上限)
13分39秒: 1024250[bps] 1000kbps(旧プレミアム会員公式上限)
15分00秒: 932067[bps]
16分30秒: 847332[bps] 828kbps(旧の旧プレミアム会員上限)
20分00秒: 699050[bps]
25分00秒: 559240[bps]
30分00秒: 466033[bps]
40分00秒: 349525[bps]
44分46秒: 312309[bps] これ以下はVP6エコノミー回避
50分00秒: 279620[bps]
56分51秒: 245928[bps] これ以下はH.264エコノミー回避
60分00秒: 233016[bps]
- メドレーや紙芝居なら、映像30kbps・音声64kbpsでもいけると思います。
- こちらも参考にしてみましょう。ニコニコ動画用のビットレート計算ができます。
- Windows上で表示される40MBというのが本当は41,943,040 Bytes (=40.00 MiB) であることに注意。ニコニコ動画では41,943,040 Bytesまでのファイルがアップロードできます。FLV以外のファイルは100MB (104,857,600 Bytes) まで?(100MBの方の制限は未確定。WMVやAVIで130MBまでアップできたという報告あり)
アスペクト比や拡大縮小、黒べた等について †
使用フィルタ †
サイズ設定について †
- 4:3(1280x960、640x480、480x360、320x240、等)
基本的に512x384にリサイズするだけで良い。
- 3:2(720x480)
画面の左右合計16ドット(左8、右8等)をクリッピング(クロップ=カット)して、704x480にしてから512x384にリサイズする。
- 16:9(704x396、352x198、等)
512x288にリサイズするだけで良い。
- 16:9(720x480・スクイーズ)
画面の左右合計16ドット(左8、右8等)をクリッピング(クロップ=カット)して、704x480にしてから512x288 にリサイズする。
- 16:10 (1920x1200 1680x1050等)
512x320にリサイズ後上下に32ドットずつ追加。
- その他のサイズ
- 704x576 ⇒ 469x384+左右に黒べた
- 676x250 ⇒ 512x189+上下に黒べた
- 640x352 ⇒ 512x282+上下に黒べた
- 640x272 ⇒ 512x218+上下に黒べた
- 1280x720⇒ 上下(120)黒べたで1280x960にしてから512x384へリサイズ
- 720x480 ⇒ 上下(48)黒べたで720x576にしてから512x384へリサイズ
補足 †
- アスペクト比は、VirtualDub等は自動で計算してくれます(AviUtlは自動計算してくれません)。
- 512x384にせず、あえて504x378+上下左右に黒べたにしたり、496x372+上下左右に黒べたにすることもあります。これにはサイズを削ることができる他(と言っても1割程度の違い)、絵を小さくすることでビットレートを変えずに画質を高めることができるからです。ニコニコ動画では黒べたをつけるとコメントが映えるという効果もあります。
- 元動画のアスペクト比が狂っていて修正したいが、どうにも比率がわからないって場合は自分の目を信じて調整です(太陽や月など真円の出る場面で調整するのが良いようです)。
- RC移行前後から512x384でアップロードしても左右16ピクセル位の黒ベタが表示上付くようになりましたが、表示範囲の拡大にはならないようです(黒ベタと言うよりただの境界領域なので544x384でアップしても左右に黒ベタが付く)。
- 正確には動画の再生時に縦と横のサイズを読み取り、アスペクト比を変更せず512x384の中で最も大きく表示するようになっています。そのため、512x320や448x384のような動画も、一辺が最大長なので変に拡大されることはありません。
- あらかじめFLV等に変換してある場合は、アップロード時のアスペクト比の設定は再生に関して影響を与えません。アスペクト比設定は、低画質モードの再エンコと、生成されるサムネイルに影響を与えます。黒ベタを付けても付けなくても投稿する動画の比率が4:3なら常に4:3を選択しましょう。16:9を選ぶのは512:288の動画をアップロードする時のみです。また、どちらでもない場合は近い方を選んでおくと良いでしょう。
- 512x384より狭い動画を一辺だけが最大長になるように仕上げることで、一度に処理するドット数が減り、動画の作成にかかる時間を減らし、再生の負荷を減らす(カクカクしづらい動画にする)ことができます。
- 例えば512x320のままなら、(縦の384-320=)64×512ドット分だけ処理が軽くなります。
- 例えば496x372の動画は、横の16ドット分 (496+16=512) か縦の12ドット分 (372+12=384) のどちらかだけ黒ベタを足せば、残る辺のドット分だけ処理が軽くなります。
コメント †
報告などもこちらに投稿してください。
エンコの質問はこっちを見てから→エンコード設定あるある質問箱
こちらも参考にどうぞ→エンコード系質問?を適当に集めた所