2012-12-10 11 views
10

Voglio creare un'applicazione in Android che, quando si collega un dispositivo USB al dispositivo Android, tutte le applicazioni dovrebbero rilevare la videocamera esterna come fotocamera principale. Ad esempio, se apriamo l'applicazione della fotocamera, il dispositivo scatta la foto da quella che è connessa tramite USB. C'è un modo per fare questo?utilizzare la fotocamera collegata tramite USB invece della fotocamera integrata

Si prega di non chiudere questa domanda come non una vera domanda.

risposta

8

Non è possibile farlo scrivendo una semplice app poiché non si decide quale sia la videocamera predefinita. Ciò viene eseguito dal firmware di sistema e non è possibile modificarlo tramite l'SDK di Android.

L'unico modo per ottenere questo risultato è quello di personalizzare Android a livello di sorgente e aggiungere codice per passare automaticamente la videocamera predefinita a quella connessa tramite USB quando è disponibile.

3

è possibile utilizzare OpenCV, in base a this document è abbastanza facile.

per catturare fotogrammi da cam di default:

CvCapture* capture = cvCaptureFromCAM(CV_CAP_ANDROID + 0); 

per catturare fotogrammi da USB:

CvCapture* capture = cvCaptureFromCAM(CV_CAP_ANDROID + 1); 

OpenCV è open source è possibile ottenere il codice sorgente da here , sarà necessario Android cmake project

Modifica:

android è un sistema operativo basato su Linux, è possibile scaricare il Android terminal emulator e personalizzare le impostazioni audio e video come in linux, è possibile disabilitare la videocamera integrata nel gestore dispositivi o modificare le impostazioni per utilizzare la webcam esterna come predefinito. ma disabiliterei completamente la videocamera integrata personalmente.

+0

L'OP non desidera utilizzare la videocamera USB. Vuole renderlo predefinito per ogni app sul dispositivo. –

+0

Ok, controlla la mia ultima modifica –

Problemi correlati