return ret;
}
+gboolean
+gst_va_decoder_get_config (GstVaDecoder * self, VAProfile * profile,
+ guint * rt_format, gint * width, gint * height)
+{
+ g_return_val_if_fail (GST_IS_VA_DECODER (self), FALSE);
+
+ if (!gst_va_decoder_is_open (self))
+ return FALSE;
+
+ GST_OBJECT_LOCK (self);
+ if (profile)
+ *profile = self->profile;
+ if (rt_format)
+ *rt_format = self->rt_format;
+ if (width)
+ *width = self->coded_width;
+ if (height)
+ *height = self->coded_height;
+ GST_OBJECT_UNLOCK (self);
+
+ return TRUE;
+}
+
static gboolean
_destroy_buffers (GstVaDecodePicture * pic)
{
dup->gstbuffer = gst_buffer_ref (pic->gstbuffer);
return dup;
}
-
-gboolean
-gst_va_decoder_get_config (GstVaDecoder * decoder, VAProfile * profile,
- guint * rt_format, gint * width, gint * height)
-{
- g_return_val_if_fail (decoder, FALSE);
-
- if (!gst_va_decoder_is_open (decoder))
- return FALSE;
-
- if (profile)
- *profile = decoder->profile;
- if (rt_format)
- *rt_format = decoder->rt_format;
- if (width)
- *width = decoder->coded_width;
- if (height)
- *height = decoder->coded_height;
-
- return TRUE;
-}
guint new_rtformat,
gint new_width,
gint new_height);
+gboolean gst_va_decoder_get_config (GstVaDecoder * decoder,
+ VAProfile * profile,
+ guint * rt_format,
+ gint * width,
+ gint * height);
GstVaDecodePicture * gst_va_decode_picture_new (GstVaDecoder * self,
GstBuffer * buffer);
void gst_va_decode_picture_free (GstVaDecodePicture * pic);
GstVaDecodePicture * gst_va_decode_picture_dup (GstVaDecodePicture * pic);
-gboolean gst_va_decoder_get_config (GstVaDecoder * decoder,
- VAProfile * profile,
- guint * rt_format,
- gint * width,
- gint * height);
-
G_END_DECLS