ASP.Net から、FFMPEG を使用して、Flash Media Server 上の flv ファイルを単一の MP3 ファイルにミックスする必要がある wav に変換しています。私はもともとFFMPEGでこれを完全に試みましたが、オーディオのみのトラックを単一の結果ファイルに結合できるとは思わないため、最終的にミキシングステップをあきらめました。私は間違いたいです。
現在、FFMPEG を使用して FLV ファイルにアクセスし、オーディオ トラックを wav に抽出して、SOXでそれらをミックスできるようにしています。問題は、オーディオ トラックの 1 つを数秒ずらして同期させなければならないことです。各ファイルは、生徒と教師の間の会話の半分です。たとえば、teach.wav の 3.3 秒後に teacher.wav を開始する必要がある場合があります。両方のトラックが同時に始まる SOX でファイルをミックスする方法しかわかりません。
この時点での私の最善の試みは次のとおりです。
ffmpeg -y -i rtmp://server/appName/instance/student.flv -ac 1 student.wav
ffmpeg -y -i rtmp://server/appName/instance/teacher.flv -ac 1 teacher.wav
sox -m student.wav teacher.wav combined.mp3 splice 3.3
これらのツール (FFMEG/SoX) は、私の最善の調査に基づいて選択されたものですが、必須ではありません。有効なソリューションであれば、ASP.Net サービスが 2 つの FMS flv を入力し、オープン ソースまたは無料のツールを使用して結合された MP3 を作成できます。
編集:delay
SOX
のスイッチを使用してファイルをオフセットできました。
sox -M student.wav teacher.wav combined.mp3 delay 2.8
誰かが FFMPEG/SOX ソリューションを組み合わせたよりも優れたアプローチを持っている場合に備えて、質問を開いたままにします。