問題タブ [v4l2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux-device-driver - Linuxカーネルでの仮想ビデオドライバーの移植
Linuxカーネルでviviドライバーをビルドしようとしています。makemenuconfigを使用しようとしましたが、viviドライバーを有効にするオプションが表示されませんでした。誰かがカーネルでviviドライバーを有効にするプロセスを教えてもらえますか
-キラン
python - Python / opencvを使用してCameraCaptureをオフ/オンにできない:デバイスまたはリソースがビジー
Pythonを使用してopencvのCameraCaptureを再度開こうとすると、次のようになります。
私のアプリケーションはPyQtや他のさまざまなモジュールを使用してより大きなコンテキストで実行されますが、問題を特定することができました。したがって、「r」(リロード)を押すと、キャプチャオブジェクトは削除されますが、カメラがまだアクティブであるため、カメラへの接続を再度開くことができません。
同様の質問に与えられたヒントは私には機能しませんでした: Pythonを使用しているときにopencvでReleaseCaptureを見つけることができませんか?および/またはOpenCV/アレイはCvMatまたはIplImage/キャプチャオブジェクトのリリースである必要があります
opencv - Linux で OpenCV を使用して複数の Web カメラ (uvcvideo) をキャプチャする
Ubuntu 11.10 で OpenCV 2.1 を使用して、3 台の Logitech Webcam Pro 900 デバイスから画像を同時にストリーミングしようとしています。これらの uvcvideo ドライバーが読み込まれます。
2 つのデバイスをキャプチャすると問題なく動作しますが、3 つを使用すると、3 つ目のデバイスで容量不足エラーが発生します。
私はこの問題に遭遇しているようです: http://renoirsrants.blogspot.com.au/2011/07/multiple-webcams-on-zoneminder.htmlそして、私は quirks=128 (またはほとんど他の2 のべき乗の値) のトリックですが、役に立ちません。また、2 つの USB 2.0 ハブを備えた別のマシンで 2 台のカメラを 1 台に接続し、3 台目のカメラを 2 台目のカメラに接続してみましたが、同じ問題が発生しました。私は大まかに次のように初期化しています(N個のカメラを使用しているため、結果は実際にSTLベクトルに入れられます):
そして、ループ内のすべてのカメラを次のようにキャプチャしようとします
これは、N=2 カメラの場合にうまく機能します。N=3 に設定すると、3 番目のウィンドウが開きますが、画像は表示されず、コンソールは V4L2 エラーでいっぱいになります。同様に、N=2 に設定し、Cheese (単純な Web カメラ キャプチャ アプリケーション) で 3 番目のカメラを開こうとすると、これも機能しません。
ここで大きな問題が発生しますが、3 つのインスタンスを開始して guvcview を試した後、一度に 3 台のカメラを表示できたので (フレーム レートや関連の点で問題はありませんでした)、ハードウェアの問題ではないようです。設定する必要があるプロパティがあると思いますが、それが何であるかわかりません。MJPEG (これらのカメラはサポートしているようです) を調べましたが、このプロパティの設定に成功していないか、OpenCV から起動した場合にどのモード (yuyv?) で実行されているかを検出できませんでした。
考え?
c++ - V4L2 はどの程度スレッドセーフですか?
2008 年のこの電子メールを除いて、V4L2 のスレッド セーフ特性についての言及は見つかりませんでした。それは大きなカーネルロックについて語っていますが、今はなくなっていると思いますよね?
これに関する最新情報を持っている人はいますか?シリアル化せずに複数のスレッドから同じ V4L2 ファイル記述子をioctl
(特に考えているVIDIOC_DQBUF
)ことはできますか? VIDIOC_QBUF
上記の議論は、答えがドライバーに依存していることを示しているようですが、とにかく尋ねてみようと思いました。
v4l2 - v4l2 イメージ キャプチャのタイムスタンプ
カメラ画像を処理する Linux アプリケーションがあります。現在、画像データで満たされた v4l2 カーネル サブシステムにバッファを提供しています。
ただし、このフレームがいつ (カメラによって) キャプチャされたかをできるだけ正確に知る必要があります。バッファを使用すると、タイムリーにすべてのフレームを処理できない可能性があるため、これがいつ発生したか正確にわからない場合があります (つまり、数ミリ秒間既に利用可能な画像を一度に要求する可能性があります)。
私が探しているのは、画像がキャプチャされた時間 (またはその年齢) を決定 (または推定) する方法です。私の明示的な要求があった場合にのみ送信されます。
環境: UVC Web カメラ、Linux カーネル 2.6.3x、V4L2 API
v4l2 - v4l2_buffer-> timestamp値はどこからカウントを開始しますか?
v4l2_bufferのタイムスタンプ値(タイプtimeval)を使用して、UVCWebカメラからキャプチャされた画像を外部イベントに同期しようとしています。
ただし、タイムスタンプはシステム時刻や稼働時間などと同じではありません。
結果は
私の稼働時間は10日です。
android - Android USB ウェブカメラの V4L2 パッチ
https://bitbucket.org/neuralassembly/simplewebcamをガイドとして使用して、Acer A500 で USB Web カメラを動作させようとしています。
私のデバイスの構成ファイルによると、すべての要件を満たし、アプリは実行されますが、まだ動作しません。
ここで V4L2 パッチを見つけました: http://code.google.com/p/android-m912/downloads/detail?name=v4l2_camera_v2.patchですが、どうすればよいかわかりません。
このパッチのコンパイル/インストールを手伝ってくれる人に感謝します。
ありがとう
ポール
Acer A500 CWM 3.2 は ADHOC wifi サポートでルート化されています
android-camera - V4l2 : 違い: バッファの Enque、Deque、および Queue(ing)?
私はv4l2ioctl
の初心者であり、カメラ画像のキャプチャ中に行われたさまざまな呼び出しの違いを見つけようとしています。私は次の違いを知りたかったlinuxtv.orgサイトからこのpdfをフォローしています:
バッファのクエリ、エンキュー、デキュー、およびキューイング。カメラから生データを取得する際に特定の順序はありますか? ストリーミングとキャプチャ モードの場合、シーケンスは異なりますか?
誰でも説明できますか。
c - v4l2 プログラムのコンパイル時の ioport.h エラー
v4l2 のドライバー作成に関するこの記事をフォローしたいと思いました。
しかし、media/v4l2-dev.h をインクルードすると、最初の基本的な試行が失敗しました (VFL_TYPE_GRABBER などのマクロにアクセスしたいため)。
media/v4l2-dev.h には、次の出力でクラッシュする linux/ioport.h を含む linux/device.h が含まれています。
[...]
起源 :
私はでコンパイルしました:
これは、gcc 4.4.3 glibc 2.10 を使用した 2.6.32-37-generic-pae で発生します。kernel-headers と gcc のほぼ同等のバージョンを使用して、gentoo で同じことを試しました。
私は何を間違っていますか?
編集: 正確なインクルード パスを示します。
c++ - V4L2loopback モジュールによって作成された仮想 Web カメラに書き込み/パイプする方法は?
LinuxでOpenCVを使用して、Webカメラから読み取り、フレームを処理するアプリケーションを作成しました。ここで、アプリケーションの出力を、V4L2loopback モジュールによって作成された仮想 Web カメラにパイプして、他のアプリケーションが読み取れるようにしたいと考えています。C を使用してアプリケーションを作成しました。これを行う方法がわかりません。ヒントを教えてください。