web-dev-qa-db-ja.com

mkvmergeファイル全体をコピーせずにストリーム(字幕など)を追加/インプレースマージ

タイトルがすべてを物語っています。字幕.srtファイルを.mkvファイルに頻繁に追加し、mkvtoolnix/mkvmergeを使用するたびに、入力.mkv全体が出力ファイルにコピーされます。その場でマージを行う方法はありますか?つまり、.srtファイルを既存のファイルの追加のストリームに書き込みますか?

1
Xaser

いいえ、ありません。新しいストリームを追加すると、サブタイトルのように小さい場合でも、ファイルのサイズが大きくなります。これは、ファイルを多重化/逆多重化することによって行う必要があります(つまり、mkvコンテナーを開き、ストリームを追加した後に閉じます)。他にも多くの理由がありますが、フォールトトレランスとバッファの最適化(ストリームの追加後にファイルサイズを最適化する)はほとんどありません。

一方、mkvコンテナは、メタデータが存在するかどうかに関係なく、メタデータにスペースを割り当て/消費するため、メタデータをインプレースで追加/変更できます。

一般に、mkvコンテナの仕様に反するため、必要な処理を実行できるツールはありません。

3
M. Knight