static CogFrame * cog_virt_frame_extract_alpha (CogFrame * frame) { CogFrame *virt_frame; /* FIXME check that frame is a real AYUV frame */ virt_frame = cog_frame_new_virtual (NULL, COG_FRAME_FORMAT_U8_444, frame->width, frame->height); virt_frame->virt_frame1 = frame; virt_frame->render_line = extract_alpha; return virt_frame; }
static CogFrame * cog_virt_frame_new_color_transform (CogFrame * frame) { CogFrame *virt_frame; g_return_val_if_fail (frame->format == COG_FRAME_FORMAT_U8_444, NULL); virt_frame = cog_frame_new_virtual (NULL, COG_FRAME_FORMAT_U8_444, frame->width, frame->height); virt_frame->virt_frame1 = frame; virt_frame->render_line = color_transform; virt_frame->virt_priv2 = get_color_transform_table (); return virt_frame; }