Alguém conseguiu obter um quadro YUV_420_888 usando o RenderScript e a nova API da câmera?
Estou usando RenderScript e Allocation para obter quadros YUV_420_888 da API Android Camera2, mas uma vez que copio o byte [] da Allocation, recebo apenas o plano Y dos 3 planos que compõem o quadro, enquanto os valores U e V valorizam são definidos como 0 no byte []. Estou tentando imitar o onPreviewframe da API da câmera anterior para executar o processamento de aplicativos dos quadros da câmera. Minha alocação é criada 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);
enquanto meu script se parece com:
#pragma version(1)
#pragma rs java_package_name(my_package)
#pragma rs_fp_relaxed
rs_allocation my_frame;