Mise en œuvre d'un pilote UVC à l'aide de l'Android NDK et raw d'une connexion usb pour les appareils qui ne sont pas pris en charge par le noyau
Je suis à la recherche d'un moyen d'obtenir UVC équivalente caméras usb de travailler sur d'autres appareils android qui n'ont pas un pilote de noyau pour ceux UVC caméras par défaut.
Je ne veux pas à la racine de ces dispositifs, ni en changer l'image/du noyau, parce que d'habitude les clients devraient être en mesure d'utiliser l'appareil photo plus tard avec chaque tablette et sans exigences particulières (à l'exception d'une appli).
Pensez-vous qu'il pourrait être possible d'établir un raw connexion à un périphérique inconnu à l'aide de Android USB de classe dans Android 3.1 et supérieur (http://developer.android.com/guide/topics/usb/host.html) ou puis-je l'utiliser seulement avec les appareils qui sont pris en charge et reconnu par le kernel déjà?
Si il serait possible, je serais intéressé pour intégrer le pilote UVC à l'aide de Java/NDK pour obtenir le flux vidéo. Au moins, c'est mon idée.
Pensez-vous que c'est possible?
OriginalL'auteur Nils | 2012-05-06
Vous devez vous connecter pour publier un commentaire.
Il est certainement possible si vous êtes compromis sur enraciné partie.. j'ai fait le même projet et a finalement réussi. À l'intérieur uvc code, vous serez d'ouverture de /dev/video1 ou video0 nœud pour lequel par défaut sur la plupart des appareils, il n'y a pas les autorisations de l'utilisateur.
Pour le dire simplement,
Cela dépend de 2 choses :
1) Lorsque vous branchez le port USB de la Caméra, si la caméra nœud est d'arriver à être créé ou non. Il doit être à l'intérieur du répertoire /dev avec de grands numéro 81(signifie V4l2 appareil)
2) Pour que le nœud de périphérique vous d'avoir les autorisations de l'utilisateur ou non.
Ce sont les deux obstacles qui vous feront face.
Solution à première n'est pas là dans nos mains coz il dépend de vendeur à vendeur. Ex, Acer onglet il est créé, mais dans Samsung Galaxy il ne marche pas.. La raison en est le manque de soutien de V4L2 ou UVC modules à l'intérieur du noyau.
Solution à la deuxième est de savoir si vous êtes un utilisateur root, vous pouvez modifier les autorisations du nœud.
C'est un assez gros projet et devrait prendre un certain temps si vous commencez à partir de zéro.. Tous les meilleurs
Neil, vous pouvez vous référer à ceci : stackoverflow.com/questions/8963897/...
OriginalL'auteur mk..
Oui, le but de l'hôte usb de soutien dans les versions plus récentes d'Android de l'espace utilisateur est de vous permettre de parler à des périphériques USB qui n'ont pas de pilotes du noyau. Sur le plan conceptuel, il sonne un peu semblable à la libusb idée, si elle n'est pas libusb.
http://developer.android.com/guide/topics/usb/host.html
Il se présente à moi (comme pure, non vérifiés de la spéculation) qu'il pourrait peut-être avoir des situations où partielle pilote-en-support du noyau pour un appareil qui pourrait interférer avec essayant de parler directement à partir de l'espace utilisateur de cette manière.
OriginalL'auteur Chris Stratton
Qui est dépendante sur le noyau et les pilotes compilés, également de prendre en considération à l'égard du matériel s'il peut le supporter.
Par le son de celui-ci - son ressemblant à de L'USB on-the-Go mécanisme... maintenant si vous voulez dire que vous ne voulez pas les appareils enracinées, malheureusement pour l'USB OTG mécanisme, vous avez besoin de root pour profiter d'elle et les scripts mécanisme dans le répertoire /etc dans le ramdisk pour gérer le plugin événement.
Eh bien, il a fait état spécifiquement 3.1 d'android et de plus, si c'est de l'auditoire cible, alors que pourrait être une bonne chose, mais, après avoir dit que, ce que la version du noyau est utilisé avec nid d'abeille ou tard, l'ICS est généralement liée avec le noyau v3. Même Sony Xperia Mini est en raison de l'ICS et de mise à niveau sera utilisé avec le noyau 2.6.32, c'est pourquoi j'ai répondu d'une façon ouverte, de ne pas supposer que tous les plus récents et les plus noyau v3...
Même oublié de mentionner que j'ai porté sur le PSBA ICS 4.0.3 pour le Zte Blade en cours d'exécution sur le noyau 2.6.35, ce qui limitait beaucoup de SCI de la fonctionnalité par rapport à l'USB ftw 🙂
OriginalL'auteur t0mm13b