【问题标题】:Play individually split video files in android在android中播放单独分割的视频文件
【发布时间】:2017-10-01 00:34:55
【问题描述】:

我正在开发一个 android 项目,该项目需要我将视频文件分成一些部分(例如每个 5 mb),然后单独播放这些部分。我已成功将视频拆分为多个部分,但这些部分没有播放。(可能缺少播放器识别的一些播放属性)。如果有人可以仅在代码上下文中提供有关如何在不合并(我的项目所必需)的情况下播放这些单独部分的解决方案。附言。不能使用任何第三方软件制作安卓应用。

代码:-

public static void splitFile(File f) {
    int partCounter = 1;//I like to name parts from 001, 002, 003, ...
    //you can change it to 0 if you want 000, 001, ...

    int sizeOfFiles = 1024 * 1024 * 10;// 10MB
    byte[] buffer = new byte[sizeOfFiles];

    try (BufferedInputStream bis = new BufferedInputStream(
            new FileInputStream(f))) {//try-with-resources to ensure closing stream
        String name = f.getName();

        int tmp = 0;
        while ((tmp = bis.read(buffer)) > 0) {
            //write each chunk of data into separate file with different number in name
            File newFile = new File(f.getParent(), name + "."
                    + String.format("%03d", partCounter++)+".mp4");
            try (FileOutputStream out = new FileOutputStream(newFile)) {
                out.write(buffer, 0, tmp);//tmp is chunk size
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

分割文件:

[ /storage/emulated/0/1493357699.mp4.001, /storage/emulated/0/1493357699.mp4.002, /storage/emulated/0/1493357699.mp4.003, /storage/emulated/0/1493357699.mp4.004, /storage/emulated/0/1493357699.mp4.005, /storage/emulated/0/1493357699.mp4.006, /storage/emulated/0/1493357699.mp4.007, /storage/emulated/0/1493357699.mp4.008 ] 

【问题讨论】:

    标签: android


    【解决方案1】:

    使用 FFMPEG 库分割视频。您的拆分方法可能会损坏视频。 FFMPEG 不会发生这种情况

    ffmpeg -i INPUT.mp4 -acodec copy -f segment -vcodec copy -reset_timestamps 1 -map 0 OUTPUT%d.mp4

    【讨论】:

    • 你能把那个libaray发给我吗
    • 它正在分割视频文件?
    • 这只是 FFMPEG 库的基本设置,对于分割视频,您必须触发命令。你需要研究如何触发命令
    • 我想把文件分割成一些部分
    • 您可以使用以下命令 ffmpeg -i INPUT.mp4 -acodec copy -f segment -vcodec copy -reset_timestamps 1 -map 0 OUTPUT%d.mp4
    猜你喜欢
    • 2013-07-21
    • 1970-01-01
    • 2022-01-16
    • 1970-01-01
    • 1970-01-01
    • 2011-07-06
    • 2012-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多