MKV(Matroska)ファイルから不要なオーディオストリームを削除しようとしています。これを行う理由は、Windows Media Playerで必要なストリームを手動で選択する必要がないようにするためです。
入力ファイルは、次のffmpeg情報を提供します。
Stream #0.0: Video: mpeg4, yuv420p, 704x396 [PAR 1:1 DAR 16:9], 29.98 tbr, 1k tbn, 29.98 tbc
Stream #0.1(eng): Audio: aac, 24000 Hz, 5.1, s16
Stream #0.2(jpn): Audio: aac, 24000 Hz, 5.1, s16
Stream #0.3(eng): Subtitle: 0x0000
Stream #0.4(eng): Subtitle: 0x0000
Stream #0.5: Attachment: 0x0000
Stream #0.6: Attachment: 0x0000
ストリーム0、1、3(サブ)が必要なため、ffmpegコマンドは次のようになります。
ffmpeg -i input.mkv -map 0:0 -map 0:1 -map 0:3 -vcodec copy -acodec libmp3lame -newsubtitle test.mkv
奇妙なことにエラーが発生します:
At least one output file must be specified
字幕を削除する:
ffmpeg -i input.mkv -map 0:0 -map 0:1 -vcodec copy -acodec libmp3lame test.mkv
私にこれを与えます:
Number of stream maps must match number of output streams
「マップ」オプションがどのように機能するのか本当に理解していないようです。誰かがそれを理解するのを手伝ってくれますか?
--atracks
オプションがもう存在しないように見えますが、代わりに--audio-tracks
またはを使用する必要があり--video-tracks
ます。