media.bufferpool2: support AHardwareBuffer based buffer

Change-Id: I43102797b92d4782d2fc620ea3c9490f5187b90c
This commit is contained in:
Sungtak Lee 2024-01-11 21:26:07 +00:00
parent 20768c89d7
commit 71ef1c1559
3 changed files with 16 additions and 4 deletions

View file

@ -26,6 +26,9 @@ aidl_interface {
vendor_available: true,
double_loadable: true,
srcs: ["android/hardware/media/bufferpool2/*.aidl"],
headers: [
"HardwareBuffer_aidl",
],
imports: [
"android.hardware.common-V2",
"android.hardware.common.fmq-V1",
@ -44,10 +47,13 @@ aidl_interface {
"//apex_available:platform",
"com.android.media.swcodec",
],
additional_shared_libraries: [
"libnativewindow",
],
min_sdk_version: "29",
},
rust: {
enabled: true,
enabled: false,
},
},
versions_with_info: [
@ -59,6 +65,6 @@ aidl_interface {
],
},
],
frozen: true,
frozen: false,
}

View file

@ -35,5 +35,6 @@ package android.hardware.media.bufferpool2;
@VintfStability
parcelable Buffer {
int id;
android.hardware.common.NativeHandle buffer;
@nullable android.hardware.common.NativeHandle buffer;
@nullable android.hardware.HardwareBuffer hwbBuffer;
}

View file

@ -17,6 +17,7 @@
package android.hardware.media.bufferpool2;
import android.hardware.common.NativeHandle;
import android.hardware.HardwareBuffer;
/**
* Generic buffer for fast recycling for media/stagefright.
@ -26,10 +27,14 @@ import android.hardware.common.NativeHandle;
* by a buffer pool, and are recycled to the buffer pool when they are
* no longer referenced by the clients.
*
* Initially all buffers in media HAL should be NativeHandle(actually native_handle_t).
* HardwareBuffer(actually AHardwareBuffer) for GraphicBuffer is added from V2.
*
* E.g. ion or gralloc buffer
*/
@VintfStability
parcelable Buffer {
int id;
NativeHandle buffer;
@nullable NativeHandle buffer;
@nullable HardwareBuffer hwbBuffer;
}