本文整理汇总了C++中GstVdpDevice::vdp_video_surface_destroy方法的典型用法代码示例。如果您正苦于以下问题:C++ GstVdpDevice::vdp_video_surface_destroy方法的具体用法?C++ GstVdpDevice::vdp_video_surface_destroy怎么用?C++ GstVdpDevice::vdp_video_surface_destroy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GstVdpDevice
的用法示例。
在下文中一共展示了GstVdpDevice::vdp_video_surface_destroy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
static void
gst_vdp_video_buffer_finalize (GstVdpVideoBuffer * buffer)
{
GSList *iter;
GstVdpDevice *device;
VdpStatus status;
device = buffer->device;
status = device->vdp_video_surface_destroy (buffer->surface);
if (status != VDP_STATUS_OK)
GST_ERROR
("Couldn't destroy the buffers VdpVideoSurface, error returned was: %s",
device->vdp_get_error_string (status));
g_object_unref (buffer->device);
for (iter = buffer->refs; iter; iter = g_slist_next (iter)) {
GstBuffer *buf;
buf = (GstBuffer *) (iter->data);
gst_buffer_unref (buf);
}
g_slist_free (buffer->refs);
GST_MINI_OBJECT_CLASS (gst_vdp_video_buffer_parent_class)->finalize
(GST_MINI_OBJECT (buffer));
}
示例2:
static void
gst_vdp_video_buffer_finalize (GstVdpVideoBuffer * buffer)
{
GstVdpDevice *device;
VdpStatus status;
if (gst_vdp_buffer_revive (GST_VDP_BUFFER_CAST (buffer)))
return;
device = buffer->device;
status = device->vdp_video_surface_destroy (buffer->surface);
if (status != VDP_STATUS_OK)
GST_ERROR
("Couldn't destroy the buffers VdpVideoSurface, error returned was: %s",
device->vdp_get_error_string (status));
g_object_unref (buffer->device);
GST_MINI_OBJECT_CLASS (gst_vdp_video_buffer_parent_class)->finalize
(GST_MINI_OBJECT (buffer));
}