Lines Matching defs:drm_desc
3271 AVDRMFrameDescriptor drm_desc;
3277 AVDRMFrameDescriptor *drm_desc = hwmap->priv;
3279 for (int i = 0; i < drm_desc->nb_objects; i++)
3280 close(drm_desc->objects[i].fd);
3282 av_free(drm_desc);
3314 AVDRMFrameDescriptor *drm_desc = av_mallocz(sizeof(*drm_desc));
3315 if (!drm_desc)
3328 err = ff_hwframe_map_create(src->hw_frames_ctx, dst, src, &vulkan_unmap_to_drm, drm_desc);
3348 &drm_desc->objects[i].fd);
3355 drm_desc->nb_objects++;
3356 drm_desc->objects[i].size = f->size[i];
3357 drm_desc->objects[i].format_modifier = drm_mod.drmFormatModifier;
3360 drm_desc->nb_layers = planes;
3361 for (int i = 0; i < drm_desc->nb_layers; i++) {
3368 drm_desc->layers[i].format = vulkan_fmt_to_drm(plane_vkfmt);
3369 drm_desc->layers[i].nb_planes = 1;
3371 if (drm_desc->layers[i].format == DRM_FORMAT_INVALID) {
3377 drm_desc->layers[i].planes[0].object_index = FFMIN(i, drm_desc->nb_objects - 1);
3383 drm_desc->layers[i].planes[0].offset = layout.offset;
3384 drm_desc->layers[i].planes[0].pitch = layout.rowPitch;
3387 drm_desc->layers[i].planes[0].offset += f->offset[i];
3392 dst->data[0] = (uint8_t *)drm_desc;
3399 av_free(drm_desc);