jualkaosmuslim.com"s camera Hardware Abstraction Layer (HAL) connects the higher levelcamera framework APIs inapp jualkaosmuslim.com.hardware.camera2to lớn your underlying camera driver & hardware. jualkaosmuslim.com 8.0 introducedTreble, switching the CameraHal APIlớn a stable interface defined by the HAL Interface Description Language (HIDL).If you have sầu previously developed a cameraHAL module và driver for jualkaosmuslim.com 7.0 & lower, be aware of significantchanges in the camera pipeline.
Bạn đang xem: Hal là gì
The aim of the jualkaosmuslim.com Camera API rethiết kế is lớn substantially increase theability of applications lớn control the camera subsystem on jualkaosmuslim.com devices whilereorganizing the API to lớn make it more efficient và maintainable. The additionalcontrol makes it easier to lớn build high-chất lượng camera applications on jualkaosmuslim.comdevices that can operate reliably across multiple products while still usingdevice-specific algorithms whenever possible khổng lồ maximize quality andperformance.
Version 3 of the camera subsystem structures the operation modes inlớn asingle unified view, which can be used khổng lồ implement any of the previous modes& several others, such as burst mode. This results in better user control forfocus & exposure and more post-processing, such as noise reduction, contrast& sharpening. Further, this simplified view makes it easier for applicationdevelopers to use the camera"s various functions.
The API models the camera subsystem as a pipeline that converts incomingrequests for frame captures into lớn frames, on a 1:1 basis. The requestsencapsulate all configuration information about the capture và processing of aframe. This includes resolution và px format; manual sensor, lens & flashcontrol; 3A operating modes; RAW->YUV processing control; statistics generation;and so on.
In simple terms, the application framework requests a frame from the camerasubsystem, và the camera subsystem returns results to lớn an output stream. Inaddition, metadata that contains information such as color spaces and lensshading is generated for each set of results. You can think of camera version 3as a pipeline khổng lồ camera version 1"s one-way stream. It converts each capturerequest inlớn one image captured by the sensor, which is processed into:
A Result object with metadata about the capture.One lớn N buffers of image data, each inkhổng lồ its own destination Surface.The mix of possible output Surfaces is preconfigured:
Each Surface is a destination for a stream of image buffers of a fixedresolution.Only a small number of Surfaces can be configured as outputs at once (~3).A request contains all desired capture settings và the menu of outputSurfaces khổng lồ push image buffers into for this request (out of the totalconfigured set). A request can be one-shot (with capture()), or itmay be repeated indefinitely (with setRepeatingRequest()). Captureshave priority over repeating requests.
Xem thêm: Cách Làm Quẩy Không Dùng Bột Khai
Figure 1. Camera core operation model
Version 1 of the camera subsystem was designed as a black box with high-levelcontrols and the following three operating modes:
PreviewVideo RecordStill CaptureEach mode has slightly different & overlapping capabilities. This made ithard lớn implement new features such as burst mode, which falls between two ofthe operating modes.
Figure 2. Camera components
jualkaosmuslim.com 7.0 continues khổng lồ support camera HAL1 as many devices still rely onit. In addition, the jualkaosmuslim.com camera service supports implementing both HALs (1& 3), which is useful when you want khổng lồ tư vấn a less-capable front-facingcamera with camera HAL1 & a more advanced back-facing camera with cameraHAL3.
There is a single camera HAL module (with its ownversionnumber), which lists multiple independent camera devices that each havetheir own version number. Camera module 2 or newer is required to supportdevices 2 or newer, và such camera modules can have a set of camera deviceversions (this is what we mean when we say jualkaosmuslim.com supports implementing bothHALs).
Content & code samples on this page are subject to lớn the licenses described in the Content License. Java is a registered trademark of Oracle and/or its affiliates.