java如何实现把两首MP3一系列的帧进行合并

/ Java / 没有评论 / 1372浏览

java如何实现把两首MP3一系列的帧进行合并

MP3文件有Header,直接合并文件,会导致MP3无法播放,需要把文件2的Header剔除。请参考以下代码:

try {
  FileInputStream fistream1 = new FileInputStream(_file_name);
  File f = new File(new File(_file_name).getParent()+"/final.mp3");
  if(!f.exists())
  {
    f.createNewFile();
  }
  FileOutputStream sistream = new FileOutputStream((new File(_file_name)).getParent()+"/final.mp3");
  int temp;
  int size = 0;
  temp = fistream1.read();
  while( temp != -1)
  {
    sistream.write(temp);
    temp = fistream1.read();
  };
  fistream1.close();
  FileInputStream fistream2 = new FileInputStream(temp_file);
  fistream2.read(new byte[32],0,32);
  temp = fistream2.read();
  while( temp != -1)
  {
    sistream.write(temp);
    temp = fistream2.read();
  };
  fistream2.close();
  sistream.close();
} catch (IOException e) {
  e.printStackTrace();
}