作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想为 VideoCapture
设置编解码器。
我找到了THIS LIST编解码器。现在,由于 VideoCapture.set(CAP_PROP_FOURCC, double value)
期望编解码器值是 double
,并且我还没有在 JavaCV 中找到将编解码器转换为 的方法double
值 我想知道如何将相关编解码器传递给 VideoCapture.set(CAP_PROP_FOURCC, double value)
?
最佳答案
迟到总比不来好……
当我意识到从相机中获取数据作为 mpeg 流时(默认 YUY2 约为 10FPS,mpeg 约为 30FPS)时,我遇到了同样的问题。设置 FOURCC 的技巧是,首先确定相应 FourCC 编解码器所需的“代码”,然后将属性“Videoio.CAP_PROP_FOURCC”设置为确定的编解码器。对于任何给定的编解码器,可以通过“VideoWriter”类检索关联的“代码”。
int fourcc = VideoWriter.fourcc('M', 'J', 'P', 'G');
videoCapture.set(Videoio.CAP_PROP_FOURCC, fourcc);
videoCapture.set(Videoio.CAP_PROP_FRAME_WIDTH, CAP_FRAME_WIDTH);
videoCapture.set(Videoio.CAP_PROP_FRAME_HEIGHT, CAP_FRAME_HEIGHT);
请记住,您必须在调整帧大小之前设置 FourCC,否则没有效果。上面的代码适用于 openCV 3.0。此页面(尽管针对 C++)为我指明了正确的方向:http://answers.opencv.org/question/6805/how-to-get-mjpeg-compression-format-from-webcam/
关于Java设置VideoCapture.set(CAP_PROP_FOURCC,编解码器值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36593145/
我是一名优秀的程序员,十分优秀!