| 次の記事 |
MP4の映像/音声をコマンドラインでmuxできる「MP4Box」を試す。
カテゴリ : 雑談 タグ :最近ちょっとニコニコ動画用のエンコード方法の変更を実験しています。
私は TMPGEnc XPress4.0 で映像を編集することがほとんどなのですが、
音声は全く別のソフト(GoldWave)で編集して最後に mux(多重化) しています。

この多重化の作業がTMPGEncではMPEG-1/2しかできないという制約があり、
そのために今までは一度中間で大きめのビットレートの MPEG-1 を作って、
そこから最後にmencoderでFLVに変換するという2度手間な方法を取っていました。
もうちょっと何とかならないかと思っていたところ、mp4ファイルを
muxするソフトがありましたので、これを試してみることにしました。
コマンドラインから利用する 「MP4Box」 (Googleで検索) がそれです。

コマンドラインから映像ファイル(.mp4等)、音声ファイル(.m4a等)を
指定するとそれを多重化して1つのmp4にしてくれます。これは便利です。
これならmuxだけのために中間ファイルとしてのMPEG1を噛まさなくても
良くなります。
まずTMPGEncで最初から完成版としての映像ファイル(.mp4)を出力します。
最終的にニコニコ動画の上限である 1Mbps を超えないように、
映像800Kbps、音声128Kbps を目安にしてみますがが、ここでは映像は
平均800Kbps ではあるものの、VBRの上限は 2,000Kbps まで
ひっぱってみます。出力形式は「映像のみ」で出力します。

音声は音声で「音声のみ」の.mp4(AAC)として出力します。
ただ、TMPGEncはソースとして音声のみのファイル(.wav)を
受け付けてくれませんので、一旦別ルートで同じ長さの映像と
muxしたmpegかaviかにしないとこのエンコードができません。。。
規格に沿うファイルが別ソフトで作れるならそのほうが良いかもしれませんね。

これで最初の「MP4Box」でmuxすると見事に目的の映像800Kbps+音声128Kbps
のmp4ファイルが出来上がりました。
実際の実験データで比較してみるとこんな感じになります。こちらが
ソース ⇒ MPEG-1(5Mbps) ⇒ FLV 800Kbps という過程を経たもの。
で、こちらが今回の ソース ⇒ MP4 800Kbps と変換回数を抑えたものです。
| MPEG1 5Mbps ⇒ FLV 800Kbps | MP4 800Kbps |
|---|---|
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
ビットレートは全く変わりませんが、MPEG1⇒FLV版では、映像の動きの
ある部分で小さめのブロックノイズが出て 映像が滲んだように見えて
いたものが、MP4版ではかなり綺麗に見えるようになっています。
FLVとMP4の差ではなく、途中でを噛ませたMPEG1が悪さをしていたのでしょう。
こうした微妙な工程の差で品質が変わるのも面白いものですね。
投稿者 CK : 記事URL | 雑談 | | 2009/06/20 23:59
« USBサブディスプレイにタッチパネル付き! 「MiMo UM-740」の使いどころ | トップに戻る | Product Advertising API の秘密鍵とクライアント型ソフトに関する公式見解 » |
▼ はてなブックマークのコメント ▼
▼ コメント ▼
ご自由にコメントください(=゜ω゜)ノ
※管理人は多忙のためお返事はほとんどできません(スミマセン)。スパムおよび本文と無関係なコメントは削除対象になる可能性があります。
▼ twitterのコメント ▼
▼ トラックバック ▼
このエントリーのトラックバックURL:

















