Android 我想将我的3gp音频文件转换为.wav格式
我想将我的3gp音频转换为.wav格式。我用ffmpeg转换了那个。在这一点上,它显示了成功,没有任何错误。但是我无法获得最终的输出文件。请帮我解决这个问题 这是我的密码Android 我想将我的3gp音频文件转换为.wav格式,android,audio,ffmpeg,format,audio-converter,Android,Audio,Ffmpeg,Format,Audio Converter,我想将我的3gp音频转换为.wav格式。我用ffmpeg转换了那个。在这一点上,它显示了成功,没有任何错误。但是我无法获得最终的输出文件。请帮我解决这个问题 这是我的密码 sampleDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "/OfficeRecordings/"); if (!sampleDir.exists()) { sampleDir.mkdirs();
sampleDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), "/OfficeRecordings/");
if (!sampleDir.exists()) {
sampleDir.mkdirs();
}
outputFile = sampleDir+"/"+"sample_record.3gp";
finalFile = sampleDir+"/"+"final_record.wav";
final String[] cmd = new String[]{"-y", "-i", outputFile, finalFile};
execFFmpegBinary(cmd);
private void execFFmpegBinary(final String[] command) {
FFmpeg ffmpeg = FFmpeg.getInstance(this);
try {
FFmpeg.getInstance(MainActivity.this).loadBinary(new FFmpegLoadBinaryResponseHandler() {
@Override
public void onStart() {
Log.e("start",".......");
}
@Override
public void onSuccess() {
Log.e("success",".......");
}
@Override
public void onFailure() {
Log.e("fail",".......");
}
@Override
public void onFinish() {
Log.e("finish",".......");
}
});
} catch (FFmpegNotSupportedException e) {
e.printStackTrace();
}
在尝试了这么多方法之后。我找到了解决办法,它工作得很好 最终的FFmpeg-FFmpeg=FFmpeg.getInstance(这个)
try {
ffmpeg.loadBinary(new LoadBinaryResponseHandler() {
@Override
public void onStart() {
Log.d("audio", "starting to load binary");
}
@Override
public void onFailure() {
Log.d("audio", "failed to load binary");
}
@Override
public void onSuccess() {
Log.d("audio", "loaded binary");
try {
ffmpeg.execute(cmd, new ExecuteBinaryResponseHandler() {
@Override
public void onStart() {
Log.d("audio", " starting to get audio " + "");
}
@Override
public void onProgress(String message) {
Log.d("audio", " progress getting audio from ");
}
@Override
public void onFailure(String message) {
Log.d("audio", " failed to get audio ");
}
@Override
public void onSuccess(String message) {
Log.d("audio", " success getting audio from video");
}
@Override
public void onFinish() {
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
e.printStackTrace();
}
}
@Override
public void onFinish() {
}
});
} catch (FFmpegNotSupportedException e) {
// Handle if FFmpeg is not supported by device
}