簡體   English   中英

如何使用 Camera2 獲取 Android 攝像頭圖像

[英]How to get an Android camera image with Camera2

安卓:有什么問題嗎? 我正在嘗試使用 CAMERA2 從我的 Android 相機中獲取照片,但無法正常工作。 我只需要從我的相機獲取視頻流並將其顯示在屏幕上。 代碼主要活動:

public class MainActivity extends AppCompatActivity {
private CameraManager cameraManager = null;
private TextureView textureView = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    textureView = (TextureView) findViewById(R.id.textureView);

    cameraManager = (CameraManager) getSystemService(CAMERA_SERVICE);

}

@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
protected void onResume() {
    super.onResume();
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
        return;
    }
    try {
        cameraManager.openCamera(cameraManager.getCameraIdList()[0], new CameraDevice.StateCallback() {
            @Override
            public void onOpened(@NonNull CameraDevice camera) {
                CaptureRequest.Builder builder = null;
                try {
                    builder = camera.createCaptureRequest(CameraDevice.TEMPLATE_RECORD);
                } catch (CameraAccessException e) {
                    e.printStackTrace();
                }
                if(builder != null)
                    if(textureView != null)
                    builder.addTarget(new Surface(textureView.getSurfaceTexture()));
                else onClosed(camera);
            }

            @Override
            public void onDisconnected(@NonNull CameraDevice camera) {
            }

            @Override
            public void onError(@NonNull CameraDevice camera, int error) {

            }
        }, new Handler(getApplicationContext().getMainLooper()));
    } catch (CameraAccessException e) {
        e.printStackTrace();
    }
}

請幫忙

請查看 camera2 的示例視頻捕獲應用程序: https ://github.com/googlesamples/android-Camera2Video

您當前的代碼永遠不會使用您的 TextureView 創建相機捕獲會話,並且您也永遠不會向該會話提交重復的捕獲請求。 查看示例以了解它是如何設置相機的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM