我正在尝试比较由H.264,H.265和VP9编码的3个视频。它们都是由同一个YUV视频制作的。
我想使用OpenCV的功能来读取视频的每一帧,并做一些比较:
VideoCapture vCap1, vCap2, vCap3;
vCap1.open("h264.mp4");
vCap2.open("h265.mp4");
vCap3.open("vp9.webm");
Mat frame1, frame2, frame3;
while (vCap1.read(frame1) && vCap2.read(frame2) && vCap3.read(frame3))
{
//do something
}vCap1成功地打开了,但是vCap2和vCap3无法打开。我是不是错过了让它发挥作用的东西?
或者OpenCV甚至不支持其他2种格式?
发布于 2014-04-26 13:53:56
在使用google之后:-)我发现http://answers.opencv.org/question/10741/videocapture-format-supported-by-opencv/
特别是您的系统上安装了所需的编解码器。您也可以访问http://www.fourcc.org/codecs.php
用于编解码器。
来自OpenCV的文档确实没有多大帮助。:-)
如果您在linux下运行,我会尝试什么:
strace -xfo转储
看看系统呼叫。也许您可以找到一些丢失编解码文件、使用的配置文件和其他失败的系统函数调用的提示。如果是的话,你就有了一个起点。
https://stackoverflow.com/questions/23311640
复制相似问题