問題タブ [video4linux]
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.
cross-platform - クロスプラットフォームのウェブカメラアクセス
ウェブカメラにアクセスするためのクロスプラットフォームのビデオキャプチャライブラリを探しています。LinuxではV4L/V4L2、WindowsではDirectShow、MacではQuickTimeをラップするもの。
CまたはC++が推奨されますが、ライブラリのオプションが優れている場合は、JavaまたはPythonで作業できます。
c++ - mjpegからvideo4linuxで生のrgb24へ
私はvideo4linuxを使用してc++ウェブカメラビューアを書いています。表示するにはRGB24出力(インターリーブR8B8G8)が必要です。YUYV、GREY8、またはRGB24を使用して、ほとんどすべての低解像度Webカメラのビデオ入力を取得できます。ただし、高フレームレートが必要な場合に圧縮にMJPEGを使用する高解像度Webカメラからも入力を取得する必要があります。
ピクセル形式として使用してMJPEGストリームを取得できV4L2_PIX_FMT_MJPEG
ますが、受信したフレームバッファは圧縮されています。
どうすればすばやくRGB24に変換できますか?
これにlibjpegを使用できますか?
c - video4linux apiを使用してWebカメラデバイスのサポートされているフレームサイズとフレーム間隔のリストを取得するにはどうすればよいですか?
V4L2 APIを使用して、サポートされているWebカメラデバイスのフレームサイズとフレームレートを列挙しようとしています。私は成功せずに次のコードでそれをやろうとします。ioctl関数は常に-1を返します。
linux - OpenCV を使用して BeagleBone に静止フレームをキャプチャさせる
Ångström Linux 3.2.28を実行している BeagleBone があり、カメラからフレームをキャプチャしようとしています。
そこで、USB ウェブカメラを接続して、/dev
表示されることを確認します。
video0
(右下)のようにそうです。カメラのプラグを抜くと消えるので、これは正しいと思います。
そこで、Python を起動して以下を実行します。
ご覧のとおり、キャプチャ オブジェクトは十分に作成できていますが、そこからフレームを取得することはできません。-1
また、カメラ ID (上記のコード) に異なる (またはなしの) 整数引数を使用してこれを試しましたが、役に立ちませんでした。
参考までに、ラップトップでIPythonを使用して同じコードを実行すると、次のようになります。
ここで実際に画像をキャプチャしていることがわかります。ここからどこへ行くべきか正確にはわかりません。
アップデート:
私はFFmpegで少し遊んで、次のコマンドを発行してカメラを応答させることができました(つまり、ライトが点灯します):
どうやら CaptureFromCAM
V4Lインターフェイスを使用しているので、これは興味深いです...ここからどこに行くべきかわかりません。
c - Linux 無線デバイス ドライバーで無線周波数を検証する方法は?
符号なしの数値が 0 未満になることはなく、それをテストする必要がないことはわかっています。しかし、チューナーの偽の周波数は避けたいです。
このチェックを別の方法で (おそらく制限付きで) 行うことはできますか?
あり得ない値である「偽の」周波数のより良い定義を考え出してください。
周波数が調整されてから変更されていない場合、デジタル ドライバは周波数を設定しません。アナログ チューナー ドライバーは、デジタル ドライバーによって保存された周波数について何も知りません。video4linux コードを使用して周波数を設定すると、ハードウェアは変更されますが、デジタル ドライバーの状態は更新されません。
c++ - C ++でvideo4linuxからフレームを取得するには?
ウェブカメラ フィードからピクセル データを保存しようとしています。
c++ を使用して video4linux からフレームを保存するにはどうすればよいですか?
macos - MBP Retina Isight と FFmpeg
真新しい MacBook Pro Retina (Mavericks) からビデオ ストリームにアクセスして、ffmpeg の入力として使用しようとします (そして、RTMP 経由で再度ストリーミングします)。
他のスタックオーバーフローのトピックでさまざまな解決策を試しましたが、どれもうまくいかないようです:
wacaw -L
デバイスがリストされていません
Quicktime Broadcaster でビデオが表示されない (オーディオのみ)
しかし、Isight は Photo Booth で動作します。
何か案は ?この件に取り組んでいる人はいますか?
linux - Linuxでカメラの切断を検出するには?
V4l2-ctl
コマンドのサポートなしで、カメラ信号の切断 (モジュールの切断やハードウェアの切断ではなく) をどのように検出しますか? カメラドライバーがv4l2-ctl
コマンドをサポートしていないためです。
c - フレームとアラーム信号の待ち方
ウェブカメラに問題があります。ハードウェアの可能性もありますが、そうではないと確信しています。すべてのアプリでストリームを表示できますが、突然フリーズします。問題が発生したときの使用済みアプリからの次の出力のため:
コードと興味深い部分をチェックアウトしました。
そこから、SYNC_TIMEOUT が問題になる可能性があると結論付けました。値は 3 秒で、これで十分だと思われます。
私の要求は、コードを変更して、フレームを無期限にブロックしないようにすることです。
100 ミリ秒以内にフレームが到着しない場合は、タイムアウトになり、GUI がそれ自体を更新する機会が与えられます。すべてのデバイスでホイールを解放できるわけではないため、アプリは GUI をブロックせずにそのようなデバイスをサポートする必要があります。
1秒未満の待機を行うにはどうすればよいですか?
v4l2 デバイスはこれで非常にうまく機能します:
しかし、私は v4l1 デバイスを持っています。