Question
Hi,
I've got a BT878 capture card with 4 sockets
Brooktree Corporation Bt878 Video Capture [109e:036e] (rev 11)
Its installed on a box running Debian squeeze with a 2.6.32 kernel and motion 3.2.12. I have a plugin camera that calls itself an "AV Tech High resolution colour camera". Xawtv seems to detect and display the video image just fine, but with motion, all I get is a black image.
motion -c /etc/motion/motion.conf
[0] Processing thread 0 - config file /etc/motion/motion.conf
[0] Motion 3.2.12 Started
[0] ffmpeg LIBAVCODEC_BUILD 3412993 LIBAVFORMAT_BUILD 3415808
[0] Motion running in setup mode.
[0] Thread 1 is from /etc/motion/motion.conf
[0] Thread 1 is device: /dev/video0 input 1
[0] Webcam port 8082
[0] Waiting for threads to finish, pid: 8011
[1] Thread 1 started
[0] motion-httpd/3.2.12 running, accepting connections
[0] motion-httpd: waiting for data on port TCP 8081
[1] cap.driver: "bttv"
[1] cap.card: "BT878 video (IVC-200)"
[1] cap.bus_info: "PCI:0000:07:04.0"
[1] cap.capabilities=0x05000015
[1] - VIDEO_CAPTURE
[1] - VIDEO_OVERLAY
[1] - VBI_CAPTURE
[1] - READWRITE
[1] - STREAMING
[1] Unable to query input 1 VIDIOC_ENUMINPUT: Invalid argument
[1] ioctl (VIDIOCGCHAN): Invalid argument
[1] Failed with YUV420P, trying YUV422 palette: Device or resource busy
[1] Failed with YUV422, trying YUYV palette: Device or resource busy
[1] Failed with YUYV, trying RGB24 palette: Device or resource busy
[1] Failed with RGB24, trying GREYSCALE palette: Device or resource busy
[1] Failed with all supported palettes - giving up: Device or resource busy
[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 8082
Environment
Motion version: |
3.2.12 |
ffmpeg version: |
0.5.2-1 |
Libraries: |
ffmpeg, mysql, postgresql |
Server OS: |
Debian squeeze 2.6.32-5-xen-686 |
Actually, I have two separate PCs both with the same capture card, but different linux distributions, kernels and motion versions and cameras. For the second one, which works reasonably well with ubuntu 2.6.31-14-generic and motion-3.2.11:
[1] Resizing pre_capture buffer to 1 items
[2] cap.driver: "bttv"
[2] cap.card: "BT878 video (IVC-200)"
[2] cap.bus_info: "PCI:0000:08:04.0"
[2] cap.capabilities=0x05000015
[2] - VIDEO_CAPTURE
[2] - VIDEO_OVERLAY
[2] - VBI_CAPTURE
[2] - READWRITE
[2] - STREAMING
[2] Unable to query input 1 VIDIOC_ENUMINPUT:
[2] ioctl (VIDIOCGCHAN):
[2] Using VIDEO_PALETTE_YUV420P palette
[2] Resizing pre_capture buffer to 1 items
[2] Started stream webcam server in port 8082
--
DougDuBoulay - 12 Aug 2010
Answer
Well, it turned out I just had incompatible width and height settings in my config :-/
I started with width=320, height=240 - which doesn't work, but the 352x288 defaults
do work. Maybe there should be a graceful fall-back to defaults when the palettes fail,
or an appropriate error message or something?
[1] cap.card: "BT878 video (IVC-200)"
[1] cap.bus_info: "PCI:0000:07:04.0"
[1] cap.capabilities=0x05000015
[1] - VIDEO_CAPTURE
[1] - VIDEO_OVERLAY
[1] - VBI_CAPTURE
[1] - READWRITE
[1] - STREAMING
[1] Unable to query input 1 VIDIOC_ENUMINPUT: Invalid argument
[1] ioctl (VIDIOCGCHAN): Invalid argument
[1] Using VIDEO_PALETTE_YUV420P palette
[1] Using V4L1
[1] Resizing pre_capture buffer to 1 items
[1] Started stream webcam server in port 8082