動画のCodecを変更したい。目的は2つ。

 まずは「iPadで閲覧可能な動画形式に変換する」こと。保管しているビデオやアニメはほとんどがDivX系であり、PCやPS3では閲覧できるが、iPadではできない。WebM(VP8 + Vorbis)の普及が未確定の現在、やっぱり、AVC(H.264)/AACに変換するのがよいのでしょうかね。

 次に「動画ファイルサイズを縮小する」こと。個人的にはそれほど画質にはこだわりがない。一見してわからない程度の劣化であれば、BitRateを下げてHDDの空き容量を優先したい。

#br

* MediaCoder 0.7.5.4792 [#vd143a49]
* MediaCoder 0.8.0.5050 [#vd143a49]
- http://www.mediacoderhq.com/
- [[Super ©:http://www.erightsoft.com/SUPER.html]]よりも、初心者に易しくなったんじゃないかな。
- MediaCoder Full EditionをDonwload,installする。
- presetsファイルを利用するなら、Setup Wizardは省略してもよい。

** 標準Presets [#u38374eb]
#ref(http://jomura.net/archive/2010/my-presets_mp4.xml);
 品質重視設定。24min.動画のencode(VBR)に135min.かかる。(Powered by Pentium4 3GHz) 24min.動画のencode(VBR)に55min.かかる。(Powered by Core 2 Duo 2.4GHz) 
- overall.ui.rss = "Never"
- overall.ui.stats = "Never"
-- 余計な窓は開かない。
- overall.ui.noWelcome = "4792"
- overall.ui.noWelcome = "5050"
-- アプリ起動時のSetup Wizardは不要。Build番号を指定する。
- %%overall.ui.trayConfig = "Disable tray icon"%%
-- %%タスクトレイに格納すると、アプリがエラー終了することがある? タスクバーのみを使うように変更。%%
- overall.task.destdir = "D:\"
-- 環境に合わせて適当に。
- overall.task.interval = "180"
-- transcode中は100%に張り付くProcessorに、休止時間を与えましょう。
- overall.audio.channels = "Original"
- overall.audio.format = "LC-AAC"
- overall.audio.encoder = "FAAC"
-- 「Nero Encoder + HE-AAC V2」よりも「FAAC + LC-AAC」の方が、音質劣化が少ない場合があるようだ。(体感)
--  [[高ビットレートの場合、LCの方が高音質:http://zoome.wikiwiki.jp/?Encode]]らしい。
- %%overall.video.mode = "3-Pass"%%
-- 品質 > エンコード時間
-- %%「"2-Pass"と変わらない」意見が多い中、このPresetsだと差異が視認できましたので。%%
- %%overall.video.bitrate = "512"%%
-- このBitrateで、動画ファイルサイズは約100MB/24min. (高速な流体描写のない)1280x720のアニメなら、十分キレイだと思う。
-- iPadでコマ落ち・ノイズ等を確認して、必要なら"768 Kbps"、更に"1024 Kbps"以上を試す。
- overall.video.mode = "VBR"
-- [["3-Pass"よりも高圧縮な場合がある。:http://nicowiki.com/%E6%8B%A1%E5%BC%B5%20x264%20%E5%87%BA%E5%8A%9B%EF%BC%88GUI%EF%BC%89%E3%81%AE%E8%A8%AD%E5%AE%9A%E9%A0%85%E7%9B%AE%E3%81%A8%E3%81%9D%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.html]]
- overall.video.quality = "50" (crf=25)
-- iPadでコマ落ち・ノイズ等を確認して、必要なら変更。
-- 実写なら"60(crf=20)"以上必要かも
-- アニメは調査中。
- overall.playback.preview = "Disabled"
-- エンコード中の無用な負荷は極力減らす。
- audioenc.faac.quality = "72"
-- 元audioのBitRateが64bps程度なら"48"、128bps以上なら"72"。音質重視の場合は"96"or"128"とか。
- audioenc.faac.container = "MP4"
-- %%Defaultの"AAC"だと、生成されたAudioファイルを再利用・再結合できないみたい?%%
--- build4740ぐらいから、一時ファイルが残らなくなったので、ど~でもよい?
- videoenc.x264.profile = "High"
- videoenc.x264.level = "40"
- videoenc.x264.preset = "Slower"
-- tune="Animation"とした場合など、refが大き過ぎる("16"とか)とiPadで再生できない。その場合、"Slow"に変更する。
- %%videoenc.x264.qp = "5"%%
-- 「useful rangeは10~20」と説明されているが、これくらい小さくした方が画質が良い気がする。
- videoenc.x264.frameref = "6"
- videoenc.x264.bframes = "6"
-- 3の倍数が良いらしい?([[参考サイト:http://blog.mura.com/blogs/index.php/charlie/2009/09/05/x264_bframe_params]])
-- "3"だと圧縮率低下→画質低下。"9"だとiPadでの再生時にモザイク増加。(のような気がする)
- videoenc.x264.b_adapt = "Optimal"
-- 必須。
- %%videoenc.x264.b_pyramid = "Normal"%%
-- [[高圧縮率を得るため画質を犠牲にする:http://www.losttechnology.jp/Movie/x264.html]](?)らしいし、2frame音ズレが発生するらしいので廃止。
- %%videoenc.x264.qpmin = "2"%%
-- 画質重視のため小値とするが、[["1"はイマイチ:http://nicowiki.com/%E6%8B%A1%E5%BC%B5%20x264%20%E5%87%BA%E5%8A%9B%EF%BC%88GUI%EF%BC%89%E3%81%AE%E8%A8%AD%E5%AE%9A%E9%A0%85%E7%9B%AE%E3%81%A8%E3%81%9D%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.html#ta37a34f]]っぽい。
- %%videoenc.x264.qcomp = "90"%%
-- Bitrateの変動幅を大きく、画質の変動を小さく。
- videoenc.x264.me = "Uneven Multi-Hexagon"
-- [[umhは、diaやhexと同程度に速く、esaやtesaと画質差が少ない:http://nicowiki.com/%E6%8B%A1%E5%BC%B5%20x264%20%E5%87%BA%E5%8A%9B%EF%BC%88GUI%EF%BC%89%E3%81%AE%E8%A8%AD%E5%AE%9A%E9%A0%85%E7%9B%AE%E3%81%A8%E3%81%9D%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.html]]らしい。
- videoenc.x264.me_range = "24"
-- 大きくし過ぎてもダメらしい。
- videoenc.x264.subq = "9"
- videoenc.x264.mixed_refs = "true"
- videoenc.x264.fast_pskip = "false"
- videoenc.x264.dct_decimate = "false"
- videoenc.x264.gh = "true"
-- iPad用Presetが"true"だったから。
- %%audiofilter.resample.downSamplingOnly = "true"%%
-- resampleしないので削除。
- videofilter.scale.width = "1280"
- videofilter.scale.height = "720"
-- 上記は、通常は利用されない。Scale Filter有効時に適応される。
- videofilter.frame.fps = "24000"
- videofilter.frame.fpsScale = "1001"
-- 上記は、通常は利用されない。Frame Filter有効時に適応される。

** 元動画に依って、標準Presetsから変更するパラメータ [#t051fd9b]

*** 元videoがアニメーションの場合 [#t8533429]
- videoenc.x264.tune = "Animation"
-- "Animation"にするとrefが2倍になり、iPadで再生できないことがある。(ref > 10)の場合、videoenc.x264.preset = "Slow" に変更する。
- videoenc.x264.deblock = "false"

*** 元videoが実写の場合 [#gfdafbe0]
- videoenc.x264.tune = "Film"
- videoenc.x264.nr = "1000" & videoenc.x264.psy = "false"
-- noisyな動画の場合には、nrが必須か!?

*** 元videoのresolutionが1280x720以上の場合 [#xace43a1]
- videofilter.scale.enabled = "Yes"
-- 1280x720以上は、iPadで正常に再生できないため。
-- 元動画のaspect比が16:9以外の場合は、videofilter.scale.width・videofilter.scale.heightも変更する。

*** 元videoのFrame Rateが適切でない(119fpsとか)場合 [#la8fa0af]
- videofilter.frame.enabled = "true"

*** 元videoと比較して、画質劣化が視認できる場合 [#r32ab937]
- %%overall.video.bitrate = "768 Kbps"%%
- %%それでも不足なら、"1024 Kbps"以上を試す。%%
- overall.video.quality = "50" (crf=25)
- それでも不足なら、"56(crf=22)"以上を試す。

*** 元audioの音量が小さい場合 [#q7782fe8]
- audiofilter.volume.normalization = "Mode 1"

*** 元audioのbitrateに合わせて音質を調整したい(or 音質を重視したい)場合 [#t560d504]
- audioenc.faac.quality = "48" or "96","128"
-- 元audioのBitRateが64bps程度なら"48"、128bps以上なら"72"。音質重視の場合は"96"or"128"とか。

*** 元audioをそのまま使いたい場合 [#ha876ddd]
- overall.audio.copy = "true"
-- 元audioがAACで、BitRateが適切なら、re-encodeしない。

*** buffer overflowが発生する場合 [#vd0493a6]
- %%overall.video.bufferSize = "200"以上%%
-- %%はっきりしないが、発生しにくくなるような気がする。%%
- overall.generic.priority="Normal"なら、"Auto"や"Lower"に変えると発生しにくくなる。

** 処理時間 (例 : 56secの動画) [#r704d037]
#ref(ProcessTimes.png);


* Air Video Server 2.4.2 [#d3caee29]
- http://www.inmethod.com/air-video/
- iPadやiPhone側のClientアプリからconvert(Transcode)を指示する。
- max width, max heightを最大値(1024x768(iPad))、Qualityを"100%"にしてconvertすると、ファイルサイズが元のと同じ程度のAVC/AAC動画ができる。
- 30min.動画のencodeに50min.程度。(Powered by Pentium 4 3GHz)
- 私の要件には合わない。(ファイルサイズが小さくならない & rateやresolutionをできるだけ変えたくない)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS