A partir de 2026, para alinearnos con nuestro modelo de desarrollo estable de la rama principal y garantizar la estabilidad de la plataforma para el ecosistema, publicaremos el código fuente en AOSP en el segundo y cuarto trimestre. Para compilar AOSP y contribuir a él, te recomendamos que utilices android-latest-release en lugar de aosp-main. La rama del manifiesto android-latest-release siempre hará referencia a la versión más reciente que se envió al AOSP. Para obtener más información, consulta Cambios en AOSP.
Metadatos de fotogramas
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Los metadatos de fotogramas se presentan en Android 11 como un miembro de la estructura de datos de BufferDesc. Este campo nuevo se declara como vec<uint8_t> para admitir un formato de datos definido por el cliente y es opaco para el administrador de EVS.
struct BufferDesc {
/**
* HIDL counterpart of AHardwareBuffer_Desc. Please see
* hardware/interfaces/graphics/common/1.2/types.hal for more details.
*/
HardwareBuffer buffer;
...
/**
* Time that this buffer is being filled.
*/
int64_t timestamp;
/**
* Frame metadata field. This is opaque to EVS manager.
*/
vec<uint8_t> metadata;
};
HIDL vec<T> representa arrays de tamaño dinámico con los datos almacenados en un búfer independiente. Estas instancias se representan con una instancia de vec<T> en la estructura, lo que significa que la implementación del controlador HAL de la cámara EVS es propietaria de estos metadatos y debe limpiarlos correctamente. Existen dos formas de completar los metadatos:
- Cambia el tamaño del contenedor y completa los datos con
operator[]
struct BufferDesc desc = {};
...
desc.metadata.resize(10);
for (auto i = 0; i < 10; ++i) {
desc.metadata[i] = frameInfo[i];
}
...
- Usa
setToExternal()
para que vec<T> apunte a tu estructura de datos personalizada.
struct BufferDesc desc = {};
struct FrameMetadata metadata = {
...
}; // this is in vendor-defined format.
desc.metadata.setToExternal(&metadata, sizeof(metadata));
...
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-08-08 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-08 (UTC)"],[],[]]