質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

0回答

620閲覧

camera2Basicの長時間露光の機種依存を解決したい

kakikaki

総合スコア0

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

2クリップ

投稿2020/06/11 09:55

1.前提・実現したいこと

camera2Basicを元に長時間露光を行っております。
下記の問題があり、教えて頂けないでしょうか。

2.詳細

露光時間の設定が機種に依存をしているようなので確認をしたいです。
例えば、露光時間の設定を5秒とします。

set(CaptureRequest.SENSOR_EXPOSURE_TIME, 5000000000.toLong()) //露出時間の値

撮影スタートから「onCaptureCompleted」が呼ばれるまでの時間は
Huawei P10の場合は、5100msec程度で約5秒で問題はなくきちんと画像の保存までできます。、
oppo A5 2020の場合は、約10秒かかります。
他の秒数でも試しましたが、oppoの場合は必ず設定の約2倍かかってしまいます。

3.質問

  1. 何か考えられる原因など分からないでしょうか。
  2. 設定時間通りになるような対応方法があるでしょうか。
  3. oppoでは、EXPOSUREの範囲はmax16秒となっていて範囲内なので問題ないはずですが
    大体8秒以上になると「onCaptureCompleted」が呼ばれずにエラーで終了してしまいます。
    「 E/ANR_LOG: >>> msg's executing time is too long」
    上記の質問と同じようですが、対応方法はあるでしょうか。
  4. 上記の状況で、Camera2Basicがカメラを掴んでいるらしく、端末を再起動しないと
    カメラが使えなくなってしまいます。
    このようにエラーの時に処理をうまく終了させて、再起動をしなくてもカメラを使える
    ようにする方法はあるでしょうか。
  5. 私が持っている端末での確認の為、他の端末でもこのようなことはあるでしょうか。

###4.参考情報
google PLAY内のcamera2apiを元にしたようなアプリでは、同じようにエラー
で落ちてしまいカメラがそのアプリに掴まれたままになってしまい、端末を再起動
しないとカメラが使えなくなってしまいます。

###5.該当のソースコード
camera2Basicをほとんどそのまま使い、カメラの設定部分のみ変更しています。

###6.試したこと
上記のLOGをしかけて、どこまで処理が進んでいるかを確認しましたが、
onCaptureCompleted」が呼ばれないということで行き詰ってしまいました。

7.補足情報(FW/ツールのバージョンなど)

Android Studio 3.6.3
言語:kotlin
ベースにしたもの:Camera2Basic (kotlin)
端末1:P10
端末2:oppo A5 2020

最後に

何か情報をお持ちの方、またはこれ試して、などコメントを頂けると大変助かります。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kakikaki

2020/06/12 09:01

ご連絡ありがとうございました。 はい、私も@ohwada様のカメラに関する記事は、すべて拝見させていただきました。 設定は、以下でOFFで使用しています。 set(CaptureRequest.CONTROL_AF_MODE, CaptureRequest.CONTROL_AF_MODE_OFF) // オートフォーカスをOFFする set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_OFF)// 自動露出をOFFする set(CaptureRequest.CONTROL_CAPTURE_INTENT, CaptureRequest.CONTROL_CAPTURE_INTENT_MANUAL)// マニュアルを指定する set(CaptureRequest.SENSOR_EXPOSURE_TIME, (ss.toLong() * 5000000000)) //露出時間の値 nsec
kakikaki

2020/06/12 09:06

すみません。最後の露出時間は変数を使っているので間違いを記載しています。 実際は、以下でそのままの値を入れて確認しております。 set(CaptureRequest.SENSOR_EXPOSURE_TIME, 5000000000.toLong()) //露出時間の値
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問