カメラの出力を表示するために使用される SurfaceView に加えて ImageReader を使用しているという問題に直面しています。次のように、SurfaceView 自体と ImageReader のサーフェスを追加しました (そして、新しい画像でイベントを受け取るために ImageReader リスナーを追加しました)。
preview.addTarget(_surfaces.get(1)); //ImageReader surface
preview.addTarget(_surfaces.get(0)); //SurfaceView of the layout
ただし、ImageReader を削除すると、アプリケーションは正常に動作します (カメラからの遅延はありません)。しかし、ImageReader サーフェスが追加されるとすぐに、カメラが大幅に遅れます。カメラをよりスムーズに動かすためのアイデアはありますか? ImageReader は次のように作成されます。
reader = ImageReader.newInstance(640, 480, ImageFormat.JPEG, 1);
遅延は、レイアウトの SurfaceView と ImageReader 自体の両方で、画像を 2 回 (?) レンダリングする必要があることが原因である可能性があります。