Set video meta map/unmap function for tizen memory 91/302291/1 accepted/tizen/7.0/unified/20231208.173550
authorJeongmo Yang <jm80.yang@samsung.com>
Tue, 5 Dec 2023 06:17:25 +0000 (15:17 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Tue, 5 Dec 2023 06:17:25 +0000 (15:17 +0900)
[Version] 0.6.35
[Issue Type] Update

Change-Id: I6845e8b8d2d6dd26441daf1b5129a71d95f5513c
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
packaging/capi-media-codec.spec
src/media_codec_port_gst.c

index ea359b441efe796c87a7df0ab78f4f3ac75a5c79..057f8b300b1ef17feab1be8ecd7e85119e69c9f3 100644 (file)
@@ -4,7 +4,7 @@
 
 Name:       capi-media-codec
 Summary:    A Media Codec library in Tizen Native API
-Version:    0.6.34
+Version:    0.6.35
 Release:    0
 Group:      Multimedia/API
 License:    Apache-2.0
index c05b0843c793607a49c8de7ab23ba8a63912ad07..23a394eb43522d7c85dce3b6cf7a48a08e3596e2 100644 (file)
@@ -1216,16 +1216,28 @@ static void _mc_gst_video_info_free(mc_gst_core_t *core)
 
 static void _mc_gst_video_meta_add(mc_gst_core_t *core, GstBuffer *buffer)
 {
+       GstVideoMeta *vmeta = NULL;
+
        if (!core || !core->video_info || !buffer)
                return;
 
-       gst_buffer_add_video_meta_full(buffer, GST_VIDEO_FRAME_FLAG_NONE,
+       vmeta = gst_buffer_add_video_meta_full(buffer, GST_VIDEO_FRAME_FLAG_NONE,
                GST_VIDEO_INFO_FORMAT(core->video_info),
                GST_VIDEO_INFO_WIDTH(core->video_info),
                GST_VIDEO_INFO_HEIGHT(core->video_info),
                GST_VIDEO_INFO_N_PLANES(core->video_info),
                core->video_info->offset,
                core->video_info->stride);
+
+       if (!vmeta) {
+               LOGE("No video meta");
+               return;
+       }
+
+       if (core->is_hw) {
+               vmeta->map = gst_tizen_video_meta_map;
+               vmeta->unmap = gst_tizen_video_meta_unmap;
+       }
 }
 
 static int _mc_set_codec_data(mc_gst_core_t *core, GstMCBuffer *mcbuffer, bool codec_config)