7

Raspberry Pi で正常に検出された USB ウェブカメラ (メーカー不明、マーキングなし) があります。

これは lsusb の出力です

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. 
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. 
Bus 001 Device 004: ID 0c45:608f Microdia PC Camera (SN9C103 + OV7630)
Bus 001 Device 005: ID 1267:0103 Logic3 / SpectraVideo plc G-720 Keyboard

ただし、モーションを実行すると、デフォルトの構成のみで /dev/video0 を使用すると、解像度が変更され、ネットワーク上でストリーミングできるように Webcam ホストがオフに設定されます。これは私がモーションを実行したときの私のログです

Log of motion -n 

[0] Processing thread 0 - config file /etc/motion/motion.conf
[0] Motion 3.2.12 Started
[0] ffmpeg LIBAVCODEC_BUILD 3482368 LIBAVFORMAT_BUILD 3478784
[0] Thread 1 is from /etc/motion/motion.conf
[0] motion-httpd/3.2.12 running, accepting connections
[0] motion-httpd: waiting for data on port TCP 8080
[1] Thread 1 started
[1] cap.driver: "sonixb"
[1] cap.card: "USB camera"
[1] cap.bus_info: "usb-bcm2708_usb-1.2"
[1] cap.capabilities=0x05000001
[1] - VIDEO_CAPTURE
[1] - READWRITE
[1] - STREAMING
[1] Config palette index 8 (YU12) doesn't work.
[1] Supported palettes:
[1] 0: S910 (S910)
[1] 1: BA81 (BA81)
[1] Selected palette BA81
[1] Test palette BA81 (480x640)
[1] Adjusting resolution from 480x640 to 160x120.
[1] Using palette BA81 (160x120) bytesperlines 160 sizeimage 19200 colorspace 00000008
[1] found control 0x00980900, "Brightness", range 0,255 
[1]     "Brightness", default 127, current 127
[1] found control 0x00980911, "Exposure", range 0,1023 
[1]     "Exposure", default 66, current 66
[1] found control 0x00980912, "Automatic Gain (and Exposure)", range 0,1 
[1]     "Automatic Gain (and Exposure)", default 1, current 1
[1] found control 0x00980913, "Gain", range 0,255 
[1]     "Gain", default 127, current 127
[1] mmap information:
[1] frames=4
[1] 0 length=20480
[1] 1 length=20480
[1] 2 length=20480
[1] 3 length=20480
[1] Using V4L2
[1] Resizing pre_capture buffer to 1 items
[1] v4l2_next: VIDIOC_DQBUF: EIO (s->pframe 0): Input/output error
[1] v4l2_next: VIDIOC_QBUF: Invalid argument
[1] v4l2_next: VIDIOC_QBUF: Invalid argument
[1] v4l2_next: VIDIOC_QBUF: Invalid argument
[1] v4l2_next: VIDIOC_QBUF: Invalid argument
[1] Error capturing first image
[1] Started stream webcam server in port 8081
[1] v4l2_next: VIDIOC_QBUF: Invalid argument
[1] Video device fatal error - Closing video device
[1] Closing video device /dev/video0
[1] Retrying until successful connection with camera
[1] cap.driver: "sonixb"
[1] cap.card: "USB camera"
[1] cap.bus_info: "usb-bcm2708_usb-1.2"
[1] cap.capabilities=0x05000001
[1] - VIDEO_CAPTURE
[1] - READWRITE
[1] - STREAMING
[1] Config palette index 8 (YU12) doesn't work.
[1] Supported palettes:
[1] 0: S910 (S910)
[1] 1: BA81 (BA81)
[1] Selected palette BA81
[1] Test palette BA81 (480x640)
[1] Adjusting resolution from 480x640 to 160x120.
[1] Using palette BA81 (160x120) bytesperlines 160 sizeimage 19200 colorspace 00000008
[1] found control 0x00980900, "Brightness", range 0,255 
[1]     "Brightness", default 127, current 127
[1] found control 0x00980911, "Exposure", range 0,1023 
[1]     "Exposure", default 66, current 66
[1] found control 0x00980912, "Automatic Gain (and Exposure)", range 0,1 
[1]     "Automatic Gain (and Exposure)", default 1, current 1
[1] found control 0x00980913, "Gain", range 0,255 
[1]     "Gain", default 127, current 127
[1] mmap information:
[1] frames=4
[1] 0 length=20480
[1] 1 length=20480
[1] 2 length=20480
[1] 3 length=20480
[1] Using V4L2
[1] Camera has finally become available
[1] Camera image has different width and height from what is in the config file. You should fix that
[1] Restarting Motion thread to reinitialize all image buffers to new picture dimensions
[1] Thread exiting
[1] Calling vid_close() from motion_cleanup
[1] Closing video device /dev/video0
[0] Motion thread 1 restart
[1] Thread 1 started
[1] config image height (120) is not modulo 16
[1] Could not fetch initial image from camera
[1] Motion continues using width and height from config file(s)
[1] Resizing pre_capture buffer to 1 items
[1] Started stream webcam server in port 8081
[1] Retrying until successful connection with camera
[1] config image height (120) is not modulo 16
[0] httpd - Finishing
[0] httpd Closing
[0] httpd thread exit
[1] Thread exiting
[0] Motion terminating

カメラのライトが最初に点灯し、その後再び消灯します。誰かが私が得ているエラーを認識していますか?

ありがとう!

4

5 に答える 5

1

confファイルで別の方法で構成されている場合でも、モーションは実行時に検出できる可能な解像度を使用します(少なくとも私の経験では)。

また、サポートされていないパレットがconfファイルに設定されているようで、モーションはサポートされていると検出した2つのうちの1つを選択します。confファイルでパレット設定を「0」(S910)に変更してみましたか?

最後に、PiのUSBサポートには、大量のデータに関する既知の問題と現在のところ未解決の問題がいくつかあります。フレームレートを下げることは他の場合にも役立つかもしれません(この場合、プロセスは最初の画像ですでに失敗しているので、私は助けないと思います)。

于 2013-03-14T14:05:48.493 に答える
1

あなたの問題はログにあります:

config image height (120) is not modulo 16

したがって、別の画像解像度が必要です。

お使いのデバイスが何をサポートしているかを確認してください

$ uvcdynctrl -f

16 の倍数である y 解像度を持つものを選択します。たとえば、それがカメラ用にリストされている場合は 640x480 です。

于 2014-04-30T02:48:31.577 に答える
0

モーションの代わりに guvcview を試すことをお勧めします。それはより速く実行され、私のPiではるかに優れた画像を提供します. X の下で実行されます。

guvcview の 2 つのメモ - POWER LINE FREQUENCY をローカルの主電源の周波数に設定します。- 解像度を 640 x 480 に設定します。

guvcview は約 50% のプロセッサ パワーを消費します。はい、USBハブも使用してください!

うーん。

于 2013-01-17T12:06:45.783 に答える