การแมป Camera2 API

หน้านี้สรุปวิธีที่ Camera2 API แทนที่ Core Extended View System (EVS) API

IEvsEnumerator API

IEvsEnumerator Camera2 NDK API Camera2 Java API

openCamera

EVS openCamera รวมการกำหนดค่าการเปิดและการสตรีมไว้ด้วยกัน แต่ Camera2 แยกการกำหนดค่าทั้ง 2 ออกจากกัน

ACameraManager_openCamera แล้วตามด้วย ACameraDevice_createCaptureSession ที่มี AImageReader แล้วตามด้วย ACameraDevice_createCaptureRequest

CameraManager.openCamera แล้วตามด้วย CameraDevice.createCaptureSession (ที่มี ImageReader หรือ อื่นSurface) แล้วตามด้วย CameraDevice.createCaptureRequest

closeCamera ACameraDevice_close CameraDevice.close
getCameraList ACameraManager_getCameraIdList แล้วตามด้วย ACameraManager_getCameraCharacteristics เพื่อดูรายละเอียด CameraManager.getCameraIdList แล้วตามด้วย CameraManager.getCameraCharacteristics เพื่อดูรายละเอียด
getStreamList ACameraManager_getCameraCharacteristics อ่านแท็ก ACAMERA_SCALER_AVAILABLE_STREAM_CONFIGURATIONS CameraManager.getCameraCharacteristicsรับ CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP
registerStatusCallback ACameraManager_registerAvailabilityCallback ที่มี ACameraManager_AvailabilityListener CameraManager.registerAvailabilityCallback ที่มี CameraManager.AvailabilityCallback
isHardware ไม่มี ไม่มี

getDisplayIdList

เลิกใช้งานแล้ว

ใช้ DisplayManager.getDisplays

ไม่มี ไม่มี

getDisplayState

เลิกใช้งานแล้ว

ใช้ Display.getState

ไม่มี ไม่มี

getDisplayStateById

เลิกใช้งานแล้ว

ใช้ DisplayManager.getDisplay แล้วตามด้วย Display.getState

ไม่มี ไม่มี

openDisplay

เลิกใช้งานแล้ว

ใช้ WindowManager.addView ใน Display ที่เฉพาะเจาะจง

ไม่มี ไม่มี

closeDisplay

เลิกใช้งานแล้ว

ใช้ WindowManager.removeView

ไม่มี ไม่มี

openUltrasonicsArray

เลิกใช้งานแล้ว

ใช้พร็อพเพอร์ตี้ VHAL

ไม่มี ไม่มี

getUltrasonicsArrayList

เลิกใช้งานแล้ว

ใช้พร็อพเพอร์ตี้ VHAL

ไม่มี ไม่มี

closeUltrasonicsArray

เลิกใช้งานแล้ว

ใช้พร็อพเพอร์ตี้ VHAL

ไม่มี ไม่มี

IEvsCamera

IEvsCamera Camera2 NDK API Camera2 Java API
getCameraInfo ACameraManager_getCameraCharacteristics CameraManager.getCameraCharacteristics

getPhysicalCameraInfo

สำหรับกล้องตรรกะ ให้ตรวจสอบ getPhysicalCameraIds

ACameraManager_getCameraCharacteristics CameraManager.getCameraCharacteristics

setMaxFramesInFlight

เปลี่ยนแปลงแบบไดนามิกใน Camera2 ไม่ได้ ให้ตั้งค่าเมื่อสร้าง ImageReader

ตั้งค่าใน AImageReader_new หรือ AImageReader_newWithUsage ตั้งค่าใน ImageReader.newInstance(width, height, format, maxImages)
startVideoStream ACameraCaptureSession_setRepeatingRequestV2 CameraCaptureSession.setSingleRepeatingRequest
stopVideoStream ACameraCaptureSession_stopRepeating CameraCaptureSession.stopRepeating

pauseVideoStream

ไม่มีฟังก์ชันที่เทียบเท่าโดยตรง ใช้ stopRepeatingRequest

ACameraCaptureSession_stopRepeating CameraCaptureSession.stopRepeating

resumeVideoStream

ไม่มีฟังก์ชันที่เทียบเท่าโดยตรง ให้ใช้ setSingleRepeatingRequest

ACameraCaptureSession_setRepeatingRequestV2 CameraCaptureSession.setSingleRepeatingRequest

doneWithFrame

ปล่อยบัฟเฟอร์กลับไปที่คิว

AImage_delete Image.close

importExternalBuffers

ระบบจะจัดการบัฟเฟอร์โดย Surface ดูข้อมูลเพิ่มเติมได้ที่ CameraCaptureSession.prepare

ไม่มี ไม่มี
getParameterList ACameraMetadata_getAllTags CameraCharacteristics.getKeys
getIntParameter ACaptureRequest_getConstEntry CaptureRequest.get(key)

getIntParameterRange

ช่วงเป็นส่วนหนึ่งของ CameraCharacteristics

ACameraMetadata_getConstEntry CameraCharacteristics.get(key)
(CONTROL_AE_COMPENSATION_RANGE) และอื่นๆ ที่คล้ายกัน
setIntParameter ACaptureRequest_setEntry_i32, _u8 และอื่นๆ ที่คล้ายกัน CaptureRequest.Builder.set(key, value)

getExtendedInfo

ใช้แท็กของผู้ให้บริการเพื่อใช้ข้อมูลที่กำหนดเอง

ใช้แท็กของผู้ให้บริการใน ACaptureRequest
หรือ ACameraMetadata
ใช้แท็กของผู้ให้บริการใน CaptureRequest หรือ CameraCharacteristics

setExtendedInfo

ใช้แท็กของผู้ให้บริการเพื่อใช้ข้อมูลที่กำหนดเอง

ใช้แท็กของผู้ให้บริการใน ACaptureRequest ใช้แท็กของผู้ให้บริการใน CaptureRequest.Builder

setPrimaryClient

เลิกใช้งานแล้ว

สถานะไคลเอ็นต์หลักจะอิงตามลำดับความสำคัญในโหมดที่ใช้ร่วมกันของ Camera2

ไม่มี ไม่มี

unsetPrimaryClient

เลิกใช้งานแล้ว

ไม่มี ไม่มี

forcePrimaryClient

เลิกใช้งานแล้ว

ไม่มี ไม่มี

IEvsCameraStream

IEvsCameraStream Camera2 NDK API Camera2 Java API

deliverFrame

การเรียกกลับเพื่อรับเฟรมใหม่ รับรูปภาพด้วย ImageReader.acquireLatestImage หรือ ImageReader.acquireNextImage

onImageAvailable ของ AImageReader_ImageListener

onImageAvailable ของ ImageReader.OnImageAvailableListener

notify

การเรียกกลับสำหรับเหตุการณ์การจับภาพ (เริ่มต้น ดำเนินการ เสร็จสมบูรณ์ ล้มเหลว) และ CameraDevice.StateCallback สำหรับเหตุการณ์ในอุปกรณ์ (ข้อผิดพลาด การตัดการเชื่อมต่อ)

ACameraCaptureSession_captureCallbacksV2

CameraCaptureSession.CaptureCallback

IEvsDisplay API

API ทั้งหมดในอินเทอร์เฟซ IEvsDisplay เลิกใช้งานแล้ว OEM ควรใช้คลาส Android มาตรฐานต่อไปนี้