これが取引です... mkvextract.exeを使用してバッチスクリプトを介してmkvコンテナーから特定のトラックを抽出しようとしていますが、考えることができる唯一の方法は、バッチを介してトラックの一部を抽出し、残りを手動で抽出することです(これにはコストがかかります)私に多くの時間)。これを達成するためのより優れた、よりスマートで高速な方法は実際にありますか? 抽出する必要があるのは次のとおりです。
フォルダー「subs」内の元の名前のすべての字幕トラック
フォルダー「atchmnts」内の元の名前のすべての添付ファイル(更新:これを管理しました)
およびフォルダー「xml」内のXML形式の元の名前のチャプタートラック(更新:xDeathwingにthxを実行) . tho、元の要求どおりの元のファイル名ではありません。この場合は問題ありません。mkv ごとに常に 1 つの xml ファイルがあるためです)
私はこれまでのところこれでいます:
@echo off
mkvextract.exe attachments "video.mkv" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
mkvextract.exe chapters "video.mkv" --redirect-output chapters.xml
mkvextract.exe --ui-language en tracks "video.mkv" 0:"%CD%\%~sub.ass" (Update: this one
actually working, but I can extract only one track instead of all of them and also its not
keeping original filename as given by mkvextract - "video_track4_eng.ass" - and also
I assume this will work only if track ID/language was defined during muxing process)
md "atchmnts"
md "subs"
md "xml"
move "*.ttf" "atchmnts\"
move "*.otf" "atchmnts\"
move "*.png" "atchmnts\"
move "*.srt" "subs\"
move "*.ass" "subs\"
move "*.sub" "subs\"
move "*.xml" "xml\"
pause
exit
https://mkvtoolnix.download/doc/mkvextract.htmlを認識していますが、探しているものを実際に見つけてスクリプトを修正することはできません。