// 存放视频文件的完整位置,请改为自己电脑的可用目录
private static final String RECORD_FILE_PATH = "E:\\temp\\202111\\28\\camera-"
+ new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())
+ ".mp4";
// 帧录制器
protected FrameRecorder recorder;
@Override
protected void initOutput() throws Exception {
// 实例化FFmpegFrameRecorder
recorder = new FFmpegFrameRecorder(RECORD_FILE_PATH, // 存放文件的位置
getCameraImageWidth(), // 分辨率的宽,与视频源一致
getCameraImageHeight(), // 分辨率的高,与视频源一致
0); // 音频通道,0表示无
// 文件格式
recorder.setFormat("mp4");
// 帧率与抓取器一致
recorder.setFrameRate(getFrameRate());
// 编码格式
recorder.setPixelFormat(AV_PIX_FMT_YUV420P);
// 编码器类型
recorder.setVideoCodec(avcodec.AV_CODEC_ID_MPEG4);
// 视频质量,0表示无损
recorder.setVideoQuality(0);
// 初始化
recorder.start();
}
@Override
protected void output(Frame frame) throws Exception {
// 存盘
recorder.record(frame);
}
@Override
protected void releaseOutputResource() throws Exception {
recorder.close();
}
public static void main(String[] args) {
// 录制30秒视频
new RecordCameraSaveMp4().action(30);
}
名称 | 链接 | 备注 |
---|---|---|
项目主页 | https://github.com/zq2599/blog_demos | 该项目在GitHub上的主页 |
git仓库地址(https) | https://github.com/zq2599/blog_demos.git | 该项目源码的仓库地址,https协议 |
git仓库地址(ssh) | git@github.com:zq2599/blog_demos.git | 该项目源码的仓库地址,ssh协议 |
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/boling_cavalry/article/details/121597278
内容来源于网络,如有侵权,请联系作者删除!