如何合并两个mp3文件并将其存储到SD卡?

时间:2014-10-13 12:59:58

标签: android audio mp3 media-player concatenation

我尝试合并两个mp3文件,然后使用下面的网址, How to merge two audio mp3 file in android? Concatenating MP3 files How to merge two mp3 files into one (combine/join) Join two WAV files from Java?

我想合并两个mp3文件。

示例:

File1有25秒长。

File2有15秒长。

然后输出文件应该是25秒长,输出文件必须包含从0秒开始的两个文件音频。

此处文件1和file2存储在sdcard中,文件格式化为.mp3,合并文件也是mp3

请找到以下代码。

File file1=new File(fileName);
File file2=new File(fileName2);
File mergedfile=new File(mergedFile);
mergeSongs(mergedfile, file1,file2);

mergeSongs 功能是。

private void mergeSongs(File mergedFile,File file1,File file2){

        try {
            FileInputStream fis1 = new FileInputStream(file1);
            FileInputStream fis2 = new FileInputStream(file2);
            Log.i("merge",file1+" "+file1);
            Toast.makeText(this, file1.toString()+file2.toString(), Toast.LENGTH_LONG).show();
            SequenceInputStream sis = new SequenceInputStream(fis1,fis2);

            if(!mergedFile.exists()){
                mergedFile.createNewFile();}

            FileOutputStream fos = new FileOutputStream(mergedFile);

            int temp;

             while ((temp = sis.read())!= -1){

                    fos.write((byte)temp);

                }

             fis1.close();
             fis2.close();
             sis.close();
             fos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }

    }

在合并文件中,我只获得了file1数据

我无法理解问题出在哪里。

可以使用媒体播放器吗?

0 个答案:

没有答案