mp3切割机android

时间:2013-03-21 09:59:46

标签: java android

以下代码对我来说很好。由于我正在使用android,我不能使用audiostream类。

           File correct = new File("data1.mp3");
           File file =new File("data.mp3");
               correct.createNewFile();
           FileInputStream in = new FileInputStream(file);
           FileOutputStream out = new FileOutputStream(correct);

           byte[] buffer = new byte[in.available()];


           for(int i=0;i<1000;i++){

               in.read(buffer, 0, 2048);

               out.write(buffer, 0, 2048);

           }

           in.close();
           out.close();

现在,如果我运行以下代码,它给出错误而不能正常工作

               correct.createNewFile();
           FileInputStream in = new FileInputStream(file);
           FileOutputStream out = new FileOutputStream(correct);

           byte[] buffer = new byte[in.available()];

           in.skip(2048);
           for(int i=0;i<1000;i++){

               in.read(buffer, 0, 2048);

               out.write(buffer, 0, 2048);

           }

           in.close();
           out.close();

同样的事情,当我运行此代码时,它给出了错误

               correct.createNewFile();
           FileInputStream in = new FileInputStream(file);
           FileOutputStream out = new FileOutputStream(correct);

           byte[] buffer = new byte[in.available()];


           for(int i=0;i<1000;i++){

               in.read(buffer, 0, 2048);
               in.skip(2048);
               out.write(buffer, 0, 2048);

           }

           in.close();
           out.close();

所以我的实际问题是你如何指定正确的偏移并将帧复制到新的mp3文件?如何获得框架的大小?是否有必要复制一些起始重要的帧?

1 个答案:

答案 0 :(得分:1)

如果要在android中提取音频帧,则必须实现限幅器。 看看this