表題のとおりなのですが
C言語で
lang
1#include <iostream> 2#include "opencv2/opencv.hpp" 3 4using namespace std; 5 6int main() 7{ 8 cv::VideoCapture cap("/home/kokawa2003/Videos/in.mp4"); 9 cout << "Hello World!" << endl; 10 return 0; 11} 12
このようなコードを書いて実行すると実行エラーになり
Failed to query video capabilities: Inappropriate ioctl for device
libv4l2: error getting capabilities: Inappropriate ioctl for device
VIDEOIO ERROR: V4L: device /home/kokawa2003/Videos/in.mp4: Unable to query number of channels
Hello World!
このようなエラーになります。
この理由なのですが現在OpenCVの環境に自前ビルドしたものを使っていてそのせいだと思われます。
OpenCVは3.3.0を使っていて
cmakeでmakeしたときの表示では
こうなるのでフラグも間違ってないと考えています。
ただ
Video I/O:
DC1394 1.x: NO
DC1394 2.x: YES (ver 2.2.4)
FFMPEG: NO
avcodec: YES (ver 56.60.100)
avformat: YES (ver 56.40.101)
avutil: YES (ver 54.31.100)
swscale: YES (ver 3.1.101)
avresample: YES (ver 3.7.0)
GStreamer:
こうなっていてFFMPEGの一番上のNOは気になってはいます。
ただしWITH_FFMPEGはONです。
なぜできないのか知っている人はいますか。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/07 06:38
2018/06/07 06:46
2018/06/07 06:52