2013-05-28 3 views
0

나는이 명령안드로이드 GraphicBuffer는 HAL_PIXEL_FORMAT_YV12

새로운 GraphicBuffer ( GraphicBuffer :: USAGE_SW_WRITE_RARELY 160, 98, HAL_PIXEL_FORMAT_YV12, GraphicBuffer :: USAGE_HW_TEXTURE)와 안드로이드 GraphicBuffer을 만들려고 내 Android 4.0 장치 Huawei Mediapad는 있지만 Android 2.3 HTC Desire에는 없습니다.

ALLOC (160, 98, 842,094,169, 00000120, ...) -22 (잘못된 인수) 실패

05-28 16 : 53 : 15.994 (3765)는 GraphicBufferAllocator/W이다 제가 오류 얻을

픽셀 형식을 HAL_PIXEL_FORMAT_YV12에서 HAL_PIXEL_FORMAT_RGB_565로 변경하면 두 장치 모두에서 제대로 작동합니다. 안드로이드 2.3은 YV12를 지원하지 않는다고 가정합니다. 하지만 YUV 픽셀의 형식이 필요합니다.

답변

0

YUV가 필요한 경우 HAL_PIXEL_FORMAT_YCrCb_420_SP 인 NV21을 사용하고 모든 API 수준에서 지원됩니다.

YV12는 API 레벨 9에 도입되었지만 API 12부터 모든 장치에서 지원된다는 보장이 있습니다.