はじめに
多くのスマートフォンバイル端末やゲーム機がMP4動画ファイル(以下”MP4”とする)への対応を謳っているものの、再生できるMP4は機器によってバラバラの状態であるため「MP4が再生できない!」という問題にぶつかりやすく、慣れない内は解決に時間がかかる場合が多い。
MP4が再生できない場合に、わたしが実施している問題の切り分け方法をメモしておく。
問題の切り分けについて、まずはMP4の再生について「ローカル再生ができない」のか「ストリーミング再生ができない」のかで大別する。
ローカル再生ができない場合
Windowsやスマートフォンで、ローカルに保存したMP4が再生できない場合。
- PC上での再生確認
この場合は、まずPCにVLC Player(以下、”VLC”とする)をインストールして再生してみる。VLCは動画(音楽)再生ソフトとしては非常に優秀であり、これで再生できないのであればそもそもファイルが壊れているかMP4の作法に従っていない(動画や音楽の形式や組み合わせがおかしい)ファイルであると考えられる。対策としては動画の作り直しとなる。動画作成の方法は各ソフトの説明サイトを参照のこと。 - MP4の情報を確認
PCで再生できたら、つぎにMP4の情報を確認してみる。
まずは真空波動研Liteを http://www.kurohane.net/ から探してインストール。
続いて、真空波動研Liteを起動してMP4ファイルをドラッグアンドドロップすると下記のような情報が得られる。情報が出なかったり、真空波動研Liteが落ちたりする場合には、MP4ファイルが壊れている可能性がある。- Profile:High@4
- fps:23.98
- ビデオビットレート:2726.14kb/s
- 音声形式:AAC-LC 48.00kHz 2ch
- 音声ビットレート:318.96kb/s
確認したら次のステップへ。
- 機器が再生できるMP4の仕様と突き合わせ
機器が再生できるMP4の仕様を確認し、問題となっているMP4がその機器で再生できる形式なのかを確認してみる。下記は一例。一つでも仕様を逸脱した項目があった場合は再生できないと思ったほうがいい。
その場合は機器に合った仕様でMP4を作り直すこと。
問題となりやすい例を下記に示す。- Profile:Baseline→Main→Highの順に要求が厳しくなる。High Profileをまともに再生できる環境は多くない。(PS3とGalaxy Tabぐらいしか知らない)
- Frame size(画面サイズ):たとえばPSPではFrame sizeが720×480までと制限されているので、それ以上のサイズの動画は再生不可。
- fps:fpsが高すぎると(60fpsとか)、再生できない確率が高くなる。29.97ぐらいまでに抑えておくのが良い。
- ビットレート:たとえばPSPでは768kbpsまでとなっている。
- 音声形式:音声形式にAC-3(5.1ch)を使ったりすると再生できないことが多い。無難なのはAAC 2ch。
などなど。つまり、再生する機器に応じて、MP4の作成には十分注意する必要がある。
ストリーミング再生ができない場合
ストリーミングサーバでトランスコード(MP4をFLVに形式変換して配信しているなど)している場合は別だが、ローカルで再生できないMP4はストリーミングでも再生できない。なのでまずはローカルで再生できるかどうかを確認する(→「ローカル再生ができない場合」を参照)。
しかし、ローカルで再生できるにもかかわらずストリーミングで再生できない場合がある。
これは、エンコーダがストリーミング配信に不適切なファイルを出力してしまうため。下記の説明が詳しい。
http://www.alpha.co.jp/biz/products/dlna/mlplayer/convert_to_mp4.shtml
上記にもある通り、この場合はMP4box(またはYambなどのmp4フロントエンド)を通せば修正が可能だ。再エンコードなどは発生しないので、画質・音質が落ちることはない。
MP4boxをコマンドラインで使用する場合は、
# MP4Box -add [元MP4ファイル名] -new [新MP4ファイル名]
Yambを使う場合は、
- [Creation] – [Click to create an MP4 file (省略)]
- ファイル選択
- [Next]ボタンを押す
でOK。
なお、エンコーダによってはストリーミング配信に適したMP4を出力することが可能になっている。
例えばHandBrakeでは、[Web optimized]にチェックを入れるだけで良い。
補足1:どの機器でも再生できるMP4は作れるのか?
作れる。だが、再生しようとしている機器すべての最大公約数をとることになるので、画質・音質はかなり犠牲となる。
それが嫌ならば、あとは妥協点を探していくしかない。
わたしの場合は、再生環境をWindows PC、PS3、Galaxy Tab(2.3)に絞った。これならば1080p(High Profile)の動画が問題なく再生できる。
補足2:エンコーダはどれを使うべきか?
完全に好みと言っていい。各々が使いやすいソフトを使えばいい。
個人的にはHandBrakeを使っている。正直、mp4のオプションは複雑すぎて全く理解していないが、デフォルトプリセット(High)で満足のいく仕上がりになっている。また、ストリーミングに最適化しやすいのも大きい(前述のとおり、[Web optimized]にチェックを入れるだけで済む。)。
以上
—–
検索用word:MP4 ストリーミング Pogoplug QNAP Qmobile
ピンバック: 【PW以外】Kindle FireHD/HDX7/8.9 【専用】Part27 | rootroid
役に立ちました!ありがとうございます!