問題タブ [android-camera2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
299 参照

java - 古い Camera API で ImageReader を使用する (API <20 でサポートされる予定)

hereImageReaderから使用するための Google の例を取り上げました。

コードはCamera2API を使用ImageReaderし、画像のクエリがプレビューとは異なるスレッドで実行されるようにします。

Android KitKat (API 20) をターゲットにしたいので、そのImageReader部分はそのままで古い Camera API を使用するようにコードを変更する必要があります。

を設定する元のコードの一部を次に示しますonImageAvailableListener

これで、古い Camera API を使用できるようになりました。しかし、私はそれを と接続することに迷っていImageReaderます。onImageListenerそのため、画像が配信されたらアクセスできるようにするには、どのように設定すればよいかわかりません。

これが私の修正です:

ImageReader私の質問は、上記のコードを正しく機能させるためにどのように追加すればよいですか?

前もって感謝します。

0 投票する
1 に答える
1099 参照

java - Android カメラ: 「characteristics.get(CameraCharacteristics.LENS_FACING)」のボックス化を解除すると、NPE が生成される場合があります

を実装Camera2していますが、カメラ出力を設定しているときに次の警告が表示されます (発生する可能性のある「npe」を再現できませんでした) ( Googleのサンプルからコードを取得します)次の行で次の警告が表示されます。

「'characteristics.get(CameraCharacteristics.LENS_FACING)' のボックス化を解除すると、NPE が発生する可能性があります。」

これが発生した場合にこれをキャッチするために、これを適切な方法で検査する方法を誰かが知っていますか?

0 投票する
1 に答える
7332 参照

android - Android Camera2 Preview が横向きのときに 90 度回転する

Camera2 APIを学ぼうとして、 YouTubeのチュートリアルに従っていました。もちろん、私は自分のアプリを開発していると同時に、これを学んでいました. チュートリアルと私のアプリの間の矛盾の 1 つは、アプリが横向きでなければならないときに、チュートリアルがカメラを縦向きモードにしたことです。

現在、カメラのプレビューを表示できますが、アプリが横向きまたは横向きの場合、カメラのプレビューは 90 度回転しているように見えます。TextureView を回転できるように感じますが、写真を撮ると正しく回転しないように見えます。

以下は、画像サイズに関係するコードです (コード全体は非常に長いです)。

私はそのgetPreferredPreviewSize方法で遊んでいますが、私はそれを十分に理解していません. compare最後に と を使用するlhsかどうかはわかりませんrhs

これを回転させるための簡単なものがありませんか?

0 投票する
1 に答える
1529 参照

android - ImageReader はカメラの遅延を引き起こします

カメラの出力を表示するために使用される SurfaceView に加えて ImageReader を使用しているという問題に直面しています。次のように、SurfaceView 自体と ImageReader のサーフェスを追加しました (そして、新しい画像でイベントを受け取るために ImageReader リスナーを追加しました)。

ただし、ImageReader を削除すると、アプリケーションは正常に動作します (カメラからの遅延はありません)。しかし、ImageReader サーフェスが追加されるとすぐに、カメラが大幅に遅れます。カメラをよりスムーズに動かすためのアイデアはありますか? ImageReader は次のように作成されます。

遅延は、レイアウトの SurfaceView と ImageReader 自体の両方で、画像を 2 回 (?) レンダリングする必要があることが原因である可能性があります。

0 投票する
1 に答える
1445 参照

android - Camera2 でのキャプチャ セッション中にプレビューを有効にする

Camera2 に基づいてカメラ アプリを作成していますが、保存した画像がサーフェス ビューで見た最新の画像と一致しません。プレビュー セッションは機能しているようですが、キャプチャを要求すると、新しい要求によってプレビューが停止され、画像がキャプチャされます。最新の写真で表面ビューがフリーズし、シャッターボタンを押した時間 (プレビューの実行とキャプチャの要求) とキャプチャ要求からの onCaptureCompleted の間にギャップが生じます。

プレビューセッションはこちら

mCaptureCallback は以下のように定義されています。

プライベート CameraCaptureSession.CaptureCallback mCaptureCallback = new CameraCaptureSession.CaptureCallback() {

何が起こっているかというと、プレビューを繰り返すとうまくいきます。プロセスは実行を維持するためにのみ使用され、mState が CAPTURE に設定されるまで何も起こりません。

シャッターボタンをクリックしたときにキャプチャするように設定されています。ボタンをクリックすると、次のように呼び出します。

次に、mState が mCaptureCallback で定義されているように Capture にあるため、CapturePicture を呼び出します。

takePicutreNow が定義されています

このプロセスは機能していますが、プレスと画像保存の間にラグがあり、プレビューから画面に表示された最新の写真は、すばやく移動すると保存されたものとまったく同じではありません.

キャプチャはサーフェスを更新せず、サーフェスはプレビューのときにのみ表示されるようです

私が保存したものを見るアイデアはありますか?ありがとう

0 投票する
0 に答える
450 参照

android - プレビュー Camera2 Android API を使用してフロントで水平方向にストレッチ

アプリケーションを Camera2 API に移植しています。プレビューでは、Textureview を使用してプレビューを正方形形式で表示しています。

以下のロジックを使用して、カメラ プレビューをスケーリングします (これは古いカメラ API で正常に動作します)。ポートレート モードでストレッチせずにプレビューをスケーリングします。ただし、このロジックは、前面カメラで Camera2 API を使用する Samsung S4 では機能しません。背面カメラでは問題なく動作しますが、これは少し奇妙です。

Nexus 5x で同じコードを試したところ、両方のカメラで問題なく動作しました。誰かが同じ問題を抱えているか、この問題を解決する方法を知っていますか?