¿Alguien ha logrado obtener un marco YUV_420_888 utilizando RenderScript y la nueva API de cámara?
Estoy usando RenderScript y Asignación para obtener marcos YUV_420_888 de la API de Android Camera2, pero una vez que copie el byte [] de la Asignación, recibo solo el plano Y de los 3 planos que componen el marco, mientras que los valores de los planos U y V se establecen en 0 en el byte []. Estoy tratando de imitar el onPreviewframe de la API de cámara anterior para realizar el procesamiento de la aplicación de los marcos de la cámara. Mi asignación se crea como:
Type.Builder yuvTypeBuilderIn = new Type.Builder(rs, Element.YUV(rs));
yuvTypeBuilderIn.setX(dimensions.getWidth());
yuvTypeBuilderIn.setY(dimensions.getHeight());
yuvTypeBuilderIn.setYuvFormat(ImageFormat.YUV_420_888);
allocation = Allocation.createTyped(rs, yuvTypeBuilderIn.create(),
Allocation.USAGE_IO_INPUT | Allocation.USAGE_SCRIPT);
mientras mi guión se ve así:
#pragma version(1)
#pragma rs java_package_name(my_package)
#pragma rs_fp_relaxed
rs_allocation my_frame;