Lines Matching refs:pic
145 WebPPicture* const pic, in ReadWebP() argument
153 if (data == NULL || data_size == 0 || pic == NULL) return 0; in ReadWebP()
169 pic->width = bitstream->width; in ReadWebP()
170 pic->height = bitstream->height; in ReadWebP()
171 if (pic->use_argb) { in ReadWebP()
175 pic->colorspace = has_alpha ? WEBP_YUV420A : WEBP_YUV420; in ReadWebP()
183 ok = WebPPictureAlloc(pic); in ReadWebP()
188 if (pic->use_argb) { in ReadWebP()
194 output_buffer->u.RGBA.rgba = (uint8_t*)pic->argb; in ReadWebP()
195 output_buffer->u.RGBA.stride = pic->argb_stride * sizeof(uint32_t); in ReadWebP()
196 output_buffer->u.RGBA.size = output_buffer->u.RGBA.stride * pic->height; in ReadWebP()
199 output_buffer->u.YUVA.y = pic->y; in ReadWebP()
200 output_buffer->u.YUVA.u = pic->u; in ReadWebP()
201 output_buffer->u.YUVA.v = pic->v; in ReadWebP()
202 output_buffer->u.YUVA.a = has_alpha ? pic->a : NULL; in ReadWebP()
203 output_buffer->u.YUVA.y_stride = pic->y_stride; in ReadWebP()
204 output_buffer->u.YUVA.u_stride = pic->uv_stride; in ReadWebP()
205 output_buffer->u.YUVA.v_stride = pic->uv_stride; in ReadWebP()
206 output_buffer->u.YUVA.a_stride = has_alpha ? pic->a_stride : 0; in ReadWebP()
207 output_buffer->u.YUVA.y_size = pic->height * pic->y_stride; in ReadWebP()
208 output_buffer->u.YUVA.u_size = (pic->height + 1) / 2 * pic->uv_stride; in ReadWebP()
209 output_buffer->u.YUVA.v_size = (pic->height + 1) / 2 * pic->uv_stride; in ReadWebP()
210 output_buffer->u.YUVA.a_size = pic->height * pic->a_stride; in ReadWebP()
216 if (ok && !keep_alpha && pic->use_argb) { in ReadWebP()
219 uint32_t* argb = pic->argb; in ReadWebP()
220 for (y = 0; y < pic->height; ++y) { in ReadWebP()
221 for (x = 0; x < pic->width; ++x) argb[x] |= 0xff000000u; in ReadWebP()
222 argb += pic->argb_stride; in ReadWebP()
240 if (!ok) WebPPictureFree(pic); in ReadWebP()