web-dev-qa-db-ja.com

Webカメラとしてデジタルカメラ(Canon)を使用する

ウェブカメラにはそのためのアプリケーションがあるので、デジタルカメラ(Canon ixus 160)を使用できませんか?または単に設定で?

6
Fahed Ghodhbene

別のソリューションがあります。

gphoto2サポートされているカメラのリスト: http://gphoto.org/proj/libgphoto2/support.php

インストールが必要ですgphotov4l2loopback-utilsandffmpeg

それから

Sudo modprobe v4l2loopback

そして

gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

これで、デジタルカメラのWebカメラができました。

7
akadem87

これは実行できますが、いくつかの手順が必要です。まず、gphotov4l2loopback-utilsをインストールする必要があります。

Sudo apt-get install gphoto2 v4l2loopback-utils

カメラをUSB経由で接続します。次に、gphoto2 --abilitiesを実行して、カメラがこれを実行できるかどうかを確認します。 Canon EOS 1200Dを接続したときの出力は次のとおりです。

enter image description here

次に、Sudo modprobe v4l2loopbackを実行して、カメラからビデオデバイスを作成するために必要なカーネルモジュールをアクティブにします。

このタスクの次のステップを達成するためにgst-launch-0.10を使用するこのタスクに関する古いチュートリアルを見ました(例: this one )。私はgst-launch-1.0を使用するUbuntu 17.04を使用しています。以下は、デジタルカメラからビデオデバイスを作成するための更新されたコマンドです。

gphoto2 --stdout --capture-movie | gst-launch-1.0 fdsrc ! decodebin3 name=dec ! queue ! videoconvert ! v4l2sink device=/dev/video1

これにより、/dev/video1にビデオデバイスが作成され、VLCなどのプログラムで使用できるようになります。

使用中のデバイスに関するエラーが表示された場合は、gvfs-gphoto2-volume-monitorを実行してkillall gvfs-gphoto2-volume-monitorプロセスを強制終了する必要があります。

3
hellocatfood

Canon DSLR 600Dでビデオと画像の記録を取得できました

Sudo apt get install guvcview ffmpeg gphoto2 v4l2loopback-dkms v4l2loopback-utils ffmpeg

カメラを接続し、どのモードでも動作するように見えたので、基本をテストします。

準備

Sudo modprobe v4l2loopback
killall gvfs-gphoto2-volume-monitor

テスト

lsusb
gphoto2 --auto-detect
LANG=C gphoto2 --summary
LANG=C gphoto2 --list-all-config

試してみる

gphoto2 --capture-image
gphoto2 --stdout --capture-movie | ffmpeg -i - -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

視覚化(別の端末で)

guvcview

または

guvcview-brlin.guvcview

別の/dev/video1コマンドを試すことができます

EOS Movie Recorder もあります

これを解凍してください: https://sourceforge.net/projects/eos-movrec/files/eos-movrec/0.3.3_beta/eos-movrec-0.3.3_beta.Zip/download

cd eos-movrec-0.3.2_beta
Sudo apt install libgphoto2-dev                                     
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
0
Jonathan