feat: Add enableGpuBuffers
property (#2557)
* Revert "fix: Fix VideoPipeline crash on Samsung (Disable `USAGE_GPU_SAMPLED_IMAGE` ImageReader) (#2555)"
This reverts commit ad33dd91b1
.
* feat: Add `enableGpuBuffers` prop
* Create ImageWriter separately
This commit is contained in:
@@ -183,10 +183,29 @@ export interface CameraProps extends ViewProps {
|
||||
*
|
||||
* @platform iOS
|
||||
* @default
|
||||
* - true // if video={true} and frameProcessor={undefined}
|
||||
* - true // if frameProcessor={undefined}
|
||||
* - false // otherwise
|
||||
*/
|
||||
enableBufferCompression?: boolean
|
||||
/**
|
||||
* Enables or disables GPU-sampled buffers for the video stream. This only takes effect when using a {@linkcode frameProcessor}.
|
||||
*
|
||||
* When recording a Video ({@linkcode video}) while a Frame Processor is running ({@linkcode frameProcessor}),
|
||||
* the {@linkcode Frame | Frames} will need to be forwarded to the Media Encoder.
|
||||
*
|
||||
* - When `enableGpuBuffers` is `false`, the Video Pipeline will use CPU buffers causing an additional copy
|
||||
* from the Frame Processor to the Media Encoder, which potentially results in increased latency.
|
||||
* - When `enableGpuBuffers` is `true`, the Video Pipeline will use shared GPU buffers which greatly increases
|
||||
* it's efficiency as an additional buffer copy is avoided.
|
||||
* (See [`USAGE_GPU_SAMPLED_IMAGE`](https://developer.android.com/reference/android/hardware/HardwareBuffer#USAGE_GPU_SAMPLED_IMAGE))
|
||||
*
|
||||
* In general, it is recommended to set this to `true` if possible, as this can increase performance and efficiency of the Video Pipeline.
|
||||
* This is an experimental feature flag however, so use at your own risk.
|
||||
*
|
||||
* @platform Android
|
||||
* @default false
|
||||
*/
|
||||
enableGpuBuffers?: boolean
|
||||
/**
|
||||
* Enables or disables low-light boost on this camera device.
|
||||
*
|
||||
|
Reference in New Issue
Block a user