github项目地址:https://github.com/a-schild/jave2
本人使用示例
1.引入依赖
<dependency>
<groupId>ws.schild</groupId>
<artifactId>jave-core</artifactId>
<version>3.3.1</version>
</dependency>
<dependency>
<groupId>ws.schild</groupId>
<artifactId>jave-nativebin-linux64</artifactId>
<version>3.3.1</version>
</dependency>
2.示例
import ws.schild.jave.EncoderException;
import ws.schild.jave.MultimediaObject;
import ws.schild.jave.encode.EncodingAttributes;
import ws.schild.jave.encode.VideoAttributes;
import java.io.File;
public class VideoTest {
public static void main(String[] args) throws EncoderException {
File source = new File("D:\\test\\a.mp4");
File target = new File("D:\\test\\b.mp4");
AudioAttributes audio = new AudioAttributes();
//音频编码格式
audio.setCodec("libmp3lame");
audio.setBitRate(800000);
audio.setChannels(1);
VideoAttributes video = new VideoAttributes();
//视频编码格式
video.setCodec("libx264");
// video.setBitRate(3200000);
//数字设置小了,视频会卡顿 帧速率
// video.setFrameRate(30);
EncodingAttributes attrs = new EncodingAttributes();
attrs.setVideoAttributes(video);
Encoder encoder = new Encoder();
MultimediaObject multimediaObject = new MultimediaObject(source);
encoder.encode(multimediaObject, target, attrs);
}
}