メニュー 閉じる

MPC-HCで音が出ないファイルを再生できるようにする

わたくし、MPC-HC(Media Player Classic Home Cinema)というメディアプレーヤーを愛用しています。
これはMedia Player Classicというプレーヤーの派生バージョンで、他にもMPC-BEと呼ばれる派生バージョンもあります。
MPC-HCは2017年に最後のバージョン1.7.13をリリースした後、開発が終了しています。
なので本当であれば、MPC-BEなどに乗り換えるべきなのですが、何となくMPC-HCを使い続けている状態…

そんなMPC-HCですが、外部コーデックなどを使わずとも多種多様な動画・音声を再生することができます。
内蔵しているスプリッタとフィルタによってこれを実現しているのですが、うまく音声が出ない動画ファイルが存在するというのが、今回の記事です。

発生する事象

MPC-HC v1.7.13で、特定の動画ファイルを再生すると、以下のエラー画面が表示され、音声が出力されません。

警告
MPC-HC はグラフ中の一部のピンを表示出来ませんでした。必要なコーデックかフィルタがインストールされていない可能性があります。

再生しようとしている動画ファイルは、以下の様なファイルです。

  • MPEG-TS形式
  • 動画:MPEG2
  • 音声:AAC

このファイルを、PowerDVDで再生すると問題なく音声が出力されます。
そのためファイルが壊れていることが原因とは言えません。
もしファイルに何らかの不具合があったとしても、MPC-HCで再生させたいという気持ちです。

解決に向けて

さて、冒頭で話したとおりMPC-HCにはスプリッタとフィルタが内蔵されています。
MPC-HCでは、LAV Splitterというスプリッタと、LAV Audio Decoder、LAV Video Decoderというフィルタ(まとめてLAV Filters)を内蔵します。

LAV ○○ Decoderは以前流行ったffdshowと同様に、音声や動画のコーデック集みたいなものです。
それに加えてLAV Filtersにはスプリッタ(ファイルから動画と音声を分離するもの)も用意されています。

今回のエラー画面を見ると、LAV Splitter Source (internail): Audioと書かれています。
また詳細な出力を見ると、Audio: AAC 48000Hz 19ch 174kbpsとあり、19chって何ぞ?状態です。
(このファイルに実際に含まれる音声は2ch Stereoのはずです。)
このことから、スプリッタがファイルの中の音声をうまく認識できず分割に失敗した可能性があると考えられます。

対処法

MPC-HC v1.7.13に含まれるLAV Filtersは0.70.2.1-gitというバージョンです。
現在LAV Filtersは2019年3月にリリースされた、v0.74.1が最新となっていますので、これを使う様にすれば改善する可能性があります。
MPC-HCは内蔵スプリッタとフィルタだけで多くのファイルを再生できるのがメリットですが、別途LAV Filtersを入れるなんて本末転倒ですねw

では実際に導入していきましょう。

  1. 以下のページから最新のLAV Filtersのインストーラーをダウンロードします。
  2. ダウンロードしたらインストールをしてください。
    インストーラーの指示に従えば簡単に導入ができます。
  3. インストールが完了したら、MPC-HCで今回導入した新しいLAV Filtersを利用できるように設定を行います。
  4. MPC-HCを起動します。
  5. Oキーを押下して設定画面を開き、「内部フィルタ」を選択します。
  6. 「ソースフィルタ」と「変換フィルタ」のチェックを全て外し、以下の様な状態にします。
    ここでチェックが付いているものは、内蔵スプリッタとフィルタを利用することになります。
  7. 「外部フィルタ」を選択します。
  8. 「フィルタを追加…」ボタンをクリックし、以下の3つのフィルタを1つずつ追加していきます。

    • LAV Splitter
    • LAV Audio Decoder
    • LAV Video Decoder
  9. 最終的に以下の様になれば、「OK」をクリックして設定を保存します。

以上の設定をした後、問題の動画ファイルを再生してみて、音声が出力されれば無☆事☆解☆決です。

お疲れ様でした。

コメントを残す