如何在android中的.wav录制开始/结束时修剪/删除第一分钟

时间:2013-10-19 22:02:43

标签: android audio

我试图删除我刚录制的.wav文件的一部分,我知道wav文件包含44个字节的标题数据但我想知道如何从我记录的.wav文件的开头修剪分钟,任何答案将不胜感激。提前致谢, 下面是我的示例代码,当我试图删除10秒(假设它的100000字节)

     byte fileContent[]= new byte[(int)inputFile.length()];
       try {
        fis.read(fileContent);
        } catch (IOException e) {
       // TODO Auto-generated catch block
            e.printStackTrace();
        }// Reads the file content as byte from the list.
        /* copy the entire file, but not the first 6 bytes */
        byte[] headerlessFileContent = new byte[fileContent.length-1000000];
        for(int j=1000000; j<fileContent.length;j++){
            headerlessFileContent[j-1000000] = fileContent[j];
        }
        fileContent = headerlessFileContent;
        /* Write the byte into the combine file. */
        try {
    fos.write (fileContent);
    } catch (IOException e) {
    e.printStackTrace();
        }
        Toast.makeText(this, "End!!!!!!!", Toast.LENGTH_LONG).show();   
    }

1 个答案:

答案 0 :(得分:0)

您正在删除44字节标题以及音频部分的999956字节。你需要做的是:

  1. 将旧文件中的44字节标头复制到新文件
  2. 从旧文件复制到新文件,从位置10000044开始(标题末尾加上10秒)。
  3. 此建议假定标头不包含文件的长度!如果是,那么你必须找出标题的格式,并用新文件的正确长度重写标题