2 つのファイルを連結するにはどうすればよいですか。
2 つのオーディオ パーツがあります (それぞれに同じソースからの約 3 秒のオーディオが含まれています)。これらの 2 つのファイルをマージして、Android メディア プレーヤーでテーマを再生しようとしています。現時点では、以下の方法を使用しています。これは正常に機能しますが、多くの時間がかかります (私のギャラクシー ネクサスでは約 13 秒)。
私の質問は、これをより速く行う方法はありますか?
public static void merge(File audioFile1, File audioFile2, File outputFile){
long timeStart= System.currentTimeMillis();
try {
FileInputStream fistream1 = new FileInputStream(audioFile1);
FileInputStream fistream2 = new FileInputStream(audioFile2);
SequenceInputStream sistream = new SequenceInputStream(fistream1, fistream2);
FileOutputStream fostream = new FileOutputStream(outputFile);
int temp;
while( ( temp = sistream.read() ) != -1)
{
fostream.write(temp);
}
fostream.close();
sistream.close();
fistream1.close();
fistream2.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
long timeEnd= System.currentTimeMillis();
Log.e("merge timer:", "milli seconds:" + (timeEnd - timeStart));
}