0
我正在開發phonegap應用程序,現在我正在嘗試編寫一個插件來將.amr文件轉換爲.mp3文件。我使用JAVE做到這一點的轉換,雖然它的工作在桌面上它在Android失敗與此異常:在phonegap Android項目中使用sauronsoftware's Jave
java.io.IOException: Error running exec().
Command: [/data/data/<my_package>/cache/jave-1/ffmpeg, -i, /sdcard/<my_filename>.amr, -vn, -acodec, libmp3lame, -f, mp3, -y, /sdcard/<my_filename>.mp3]
Working Directory: null Enviroment: null
我試圖做的轉換是這樣的:
private void convert(String input_file, CallbackContext callbackContext){
File input = new File(input_file);
File output = new File(input_file.replace(".amr", ".mp3"));
Encoder encoder = new Encoder();
EncodingAttributes encodingAttributes = new EncodingAttributes();
AudioAttributes audioAttributes = new AudioAttributes();
audioAttributes.setCodec("libmp3lame");
encodingAttributes.setAudioAttributes(audioAttributes);
encodingAttributes.setFormat("mp3");
try{
encoder.encode(input, output, encodingAttributes);
input.delete();
callbackContext.success("finished");
}
catch(Exception e){
callbackContext.error(e.getMessage());
}
}
我發現this answer我明白爲什麼發生錯誤,但答案並不提供任何解決方案。有沒有辦法在Phonegap項目中實現這個功能?當應用程序調用插件時,是否需要將ffmpeg庫與插件一起打包並將其複製到正確的文件夾?
/data/data/<my_package>/cache/jave-1
我怎樣才能執行ffmpeg? – patrick