JAVE2解决exit-code-of-ffmpeg-encoding-run-is-1
JAVE简介
JAVE (Java 音频视频编码器) 库是 ffmpeg 项目的 Java 包装器。开发人员可以利用 JAVE 将音频和视频文件从一种格式转换为另一种格式,也可以分离和转换音频和视频, 也可以调整音频和视频,也可以改变视频大小和比例,还可以获取音视频时长等。JAVE 还支持许多其他格式、容器和操作。
JAVE2简介
JAVE2 是一个小的 Java 库,它将 ffmpeg 包装到 java 类中,它是基于 Carlo Pelliccia 的杰作JAVE实现的。 由于JAVE不再维护,因此现在一般采用JAVE2。JAVE2当前版本替换了 ffmpeg 可执行文件,并修改了代码以使其可以与新的二进制文件一起使用。
JAVE2使用
依赖
1 | // 音视频转码 时长 Java Audio Video Encoder |
工具类
获取音视频时长
1 | import lombok.extern.slf4j.Slf4j; |
资源转换
1 | import lombok.extern.slf4j.Slf4j; |
JAVE2解决exit-code-of-ffmpeg-encoding-run-is-1
在提取视频中音频的时候遇到这个问题,会有少数的视频在提取音频的过程中报错:exit-code-of-ffmpeg-encoding-run-is-1。
解决方法就是不设置setCodec,让AudioAttributes自动选择合适的编码器。
修改之后的代码片段:
1 | // Audio Attributes |