gpt4 book ai didi

JavaCV FFmpegFrameRecorder 视频输出偏红颜色

转载 作者:行者123 更新时间:2023-11-30 07:20:11 29 4
gpt4 key购买 nike

我正在尝试使用 FFmpegFrameRecorder 从一组图像中制作一个视频 .mp4 文件作为更大程序的一部分,因此我设置了一个测试项目,在其中尝试制作一个25fps 的同一帧的 100 个实例中的视频。该程序似乎有效。然而,每次我运行它时,图像似乎都偏红。就像应用了红色滤镜一样。

这是代码片段:

public static void main(String[] args) {
File file = new File("C:/Users/Diego/Desktop/tc-images/image0.jpg");
BufferedImage img = null;
try {
img = ImageIO.read(file);
} catch (IOException e1) {
e1.printStackTrace();
}
IplImage image = IplImage.createFrom(img);
FFmpegFrameRecorder recorder = new FFmpegFrameRecorder("C:/Users/Diego/Desktop/tc-images/test.mp4",1920,1080);
try {
recorder.setVideoCodec(13);
recorder.setFormat("mp4");
recorder.setPixelFormat(0);
recorder.setFrameRate(25);
recorder.start();
for (int i=0;i<100;i++){
recorder.record(image);
}
recorder.stop();
}
catch (Exception e){
e.printStackTrace();
}
}

如果有人告诉我出了什么问题,我将不胜感激。预先感谢您的帮助。

最佳答案

有类似的问题..看来我的问题是没有正确设置pixelFormat。我最终将其设置为

org.bytedeco.javacpp.avutil.AV_PIX_FMT_RGB32_1

现在可以正确导出了!

实际上,从我在代码中看到的,我从未调用 recorder.setPixelFormat();

相反,我在录制时设置像素格式,如下所示:

recorder.record(image,org.bytedeco.javacpp.avutil.AV_PIX_FMT_RGB32_1);

如果这不起作用,我会尝试各种格式 at the source code of the avutil class !

关于JavaCV FFmpegFrameRecorder 视频输出偏红颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37717996/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com