Como posso fazer com que minha webcam funcione no kernel 3.9.4 construído para o ARM?

1

Estou tentando fazer com que minha webcam USB (Logitech QuickCam Communicate STX) funcione em uma placa Olimex SAM9-L9260 (ARM). Eu usei o Buildroot 2013.05 e tenho o sistema instalado e funcionando. Eu quero tirar instantâneos da webcam e tentar usar o mplayer para isso com este comando:

mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=320:height=240 -frames 1 -vo jpeg

Este comando funciona no Ubuntu, mas não no meu painel incorporado:

mplayer tv:// -tv driver=v4l2:device=/dev/video0:width=320:height=240 -frames 1 -vo jpeg

MPlayer 1.1-4.7.3 (C) 2000-2012 MPlayer Team

Playing tv://.

TV file format detected.

No such driver: v4l2

Exiting... (End of file)

Algumas linhas de inicialização do quadro:

Linux video capture interface: v2.00

uvcvideo: Unable to create debugfs directory

usbcore: registered new interface driver uvcvideo

USB Video Class driver (1.1.1)

gspca_main: v2.14.0 registered

usbcore: registered new interface driver gspca_zc3xx

Quando conecto a webcam à placa, um LED na câmera acende por um breve período (o mesmo comportamento no Ubuntu) e o terminal imprime:

usb 1-1: new full-speed USB device number 2 using at91_ohci

gspca_main: gspca_zc3xx-2.14.0 probing 046d:08ad

input: gspca_zc3xx as /devices/platform/at91_ohci/usb1/1-1/input/input0

Meu Buildroot .config :

BR2_PACKAGE_FFMPEG=y
BR2_PACKAGE_FFMPEG_FFMPEG=y
BR2_PACKAGE_MPLAYER=y
BR2_PACKAGE_MPLAYER_MPLAYER=y
BR2_PACKAGE_JPEG=y
BR2_PACKAGE_LIBJPEG=y
BR2_PACKAGE_LIBUSB=y
BR2_PACKAGE_LIBV4L=y
BR2_PACKAGE_LIBV4L_V4L2_COMPLIANCE is not set
BR2_PACKAGE_LIBV4L_V4L2_CTL=y
BR2_PACKAGE_LIBV4L_V4L2_DBG is not set

Meu kernel do Linux 3.9.4 .config :

CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_CONTROLLER is not set
CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L2=y
CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
CONFIG_VIDEOBUF2_CORE=y
CONFIG_VIDEOBUF2_MEMOPS=y
CONFIG_VIDEOBUF2_VMALLOC=y
CONFIG_VIDEO_V4L2_INT_DEVICE=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=y
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
CONFIG_USB_GSPCA=y
CONFIG_USB_GSPCA_ZC3XX=y
CONFIG_VIDEO_EM28XX is not set
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_SOC_CAMERA is not set
CONFIG_V4L_MEM2MEM_DRIVERS is not set
CONFIG_V4L_TEST_DRIVERS is not set

Alguns arquivos V4L na pasta raiz do meu quadro:

./usr/lib/libv4lconvert.so
./usr/lib/libv4l
./usr/lib/libv4l/v4l1compat.so
./usr/lib/libv4l/v4l2convert.so
./usr/lib/libv4l1.so
./usr/lib/libv4l1.so.0
./usr/lib/libv4l2.so
./usr/lib/libv4l2.so.0
./usr/lib/libv4lconvert.so.0

O que está faltando? A câmera é detectada e acho que tenho suporte a V4L (ver 1 ou 2) instalado.

    
por Peder 27.07.2013 / 22:24

1 resposta

0

Sucesso! Apenas tive que adicionar "--enable-tv-v4l2" no arquivo mplayer.mk em "define MPLAYER_CONFIGURE_CMDS"

    
por 29.07.2013 / 22:50