web-dev-qa-db-ja.com

aviファイルのサウンドトラックを別のaviファイルのサウンドトラックに置き換える方法は?

サウンドトラックが壊れている高解像度のビデオがあり、次にサウンドトラックが機能する低解像度のビデオがあります。高解像度ビデオと低解像度ビデオサウンドトラックを組み合わせたい。

サウンドトラックやビデオを再エンコードせずにこれを行うにはどうすればよいですか?

2
Rookie

コマンドラインから実行する場合は、 FFmpeg (無料、オープンソース、クロスプラットフォーム)を使用します。

まず、正しいビデオファイルからサウンドトラックを抽出します。オーディオはMP3 *だと思います。

ffmpeg -i correct.avi correct.mp3

次に、壊れたファイルのビデオビットストリームを新しいサウンドトラックとマージします。

ffmpeg -i broken.avi -i correct.mp3 -map 0:0 -map 1:0 -c:v copy -c:a copy out.avi

これにより、ビデオとオーディオのビットストリームが再エンコードされません

*これは、単純なffmpeg -i correct.avi呼び出しを実行し、オーディオストリームを探すことで確認できます。または、 MediaInfo を使用できます。拡張子(ここでは、.mp3)は実際にオーディオと一致する必要があります。AVIファイルにMP3オーディオが含まれていないが、他のものがある場合は、それに応じてコンテナを変更する必要があります。

2
slhck

これは、VirtualDub、AviDemux(追加のコーデックは必要ありません)、またはXmediaRecodeのいずれかを使用して実行できます。まず、できればGoldWave 4を使用して、1つのファイルからオーディオをリッピングする必要があります。これは、圧縮されていないWAVとして保存できるため、同期するために必要です。次に、オーディオがビデオと正確に同じ長さであることを確認します。ここでは数千秒を話します。たとえばの違い0.234秒は大丈夫です、1秒以上のプロリーは悪いでしょう。

第三に、それらが同じである場合は、VdubまたはAviDemuxのいずれかでビデオを開き、[異なるソースからオーディオを追加]オプションを探します。 WAVファイルを追加します。同期している場合は、圧縮を使用してムービーを小さくすることができます。

GoldwaveでWAVファイルの長さを調整できます。それらが完全に異なり、開始と終了が完全に異なる場合でも、これを行うことができます。しかし、それは難しいです。

0
user246942

VirtualDub :をご覧ください。

VirtualDubの機能

  • ビデオに触れずにオーディオトラックを削除して交換します。
0
Der Hochstapler

avidemux これは copy モードで行う必要があります。または、 オーディオを削除 して、に追加し直すことができるはずです。

代替案を探したい場合は、オーディオとビデオを分離してそれらを分離し、それらを一緒に多重化することになります。

0
Journeyman Geek