Windows 11でMTS動画の音が出ない原因|同じ25H2でもAC-3を再生できるPCとできないPCがある

社内の研修動画(.mts)を再生すると、映像は映るのに音声だけ出ないという問い合わせがありました。確かに音声は再生されず、ファイルの不良かと思いましたが、別のPCでは正常に再生できました。

再生できないPC、できるPCを確認すると両方とも Windows 11 25H2、OSビルド 26200.9711。調べてみると、Windows 11 24H2以降の AC-3コーデックの標準搭載廃止が関係していました。今回は原因の調査から、VLCでの切り分け、FFmpegによるMP4変換までを紹介します。

目次

同じWindows 11 25H2なのにMTSの音が出ない

Windows標準のメディアプレイヤーでは、次のメッセージが表示されました。

サポートされていないAC3形式でエンコードされています。ビデオは引き続き見ることができます。

別のMP4では音が出るため、スピーカーの故障ではなさそうです。そこで、再生できるPCとできないPCで winver を確認しました。

項目PC APC B
Windows11 25H211 25H2
OSビルド26200.971126200.9711
MTSの音声再生できる再生できない

WindowsのバージョンもOSビルドも同じなのに、結果が異なります。

原因は24H2以降のAC-3コーデックの扱い

AC-3(Dolby Digital)は、AVCHD動画などで使われる音声コーデックです。Microsoftによると、Windows 11では次のように扱いが変わりました。

Windowsの導入経路AC-3の扱い
23H2以前Windowsに標準搭載
23H2以前 → 24H2 → 25H2従来のAC-3コーデックが保持される
24H2以降を新規インストールAC-3は標準搭載されない
メーカーが別途インストール再生できる場合がある

ポイントは現在のバージョンではなく、以前のWindowsからAC-3を引き継いだかどうか。

また、24H2から25H2への更新には有効化パッケージ(KB5054156)が使われ、両バージョンは共通のコアOSを利用します。したがって、25H2になっただけで従来のコーデック構成が一律に初期化されるわけではありません。

VLCではMTSの音声も正常に再生できた

同じMTSファイルを VLC media player で再生したところ、映像も音声も正常でした。ファイルの音声が壊れているのではなく、Windows標準アプリ側のコーデック対応が問題と考えられます。

ただ、今回は複数の職員が見る研修動画のため、全員のPCへVLCを導入する代わりに、音声をAC-3からAACへ変換したMP4にしました。

FFmpegでMTSをMP4へ変換する

MTSとMP4は映像・音声を収めるコンテナー形式です。拡張子を変更するだけでは音声コーデックは変わりません。 今回はFFmpegでAACに変換します。

1. FFmpegとFFprobeを使用できるようにする

PowerShellで確認します。

ffmpeg -version
ffprobe -version

私のPCでは認識されませんでしたが、以前ダウンロードしたFFmpegが C:\ffmpeg にありました。そこで実行ファイルを検索し、現在のPowerShellだけPATHを追加しました。

$ffmpeg = Get-ChildItem "C:\ffmpeg" -Filter "ffmpeg.exe" -Recurse -File |
    Select-Object -First 1 -ExpandProperty FullName
if (-not $ffmpeg) { throw "ffmpeg.exe が見つかりません" }

$bin = Split-Path $ffmpeg -Parent
if (-not (Test-Path (Join-Path $bin "ffprobe.exe"))) {
    throw "ffprobe.exe が見つかりません"
}
$env:Path = "$bin;$env:Path"

ffmpeg -version
ffprobe -version

これで両方のコマンドを実行できました。使用したのは2025年1月13日付のFFmpegビルドです。PATHの変更はこのPowerShellセッション限りです。

2. コーデックを確認して変換する

まずFFprobeで動画内のコーデックを確認します。

ffprobe -v error -show_entries stream=codec_type,codec_name -of json "input.mts"

映像がH.264なら、映像をコピーして音声だけAACに変換できます(入力ファイルに映像・音声が各1ストリーム以上ある前提)。

ffmpeg -i "input.mts" -map 0:v:0 -map 0:a:0 -c:v copy -c:a aac -b:a 192k -ac 2 "output.mp4"

-c:v copy は映像を再エンコードせずコピー、-c:a aac は音声をAACへ変換、-b:a 192k は音声192kbps、-ac 2 はステレオ化を指定します。

映像をそのままMP4に格納できない場合は、映像もH.264へ変換します。

ffmpeg -i "input.mts" -map 0:v:0 -map 0:a:0 -c:v libx264 -preset medium -crf 20 -c:a aac -b:a 192k -ac 2 "output.mp4"

後者は再エンコードに時間がかかり、画質にも影響します。どちらも音声を2チャンネルに変換するため、サラウンド音声を残したい場合は設定変更が必要です。

3. 複数のMTSを一括変換する

今回はPowerShellスクリプトで指定フォルダとサブフォルダのMTSを検索し、MP4へ一括変換しました。既存のMP4は上書きせず、元のMTSも残す設計です。変換後のコーデックも検査します。

まず対象を確認します。

.\Convert-MtsToMp4-public.ps1 -Root "D:\Videos" -Preview

問題なければ -Preview を外して実行します。

.\Convert-MtsToMp4-public.ps1 -Root "D:\Videos"

4. PowerShellスクリプトが実行できない場合

私の環境では、ダウンロードしたスクリプトが未署名のため実行を拒否されました。まず実行ポリシーを確認します。

Get-ExecutionPolicy
Get-ExecutionPolicy -List

実効ポリシーが RemoteSigned で、ファイルの内容と入手元を確認できている場合は、ブロック解除で実行できることがあります。

Unblock-File -LiteralPath ".\Convert-MtsToMp4-public.ps1"

AllSigned など組織の制限がある場合は解除せず、管理方針に従ってください。必要に応じてFFmpegのコマンドを直接実行します。

MP4へ変換した結果

再生方法映像音声
MTS+Windowsメディアプレイヤー○×
MTS+VLC○○
変換後MP4+Windowsメディアプレイヤー○○
変換後MP4+Windowsフォト○○

VLCなら元のMTSで再生でき、変換後のMP4はWindows標準アプリでも音声が出ました。 複数のPCに新たなプレーヤーを導入せず、研修動画を共有できる状態になりました。

2026年9月のWindows Update不具合とは別件

2026年9月22日の更新(KB5124010)以降、AC-3のデコードを使用する一部アプリが予期せず終了する問題も発生しましたが、10月13日のKB5127648以降で修正されています。

今回はアプリが終了するのではなく、音声だけ再生できない症状です。24H2以降のAC-3標準搭載廃止によるものと整合し、更新プログラムの不具合とは区別して考えます。

まとめ

同じWindows 11 25H2・同じOSビルドでも、アップグレード履歴やメーカーの導入状況によって、AC-3を再生できるかが異なる場合があります。

今回はVLCでファイルを切り分け、FFmpegで音声をAACに変換することで解決しました。MTSの映像だけ再生できる場合は、まずコーデックを確認するのが近道です。

参考リンク

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメントはこちら

コメントする

目次