mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
vulkanh264dec: don't remove graphics queue if it's the same as decoder
Since graphics queue is used for the context transference. So lets' keep it with its own reference. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6089>
This commit is contained in:
parent
5d27f09740
commit
50791d66e1
1 changed files with 1 additions and 8 deletions
|
@ -111,7 +111,6 @@ _find_queues (GstVulkanDevice * device, GstVulkanQueue * queue, gpointer data)
|
||||||
device->physical_device->queue_family_props[queue->family].queueFlags;
|
device->physical_device->queue_family_props[queue->family].queueFlags;
|
||||||
guint32 codec =
|
guint32 codec =
|
||||||
device->physical_device->queue_family_ops[queue->family].video;
|
device->physical_device->queue_family_ops[queue->family].video;
|
||||||
gboolean ret;
|
|
||||||
|
|
||||||
if (!self->graphic_queue
|
if (!self->graphic_queue
|
||||||
&& ((flags & VK_QUEUE_GRAPHICS_BIT) == VK_QUEUE_GRAPHICS_BIT)) {
|
&& ((flags & VK_QUEUE_GRAPHICS_BIT) == VK_QUEUE_GRAPHICS_BIT)) {
|
||||||
|
@ -126,13 +125,7 @@ _find_queues (GstVulkanDevice * device, GstVulkanQueue * queue, gpointer data)
|
||||||
self->decode_queue = gst_object_ref (queue);
|
self->decode_queue = gst_object_ref (queue);
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = self->decode_queue && self->graphic_queue;
|
return !(self->decode_queue && self->graphic_queue);
|
||||||
|
|
||||||
/* if graphic and decoder queues are the same, just keep one */
|
|
||||||
if (ret && (self->decode_queue == self->graphic_queue))
|
|
||||||
gst_clear_object (&self->graphic_queue);
|
|
||||||
|
|
||||||
return !ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
|
Loading…
Reference in a new issue