
wmvでエンコードされた動画をMKVToolNixに読み込ませようとしてもエラーで弾かれるので、なんとか無劣化でmkvに格納したいと思って調べた。
ffmpegを使うと簡単にできるので紹介。
下準備

こちらからReleaseビルドをダウンロード。今回は上記画像のように選択してダウンロードした。
必要なのは中に入っているffmpeg.exeなので、解凍しておこう。
ファイル名 | ffmpeg-4.2.2-win64-static.zip |
ファイルサイズ | 66.0 MB |
MD5ハッシュ | 276BD476C0AD8E8AACB36140C71AD1D4 |
適当なフォルダにffmpeg.exeを入れて環境変数Pathを設定するか、使用するフォルダ内にffmpeg.exeを入れるだけ。
使用オプション
ffmpeg -i input.avi -vcodec copy -acodec copy output.mkv
このように指定するだけで無劣化でコンテナのみ変更できる。
以下のようにやっても同様に変換できる。vcodecやacodecで指定するのは古い表現らしい?
ffmpeg -i input.avi -c:v copy -c:a copy output.mkv
映像も音声もコピーするような今回の場合なら以下のオプションでもいい。とてもコンパクトになった。
ffmpeg -i input.avi -c copy output.mkv
ffmpegのオプションに関して日本語でわかりやすく解説しているブログがあったので紹介。ここでわからないことは公式ドキュメントを読むしかないと思う。
実践

できたファイルがこれ。

このファイルであればMKVToolNixでも読み込んでくれる。とはいえWMAコーデックはunknownになってしまうようだが……。

なぜWMVが読み込めないのか
WMV/WMA をWMコンテナの外で使うことはハックであり、 Microsoft からも警告があったため、 一般に、現在、フリーウェアなどでは WMV(ASF) をサポートしない傾向があります。 MKVToolnix が WMV/WMA をサポートしないのも、一つには権利関係のためです。 現在、Matroska で WMV/WMA は公式にはサポートされていません。
[動画作成Tips] WMA音声のMKV
コメント