Lines Matching refs:buffer
113 uint32_t Image_getBlobSize(LockedImage* buffer, bool usingRGBAOverride) { in Image_getBlobSize() argument
115 LOG_ALWAYS_FATAL_IF(buffer == NULL, "Input buffer is NULL!!!"); in Image_getBlobSize()
117 uint32_t width = buffer->width; in Image_getBlobSize()
118 uint8_t* blobBuffer = buffer->data; in Image_getBlobSize()
121 width = (buffer->width + buffer->stride * (buffer->height - 1)) * 4; in Image_getBlobSize()
154 status_t getLockedImageInfo(LockedImage* buffer, int idx, in getLockedImageInfo() argument
157 LOG_ALWAYS_FATAL_IF(buffer == NULL, "Input buffer is NULL!!!"); in getLockedImageInfo()
164 ALOGV("%s: buffer: %p", __FUNCTION__, buffer); in getLockedImageInfo()
173 int32_t fmt = buffer->flexFormat; in getLockedImageInfo()
180 if (buffer->width % 2 != 0) { in getLockedImageInfo()
181 ALOGE("YCbCr_420_888: width (%d) should be a multiple of 2", buffer->width); in getLockedImageInfo()
185 if (buffer->height % 2 != 0) { in getLockedImageInfo()
186 ALOGE("YCbCr_420_888: height (%d) should be a multiple of 2", buffer->height); in getLockedImageInfo()
190 if (buffer->width <= 0) { in getLockedImageInfo()
191 ALOGE("YCbCr_420_888: width (%d) should be a > 0", buffer->width); in getLockedImageInfo()
195 if (buffer->height <= 0) { in getLockedImageInfo()
196 ALOGE("YCbCr_420_888: height (%d) should be a > 0", buffer->height); in getLockedImageInfo()
202 buffer->data : in getLockedImageInfo()
204 buffer->dataCb : in getLockedImageInfo()
205 buffer->dataCr; in getLockedImageInfo()
209 rStride = buffer->stride; in getLockedImageInfo()
210 dataSize = buffer->stride * (buffer->height - 1) + buffer->width; in getLockedImageInfo()
212 pStride = buffer->chromaStep; in getLockedImageInfo()
213 rStride = buffer->chromaStride; in getLockedImageInfo()
214 dataSize = buffer->chromaStride * (buffer->height / 2 - 1) + in getLockedImageInfo()
215 buffer->chromaStep * (buffer->width / 2 - 1) + 1; in getLockedImageInfo()
221 if (buffer->width % 2 != 0) { in getLockedImageInfo()
222 ALOGE("YCrCb_420_SP: width (%d) should be a multiple of 2", buffer->width); in getLockedImageInfo()
226 if (buffer->height % 2 != 0) { in getLockedImageInfo()
227 ALOGE("YCrCb_420_SP: height (%d) should be a multiple of 2", buffer->height); in getLockedImageInfo()
231 if (buffer->width <= 0) { in getLockedImageInfo()
232 ALOGE("YCrCb_420_SP: width (%d) should be a > 0", buffer->width); in getLockedImageInfo()
236 if (buffer->height <= 0) { in getLockedImageInfo()
237 ALOGE("YCrCb_420_SP: height (%d) should be a > 0", buffer->height); in getLockedImageInfo()
241 cr = buffer->data + (buffer->stride * buffer->height); in getLockedImageInfo()
244 ySize = buffer->width * (buffer->height - 1) + buffer->width; in getLockedImageInfo()
245 cSize = buffer->width * (buffer->height / 2 - 1) + buffer->width - 1; in getLockedImageInfo()
249 buffer->data : in getLockedImageInfo()
256 rStride = buffer->width; in getLockedImageInfo()
260 if (buffer->width % 2 != 0) { in getLockedImageInfo()
261 ALOGE("YV12: width (%d) should be a multiple of 2", buffer->width); in getLockedImageInfo()
265 if (buffer->height % 2 != 0) { in getLockedImageInfo()
266 ALOGE("YV12: height (%d) should be a multiple of 2", buffer->height); in getLockedImageInfo()
270 if (buffer->width <= 0) { in getLockedImageInfo()
271 ALOGE("YV12: width (%d) should be a > 0", buffer->width); in getLockedImageInfo()
275 if (buffer->height <= 0) { in getLockedImageInfo()
276 ALOGE("YV12: height (%d) should be a > 0", buffer->height); in getLockedImageInfo()
281 LOG_ALWAYS_FATAL_IF(buffer->stride % 16, in getLockedImageInfo()
282 "Stride is not 16 pixel aligned %d", buffer->stride); in getLockedImageInfo()
284 ySize = buffer->stride * buffer->height; in getLockedImageInfo()
285 cStride = ALIGN(buffer->stride / 2, 16); in getLockedImageInfo()
286 cr = buffer->data + ySize; in getLockedImageInfo()
287 cSize = cStride * buffer->height / 2; in getLockedImageInfo()
292 buffer->data : in getLockedImageInfo()
298 rStride = (idx == 0) ? buffer->stride : ALIGN(buffer->stride / 2, 16); in getLockedImageInfo()
301 if (buffer->height % 2 != 0) { in getLockedImageInfo()
302 ALOGE("YCBCR_P010: height (%d) should be a multiple of 2", buffer->height); in getLockedImageInfo()
306 if (buffer->width <= 0) { in getLockedImageInfo()
307 ALOGE("YCBCR_P010: width (%d) should be a > 0", buffer->width); in getLockedImageInfo()
311 if (buffer->height <= 0) { in getLockedImageInfo()
312 ALOGE("YCBCR_P010: height (%d) should be a > 0", buffer->height); in getLockedImageInfo()
316 if (buffer->dataCb && buffer->dataCr) { in getLockedImageInfo()
319 buffer->data : in getLockedImageInfo()
321 buffer->dataCb : in getLockedImageInfo()
322 buffer->dataCr; in getLockedImageInfo()
326 rStride = buffer->stride; in getLockedImageInfo()
327 dataSize = buffer->stride * (buffer->height - 1) + buffer->width * 2; in getLockedImageInfo()
329 pStride = buffer->chromaStep; in getLockedImageInfo()
330 rStride = buffer->chromaStride; in getLockedImageInfo()
331 dataSize = buffer->chromaStride * (buffer->height / 2 - 1) + in getLockedImageInfo()
332 buffer->chromaStep * (buffer->width / 2); in getLockedImageInfo()
337 ySize = (buffer->stride * 2) * buffer->height; in getLockedImageInfo()
340 cb = buffer->data + ySize; in getLockedImageInfo()
343 pData = (idx == 0) ? buffer->data : (idx == 1) ? cb : cr; in getLockedImageInfo()
345 rStride = buffer->stride * 2; in getLockedImageInfo()
351 pData = buffer->data; in getLockedImageInfo()
352 dataSize = buffer->stride * buffer->height; in getLockedImageInfo()
354 rStride = buffer->stride; in getLockedImageInfo()
361 pData = buffer->data; in getLockedImageInfo()
362 dataSize = buffer->stride * buffer->height * bytesPerPixel; in getLockedImageInfo()
364 rStride = buffer->stride * 2; in getLockedImageInfo()
371 LOG_ALWAYS_FATAL_IF(buffer->height != buffer->width, in getLockedImageInfo()
374 LOG_ALWAYS_FATAL_IF(buffer->height != 1, in getLockedImageInfo()
379 pData = buffer->data; in getLockedImageInfo()
380 dataSize = Image_getBlobSize(buffer, usingRGBAOverride); in getLockedImageInfo()
388 pData = buffer->data; in getLockedImageInfo()
389 dataSize = buffer->stride * buffer->height * bytesPerPixel; in getLockedImageInfo()
391 rStride = buffer->stride * 2; in getLockedImageInfo()
396 LOG_ALWAYS_FATAL_IF(buffer->height != 1, in getLockedImageInfo()
397 "RAW_PRIVATE should has height value one but got %d", buffer->height); in getLockedImageInfo()
398 pData = buffer->data; in getLockedImageInfo()
399 dataSize = buffer->width; in getLockedImageInfo()
406 LOG_ALWAYS_FATAL_IF(buffer->width % 4, in getLockedImageInfo()
407 "Width is not multiple of 4 %d", buffer->width); in getLockedImageInfo()
408 LOG_ALWAYS_FATAL_IF(buffer->height % 2, in getLockedImageInfo()
409 "Height is not even %d", buffer->height); in getLockedImageInfo()
410 LOG_ALWAYS_FATAL_IF(buffer->stride < (buffer->width * 10 / 8), in getLockedImageInfo()
412 buffer->stride, buffer->width * 10 / 8); in getLockedImageInfo()
413 pData = buffer->data; in getLockedImageInfo()
414 dataSize = buffer->stride * buffer->height; in getLockedImageInfo()
416 rStride = buffer->stride; in getLockedImageInfo()
421 LOG_ALWAYS_FATAL_IF(buffer->width % 4, in getLockedImageInfo()
422 "Width is not multiple of 4 %d", buffer->width); in getLockedImageInfo()
423 LOG_ALWAYS_FATAL_IF(buffer->height % 2, in getLockedImageInfo()
424 "Height is not even %d", buffer->height); in getLockedImageInfo()
425 LOG_ALWAYS_FATAL_IF(buffer->stride < (buffer->width * 12 / 8), in getLockedImageInfo()
427 buffer->stride, buffer->width * 12 / 8); in getLockedImageInfo()
428 pData = buffer->data; in getLockedImageInfo()
429 dataSize = buffer->stride * buffer->height; in getLockedImageInfo()
431 rStride = buffer->stride; in getLockedImageInfo()
438 pData = buffer->data; in getLockedImageInfo()
439 dataSize = buffer->stride * buffer->height * bytesPerPixel; in getLockedImageInfo()
441 rStride = buffer->stride * 4; in getLockedImageInfo()
447 pData = buffer->data; in getLockedImageInfo()
448 dataSize = buffer->stride * buffer->height * bytesPerPixel; in getLockedImageInfo()
450 rStride = buffer->stride * 2; in getLockedImageInfo()
456 pData = buffer->data; in getLockedImageInfo()
457 dataSize = buffer->stride * buffer->height * bytesPerPixel; in getLockedImageInfo()
459 rStride = buffer->stride * 3; in getLockedImageInfo()
475 sp<GraphicBuffer> buffer, void *pData, int format, LockedImage *outputImage) { in extractP010Gralloc4PlaneLayout() argument
481 status_t res = mapper.getPlaneLayouts(buffer->handle, &planeLayouts); in extractP010Gralloc4PlaneLayout()
534 outputImage->width = buffer->getWidth(); in extractP010Gralloc4PlaneLayout()
535 outputImage->height = buffer->getHeight(); in extractP010Gralloc4PlaneLayout()
547 status_t lockImageFromBuffer(sp<GraphicBuffer> buffer, uint32_t inUsage, in lockImageFromBuffer() argument
551 if (buffer == nullptr || outputImage == nullptr) { in lockImageFromBuffer()
555 if (isFormatOpaque(buffer->getPixelFormat())) { in lockImageFromBuffer()
563 int format = buffer->getPixelFormat(); in lockImageFromBuffer()
567 res = buffer->lockAsyncYCbCr(inUsage, rect, &ycbcr, fenceFd); in lockImageFromBuffer()
579 res = buffer->lockAsync(inUsage, rect, &pData, fenceFd); in lockImageFromBuffer()
585 && OK == extractP010Gralloc4PlaneLayout(buffer, pData, format, outputImage)) { in lockImageFromBuffer()
592 outputImage->width = buffer->getWidth(); in lockImageFromBuffer()
593 outputImage->height = buffer->getHeight(); in lockImageFromBuffer()
597 (ycbcr.y != NULL) ? static_cast<uint32_t>(ycbcr.ystride) : buffer->getStride(); in lockImageFromBuffer()
634 int getBufferWidth(BufferItem* buffer) { in getBufferWidth() argument
635 if (buffer == NULL) return -1; in getBufferWidth()
637 if (!buffer->mCrop.isEmpty()) { in getBufferWidth()
638 return buffer->mCrop.getWidth(); in getBufferWidth()
641 ALOGV("%s: buffer->mGraphicBuffer: %p", __FUNCTION__, buffer->mGraphicBuffer.get()); in getBufferWidth()
642 return buffer->mGraphicBuffer->getWidth(); in getBufferWidth()
645 int getBufferHeight(BufferItem* buffer) { in getBufferHeight() argument
646 if (buffer == NULL) return -1; in getBufferHeight()
648 if (!buffer->mCrop.isEmpty()) { in getBufferHeight()
649 return buffer->mCrop.getHeight(); in getBufferHeight()
652 ALOGV("%s: buffer->mGraphicBuffer: %p", __FUNCTION__, buffer->mGraphicBuffer.get()); in getBufferHeight()
653 return buffer->mGraphicBuffer->getHeight(); in getBufferHeight()