FFmpeg的低精度微调

问题描述 投票:0回答:1

所以,我试图削减了1分29秒视频成每30秒剪辑。预期输出为30秒,30秒,29sec。其结果是35秒,29sec,23sec。

这是我的代码 -

 ArrayList<String> commandList = new ArrayList<>();
            commandList.add("-ss");
            commandList.add("00:00:00");
            commandList.add("-i");
            commandList.add(videoPath);
            commandList.add("-c");
            commandList.add("copy");
            commandList.add("-f");
            commandList.add("segment");
            commandList.add("-segment_time");
            commandList.add("00:00:30");
            commandList.add(TEST.getAbsolutePath());
            String[] command  = commandList.toArray(new String[commandList.size()]);
            execFFmpegBinary(command);

任何想法,我做错了什么?我读的地方,如果在特定位置上的关键帧不存在,它寻求最接近关键帧的位置。

任何解决方案或指导会帮助我。先感谢您。

android ffmpeg video-processing android-ffmpeg
1个回答
1
投票

FFmpeg的将关键帧开始段。当使用-codec copy没有转码,所以必须使用现有的关键帧。有一个在30年代没有关键帧,所以它减少在下一个。

© www.soinside.com 2019 - 2024. All rights reserved.