Sono alcune settimane che cerco di far funzionare una delle mie tre webcam con il mio server Ubuntu 9.04 (Jaunty). In particolare le tre webcam sono:
- Logitech QuickCam Communicate STX
- Creative Vista Plus
- Mustek GSmart Mini
Fino ad oggi non ci ero riuscito, poi su un forum ho trovato un suggerimento e tutto ha cominciato a funzionare. Il problema dovrebbe essere (purtroppo non ho trovato molto in rete su questo argomento) la compatibilità con l'interfaccia Video4Linux v2 del driver di queste webcam (il driver GSPCA), il quale è compatibile solo con la versione V1. Potrebbe essere anche la non compatibilità dei programmi di cui ho fatto uso. Sicuramente però è un problema di compatibilità tra V4L v2 e v1. Infatti seguendo il suggerimento tutto funziona.
Si deve impostare al volo una variabile di ambiente prima del programma da eseguire. Per fare dei test utilizzavo vgrabbj per catturare dei frame dalle webcam in questione con la seguente dicitura:
eugenio@ufficio:~$ sudo vgrabbj -d /dev/video0 -f prova.jpg
Ma non andava appunto. Settando la variabile di ambiente invece:
eugenio@ufficio:~$ sudo LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so vgrabbj -d /dev/video1 -f prova.jpg
Fino a qui problema risolto, le webcam adesso funzionano. Volevo però utilizzarle attraverso zoneminder, un software per la videosorveglianza che vorrei esplorare per capirne le funzionalità e potenzialità. Non essendo a linea di comando ma una vera e propria applicazione server non potevo lanciarlo come con vgrabbj. Spulciando su google, ho trovato una modifica che ha funzionato: aggiungere una riga al file /usr/bin/zmdc.pl. Intorno alla riga 64, giusto prima della riga my @daemons = ... ho aggiunto questo:
$ENV{LD_PRELOAD} = "/usr/lib/libv4l/v4l1compat.so";
Naturalmente conto di capire meglio la questione per poter settare questa variabile di ambiente in maniera permanente e non all'interno del file di configurazione dello specifico programma.




Invia nuovo commento