mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-24 08:08:22 +00:00
vkencoder: init debug category earlier
The encoder has not been created if the codec is not supported by the hardware, so the GST_WARNING_OBJECT will fail to find a suitable category. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8138>
This commit is contained in:
parent
f618270c59
commit
97d62d2291
1 changed files with 8 additions and 3 deletions
|
@ -77,9 +77,7 @@ GST_DEBUG_CATEGORY (GST_CAT_DEFAULT);
|
||||||
|
|
||||||
#define gst_vulkan_encoder_parent_class parent_class
|
#define gst_vulkan_encoder_parent_class parent_class
|
||||||
G_DEFINE_TYPE_WITH_CODE (GstVulkanEncoder, gst_vulkan_encoder,
|
G_DEFINE_TYPE_WITH_CODE (GstVulkanEncoder, gst_vulkan_encoder,
|
||||||
GST_TYPE_OBJECT, G_ADD_PRIVATE (GstVulkanEncoder)
|
GST_TYPE_OBJECT, G_ADD_PRIVATE (GstVulkanEncoder));
|
||||||
GST_DEBUG_CATEGORY_INIT (gst_vulkan_encoder_debug,
|
|
||||||
"vulkanencoder", 0, "Vulkan device encoder"));
|
|
||||||
|
|
||||||
const uint32_t _vk_codec_supported_extensions[] = {
|
const uint32_t _vk_codec_supported_extensions[] = {
|
||||||
[GST_VK_VIDEO_EXTENSION_ENCODE_H264] = VK_MAKE_VIDEO_STD_VERSION (0, 9, 11),
|
[GST_VK_VIDEO_EXTENSION_ENCODE_H264] = VK_MAKE_VIDEO_STD_VERSION (0, 9, 11),
|
||||||
|
@ -1353,6 +1351,7 @@ gst_vulkan_encoder_create_from_queue (GstVulkanQueue * queue, guint codec)
|
||||||
GstVulkanEncoder *encoder;
|
GstVulkanEncoder *encoder;
|
||||||
guint flags, expected_flag, supported_video_ops;
|
guint flags, expected_flag, supported_video_ops;
|
||||||
const char *extension;
|
const char *extension;
|
||||||
|
static gsize cat_gonce = 0;
|
||||||
|
|
||||||
g_return_val_if_fail (GST_IS_VULKAN_QUEUE (queue), NULL);
|
g_return_val_if_fail (GST_IS_VULKAN_QUEUE (queue), NULL);
|
||||||
|
|
||||||
|
@ -1361,6 +1360,12 @@ gst_vulkan_encoder_create_from_queue (GstVulkanQueue * queue, guint codec)
|
||||||
flags = device->queue_family_props[queue->family].queueFlags;
|
flags = device->queue_family_props[queue->family].queueFlags;
|
||||||
supported_video_ops = device->queue_family_ops[queue->family].video;
|
supported_video_ops = device->queue_family_ops[queue->family].video;
|
||||||
|
|
||||||
|
if (g_once_init_enter (&cat_gonce)) {
|
||||||
|
GST_DEBUG_CATEGORY_INIT (gst_vulkan_encoder_debug,
|
||||||
|
"vulkanencoder", 0, "Vulkan device encoder");
|
||||||
|
g_once_init_leave (&cat_gonce, TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
if (device->properties.apiVersion < VK_MAKE_VERSION (1, 3, 275)) {
|
if (device->properties.apiVersion < VK_MAKE_VERSION (1, 3, 275)) {
|
||||||
GST_WARNING_OBJECT (queue,
|
GST_WARNING_OBJECT (queue,
|
||||||
"API version %d.%d.%d doesn't support video encode extensions",
|
"API version %d.%d.%d doesn't support video encode extensions",
|
||||||
|
|
Loading…
Reference in a new issue