社内の研修動画(.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 A | PC B |
|---|---|---|
| Windows | 11 25H2 | 11 25H2 |
| OSビルド | 26200.9711 | 26200.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の映像だけ再生できる場合は、まずコーデックを確認するのが近道です。
参考リンク
- Microsoft:Windows メディア プレーヤー エラーのトラブルシューティング — AC-3の扱いとアップグレード時の保持について。
- Microsoft:Windows 11 25H2の有効化パッケージ(KB5054156) — 24H2から25H2への更新方式について。
- VideoLAN:VLC media player — AC-3対応プレーヤー。
- FFmpeg公式ドキュメント — 映像コピーと音声変換のオプションについて。
- Microsoft:Windows 11 25H2の解決済みの問題 — 2026年9月のAC-3関連不具合と修正状況について。

コメントはこちら