opencv Java设置视频捕获。设置(CAP_PROP_FOURCC,编解码器值)
我想为VideoCapture
设置一个编解码器
我找到了THIS LIST个编解码器。
既然VideoCapture.set(CAP_PROP_FOURCC, double value)
需要一个double
的编解码器值,而我还没有在JavaCV中找到将编解码器转换为double
值的方法,我想知道如何将相关的编解码器传递给VideoCapture.set(CAP_PROP_FOURCC, double value)
强>
# 1 楼答案
迟到总比不迟到好
当我意识到以mpeg流的形式从相机中获取数据时,我会获得更好的性能(默认为YUY2时约10FPS,mpeg时约30FPS),我遇到了同样的问题。 设置FOURCC的诀窍是,首先确定各个FOURCC编解码器所需的“代码”,然后将属性“Videoio.CAP_PROP_FOURCC”设置为所确定的编解码器。对于任何给定的编解码器,可以通过“VideoWriter”类检索相关的“代码”
请记住,在调整帧大小之前,必须设置FourCC,否则将无效。 上面的代码是针对openCV 3.0的。这个页面(虽然是C++的)为我指出了正确的方向:http://answers.opencv.org/question/6805/how-to-get-mjpeg-compression-format-from-webcam/