Я пытаюсь объединить два аудиофайла wav в один, используя библиотеку FFMPEG.
Вот команда, которую я использовал для объединения двух аудиофайлов.
String s = "ffmpeg -i "+recordFile+" -i "+audioFromVideo+" -filter_complex amix=inputs=3:duration=first:dropout_transition=3 "+finalAudio;
Ниже мой аудио код слияния:
public void mergeMediaFiles(Context context,String[] cmd) {
FFmpeg ffmpeg = FFmpeg.getInstance(context);
try {
try {
//Load the binary
ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
@Override
public void onStart() {
}
@Override
public void onFailure() {
}
@Override
public void onSuccess() {
}
@Override
public void onFinish() {
}
});
} catch (FFmpegNotSupportedException e) {
// Handle if FFmpeg is not supported by device
}
// to execute "ffmpeg -version" command you just need to pass "-version"
ffmpeg.execute(cmd, new ExecuteBinaryResponseHandler() {
@Override
public void onStart() {
Log.d("ttt", "onStart:merge ");
}
@Override
public void onProgress(String message) {
Log.d("ttt", "onProgress: merge");
}
@Override
public void onFailure(String message) {
Log.d("ttt", "onFailure: stock down");
}
@Override
public void onSuccess(String message) {
Log.d("ttt", "onSuccess: stock up");
File file= new File(finalAudio);
if (file.exists()) {
Log.d(TAG, "onPostExecute: mila bhai");
startPlaying(file.getPath());
}
}
@Override
public void onFinish() {
Log.d("ttt", "onFinish: merge ");
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
//
}
}
}
Когда я пытаюсь запустить этот код. Это всегда вызывает сбой обратного вызова.
Я просто хотел понять, в чем проблема с кодом команды и слияния?