A captura de vídeo do Linux não funciona em cam3 ou a captura de imagem em cam1 falha

1

Estou tentando alguma solução ou correção em tempo de execução sobre isso.

Problema:     Depois de conectar uma terceira câmera, a captura de vídeo do Linux não funciona cam3 ou a captura de imagem em cam1 falha.

História:     Inicialmente, desenvolvemos um sistema de vigilância. O sistema é composto por duas câmeras.

1. Video capture (Using Motion)
2. Image capture(Using V4L)

We added one more camera to the system, which is causing the mess currently.
3.  Video capture (Using Motion)


  We notice either a video capture or image capture does not work in the system. various forums, suggested for adding quirk=128 in conf, even that idd not work out.

dmesg:

[399.544408] uvcvideo: Encontrado a câmera USB 2.0 do dispositivo UVC 1.00 (1871: 2097)

[399.544429] uvcvideo: Forçando peculiaridades do dispositivo para 0x80 pelo parâmetro do módulo para fins de teste.

[399.544441] uvcvideo: Por favor, comunique as peculiaridades necessárias à lista de discussão do linux-uvc-devel.

[399.547449] entrada: Câmera USB2.0 como /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0/input/input32

[399.668599] uvcvideo: Encontrado a câmera USB 2.0 do dispositivo UVC 1.00 (1871: 0501)

[399.668613] uvcvideo: Forçando as peculiaridades do dispositivo para 0x80 pelo parâmetro do módulo para fins de teste.

[399.668618] uvcvideo: Por favor, comunique as peculiaridades necessárias à lista de discussão do linux-uvc-devel.

[399.671360] input: USB2.0 Camera como /devices/pci0000:00/0000:00:1d.7/usb1/1-4/1-4.4/1-4.4:1.0/input/input33 [399.732317] uvcvideo: Encontrado a câmera USB 2.0 do dispositivo UVC 1.00 (1871: 0f01)

[399.732328] uvcvideo: Forçando peculiaridades do dispositivo para 0x80 pelo parâmetro do módulo para fins de teste.

[399.732334] uvcvideo: Por favor, reporte as peculiaridades necessárias à lista de discussão do linux-uvc-devel.

[399.735996] entrada: USB2.0 Câmera como /devices/pci0000:00/0000:00:1d.7/usb1/1-8/1-8:1.0/input/input34

Tentei obter as informações de V4L2_BUF_TYPE_VIDEO_CAPTURE para a câmera: todas as câmeras conectadas listadas (YUV 4: 2: 2 (YUYV))

HW Spec:     N2600     Aveo technologies camera 3 modelos com diff VID: PID

Preciso de alguma orientação para corrigir esse problema.

    
por Ragav 02.06.2016 / 20:03

1 resposta

0

Como encontrar:

N2600 com kernel 3.16: (ambos com / sem Quirk 0x80)

Bandwidth per camera was 328 Mb. In my case overall allocated bandwidth was 656 (For 2 cameras) and max bandwidth for USB controller was 800. So there was no space available for my third camera.

N2600 com o kernel 2.6.32

Same my third camera did not work and memory allocation per camera was 320 Mb

N2600 com kernel 2.6.32 com Quirk 0x80

On applying quirk to uvcvideo memory allocation was drastically reduced from 320 to 128 Mb and all 3 cameras worked as expected.

Solução :

Não estou muito certo de que esta seja uma solução muito correta. No entanto, gostaria de agradecer Stuart (SwDevRefugee) por me ajudar a solucionar problemas e dar algumas dicas para resolver esse problema.

Existe essa linha em uvc_fixup_video_ctrl () no kernel mais recente bandwidth = max_t (u32, largura de banda, 1024); e ausente no antigo. Comentou e recompilou o meu driver UVC e agora com a alocação de memória quirk 0x80 chegou a 128 Mb em 328 e meu sistema funciona. Rhough isso pode ser útil para alguém com várias câmeras

    
por 16.06.2016 / 07:43