diff options
author | He Junyan <junyan.he@intel.com> | 2020-08-27 21:39:35 +0800 |
---|---|---|
committer | He Junyan <junyan.he@intel.com> | 2020-12-14 18:43:52 +0800 |
commit | 46c1f3875a6e998b3d85ab4f938fd846e616252a (patch) | |
tree | abb72e3dbed015d98983a4a084bf0903b6b71453 /gst-libs/gst/vaapi/gstvaapicodec_objects.c | |
parent | a16849b4ed03557b2f03cc1458cd297ef6aeda71 (diff) | |
download | gstreamer-vaapi-46c1f3875a6e998b3d85ab4f938fd846e616252a.tar.gz |
libs: codecobject: Add number of elements when create codec object.
One slice data may need several slice parameter buffers at one time.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/merge_requests/191>
Diffstat (limited to 'gst-libs/gst/vaapi/gstvaapicodec_objects.c')
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapicodec_objects.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapicodec_objects.c b/gst-libs/gst/vaapi/gstvaapicodec_objects.c index e66d2fe7..1bdd93b2 100644 --- a/gst-libs/gst/vaapi/gstvaapicodec_objects.c +++ b/gst-libs/gst/vaapi/gstvaapicodec_objects.c @@ -68,9 +68,10 @@ gst_vaapi_codec_object_create (GstVaapiCodecObject * object, } GstVaapiCodecObject * -gst_vaapi_codec_object_new (const GstVaapiCodecObjectClass * object_class, - GstVaapiCodecBase * codec, gconstpointer param, guint param_size, - gconstpointer data, guint data_size, guint flags) +gst_vaapi_codec_object_new_with_param_num (const GstVaapiCodecObjectClass * + object_class, GstVaapiCodecBase * codec, gconstpointer param, + guint param_size, guint param_num, gconstpointer data, + guint data_size, guint flags) { GstVaapiCodecObject *obj; GstVaapiCodecObjectConstructorArgs args; @@ -85,6 +86,7 @@ gst_vaapi_codec_object_new (const GstVaapiCodecObjectClass * object_class, args.param = param; args.param_size = param_size; + args.param_num = param_num; args.data = data; args.data_size = data_size; args.flags = flags; @@ -96,6 +98,15 @@ gst_vaapi_codec_object_new (const GstVaapiCodecObjectClass * object_class, return NULL; } +GstVaapiCodecObject * +gst_vaapi_codec_object_new (const GstVaapiCodecObjectClass * object_class, + GstVaapiCodecBase * codec, gconstpointer param, guint param_size, + gconstpointer data, guint data_size, guint flags) +{ + return gst_vaapi_codec_object_new_with_param_num (object_class, codec, param, + param_size, 1, data, data_size, flags); +} + #define GET_DECODER(obj) GST_VAAPI_DECODER_CAST((obj)->parent_instance.codec) #define GET_VA_DISPLAY(obj) GET_DECODER(obj)->va_display #define GET_VA_CONTEXT(obj) GET_DECODER(obj)->va_context |