AVDマネージャーでAndroid Studioでarmeabi API 21エミュレーターを作成し、ウェブカメラをフロントカメラとして使用するように設定して起動しました。問題は、それを開けないことです。 、このエラーが発生しているため:
emulator: ERROR: camera_device_start_capturing: VIDIOC_STREAMON on camera '/dev/video0' has failed: Timer expired
emulator: ERROR: _camera_client_query_start: Cannot start camera '/dev/video0' for NV21[640x480]: Inappropriate ioctl for device
どうすれば解決できますか?
Webカメラは、他のソフトウェアを使用して正常に機能します。運用システムはUbuntu 14.04です。
Android Studio、AVD Managerに移動し、[アクション]の編集(鉛筆)ボタンをクリックします。その後、次のウィンドウで[詳細設定]をクリックし、下にスクロールして[カメラオプション]で、前面と背面のウェブカメラを選択します。
Android Emulator)でカメラを有効にするには、AVDのconfig.iniファイルに次の強調表示されたコードを追加します。config.ini
ファイルは<userdirectory>/.Android
フォルダーの下にあります。
ファイル:~/.Android/config.ini
hw.lcd.density=160<br>
skin.name=HVGA<br>
skin.path=platforms\Android-9\skins\HVGA<br>
hw.cpu.Arch=arm<br>
abi.type=armeabi<br>
vm.heapSize=24<br>
image.sysdir.1=platforms\Android-9\images\<br>
hw.camera=yes<br>
sdcard.size=64M<br>
config.ini
ファイルが見つからない場合、またはAndroid SDKおよびAVD Managerを介してカメラサポートを有効にする場合は、次の手順を実行します。
Open Android SDK and AVD Manager:
手動でAVDの構成ファイルを編集してみてください。
〜/ .Android/avd/yourAvdName/config.ini
この行を追加することにより:
hw.camera=yes
[〜#〜] update [〜#〜]
Webカメラの実際の解像度を指定しようとすることができます。
hw.camera.maxHorizontalPixels=XXX
hw.camera.maxVerticalPixels=XXX
maxHorizontalPixelsのデフォルト値は64であり、maxVerticalPixelsは48であるため、この値を変更すると問題の解決に役立つ場合があります。
OS Xではわずかに異なるエラーメッセージで同様の問題が発生しました。すべては問題ありませんでしたが、カメラの初期化に時間がかかりすぎるとエミュレーターがクラッシュします。
私の場合、私は他のアプリケーションを閉じてしまい、うまくいきました。よりパフォーマンスの高いコンピューターでテストすることができます。