1

我正在尝试在 Android 中构建一个基本的视频编辑器,它将获取多个视频文件,并简单地将它们一个接一个地写到一个视频文件中,我尝试创建一个循环来获取所有较小的剪辑并编写它们到一个大文件,但是这只给了我一个损坏的文件,而不是按照我希望的方式将所有文件写入更大的视频,我该如何做到这一点?下面是我为此编写的代码,任何帮助都会有很大帮助,谢谢

File[] files = tempDirectory.listFiles();

    if (files != null) {

        try {

            for (File f : files) {

                FileOutputStream fileOutput = new FileOutputStream(assembleFile);

                InputStream is = new FileInputStream(f);

                byte[] buffer = new byte[1024];
                int bufferLength = 0;

                while ((bufferLength = is.read(buffer)) > 0) {
                    // add the data in the buffer to the file in the file
                    // output
                    // stream (the file on the sd card
                    fileOutput.write(buffer, 0, bufferLength);
                }
                // close the output stream when done
                fileOutput.close();
                is.close();

            }

        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
4

1 回答 1

0

您无法粘贴期望生成单个工作视频的视频文件。尝试使用视频处理库,例如这个问题中提到的那些:Libraries / tutorials for manipulating video in java

于 2013-06-14T00:05:40.637 回答