USBカメラデバイスをAndroidデバイスに接続すると、すべてのアプリケーションが外部カメラをプライマリカメラとして検出するアプリケーションをAndroidで作成したいと考えています。たとえば、カメラ アプリケーションを開くと、デバイスは USB 経由で接続されているものから写真を撮ります。これを行う方法はありますか?
本当の質問ではないので、この質問を閉じないでください。
USBカメラデバイスをAndroidデバイスに接続すると、すべてのアプリケーションが外部カメラをプライマリカメラとして検出するアプリケーションをAndroidで作成したいと考えています。たとえば、カメラ アプリケーションを開くと、デバイスは USB 経由で接続されているものから写真を撮ります。これを行う方法はありますか?
本当の質問ではないので、この質問を閉じないでください。
どちらがデフォルトのカメラであるかを決定しないため、単純なアプリを作成するだけではこれを行うことはできません。これはシステム ファームウェアによって行われ、Android SDK を介してこれを変更することはできません。
これを実現する唯一の方法は、Android をソース レベルでカスタマイズし、コードを追加して、デフォルトのカメラが利用可能になったときに USB で接続されたカメラに自動的に切り替えることです。
このドキュメントによると、OpenCV を使用するのは非常に簡単です。
デフォルトのカムからフレームをキャプチャするには:
CvCapture* capture = cvCaptureFromCAM( CV_CAP_ANDROID + 0 );
USB からフレームをキャプチャするには:
CvCapture* capture = cvCaptureFromCAM( CV_CAP_ANDROID + 1 );
OpenCV はオープン ソースです。ここからソース コードを取得できます。Android cmake プロジェクト が必要です。
編集:
Android は Linux ベースのオペレーティング システムです。Android ターミナル エミュレーターをダウンロードして、Linux のようにオーディオとビデオの設定をカスタマイズできます。デバイス マネージャーで内蔵カメラを無効にするか、外部 Web カメラをデフォルトとして使用するように設定を変更できます。 . しかし、私は内蔵カメラを個人的に完全に無効にします。