Armadilloフォーラム

ioctl VIDIOC_QBUFがエラーを返す

a-mizutani

2016年3月8日 11時57分

どうもお世話になっています水谷です

以前からアルマジロ840を使用して、疑似カメラを接続するシステムを作っています
大分進展があり、録画再生等も行える様になってきました

1600x1200までは問題なく動作するのですが

2560x2045に設定するとエラーが出てプログラムが落ちてしまいます

ベースになるプログラムはアルマジロのサンプルの” V4l2CameraView::capture()”を
変更して使っています
エラーが出る部分は、関数の最後にある
------------------------------------------------------------------------------------------
ret = ioctl(m_fd, VIDIOC_QBUF, &buf);
if (ret < 0) {
qWarning() << "failed to re-queue buffer " << buf.index;
return;
}
------------------------------------------------------------------------------------------
で、retに-1が返ってきます、buf.indexは4でした

この部分は2560x2048サイズでも1度はエラーなしで通過するのですが
(なので1枚だけ絵が表示されます)
2回目でabortしています
バッファの確保か何かのエラーだと思っているのですが
ioctlの中が覗けないので、どう調べて良いか悩んでいます
お知恵が頂けたら幸いです

コメント

後から見た人が分かりやすいように、件名を「ioctl VIDIOC_QBUFがエラーを返す」に変更しても良いですか?

お返事どうもありがとうございます

> 後から見た人が分かりやすいように、件名を「ioctl VIDIOC_QBUFがエラーを返す」に変更しても良いですか?
はい、お願いしてもよろしいですか?