Remove undefined reference 18/102218/3 accepted/tizen/3.0/common/20161207.194456 accepted/tizen/3.0/ivi/20161207.011907 accepted/tizen/3.0/mobile/20161207.011459 accepted/tizen/3.0/tv/20161207.011700 accepted/tizen/3.0/wearable/20161207.011800 submit/tizen_3.0/20161206.052949
authorSejun Park <sejun79.park@samsung.com>
Mon, 5 Dec 2016 07:53:21 +0000 (16:53 +0900)
committerSejun Park <sejun79.park@samsung.com>
Tue, 6 Dec 2016 04:51:52 +0000 (13:51 +0900)
Change-Id: Ieae7fb9cf67af32979263663a53821ebc294d56e

omx/gstomx.c
omx/gstomxvideoenc.c

index b2081df..f3d1046 100755 (executable)
@@ -1822,6 +1822,7 @@ gst_omx_port_tbm_allocate_enc_buffers (GstOMXPort * port, tbm_bufmgr bufMgr, int
 
       handle_bo = tbm_bo_get_handle(mm_vbuffer[i]->handle.bo[0], TBM_DEVICE_CPU);
       mm_vbuffer[i]->data[0] = handle_bo.ptr;
+      mm_vbuffer[i]->handle.paddr[0] = handle_bo.ptr;  /* TODO will be removed */
       mm_vbuffer[i]->type = MM_VIDEO_BUFFER_TYPE_TBM_BO;
       mm_vbuffer[i]->size[0] = port->port_def.nBufferSize;
       mm_vbuffer[i]->handle_num = 1;
index dadcdb9..b369492 100755 (executable)
@@ -1369,7 +1369,7 @@ gst_omx_video_enc_fill_buffer (GstOMXVideoEnc * self, GstBuffer * inbuf,
     GST_ERROR_OBJECT (self, "Width or height do not match");
     goto done;
   }
-
+#if 0
   /* Same strides and everything */
   if (gst_buffer_get_size (inbuf) ==
       outbuf->omx_buf->nAllocLen - outbuf->omx_buf->nOffset) {
@@ -1381,7 +1381,7 @@ gst_omx_video_enc_fill_buffer (GstOMXVideoEnc * self, GstBuffer * inbuf,
     ret = TRUE;
     goto done;
   }
-
+#endif
   /* Different strides */
 
   switch (info->finfo->format) {
@@ -1509,50 +1509,59 @@ gst_omx_video_enc_fill_buffer (GstOMXVideoEnc * self, GstBuffer * inbuf,
     }
     case GST_VIDEO_FORMAT_ST12:
     case GST_VIDEO_FORMAT_SN12:{
-        GstMemory* ext_memory = gst_buffer_peek_memory(inbuf, 1);
-        GstMapInfo ext_info =  GST_MAP_INFO_INIT;
-        MMVideoBuffer *mm_vbuffer = NULL;
-
-        if (!ext_memory) {
-          GST_WARNING_OBJECT (self, "null MMVideoBuffer pointer  in hw color format. skip this.");
-          goto done;
-        }
+      GstMemory* ext_memory = gst_buffer_peek_memory(inbuf, 1);
+      GstMapInfo ext_info =  GST_MAP_INFO_INIT;
+      MMVideoBuffer *mm_vbuffer = NULL;
+      tbm_bo_handle handle_bo;
+
+      if (!ext_memory) {
+        GST_WARNING_OBJECT (self, "null MMVideoBuffer pointer  in hw color format. skip this.");
+        goto done;
+      }
 
-        gst_memory_map(ext_memory, &ext_info, GST_MAP_READ);
-        mm_vbuffer = (MMVideoBuffer*)ext_info.data;
-        gst_memory_unmap(ext_memory, &ext_info);
+      gst_memory_map(ext_memory, &ext_info, GST_MAP_READ);
+      mm_vbuffer = (MMVideoBuffer*)ext_info.data;
+      gst_memory_unmap(ext_memory, &ext_info);
 
-        if (mm_vbuffer != NULL && mm_vbuffer->type == MM_VIDEO_BUFFER_TYPE_TBM_BO) {
+      if (mm_vbuffer != NULL && mm_vbuffer->type == MM_VIDEO_BUFFER_TYPE_TBM_BO) {
 
-          if (mm_vbuffer->handle.dmabuf_fd[0] == 0)
-            mm_vbuffer->handle.dmabuf_fd[0] = gst_omx_tbm_get_bo_fd(mm_vbuffer->handle.bo[0]);
+        if (mm_vbuffer->handle.dmabuf_fd[0] == 0) {
+          handle_bo = tbm_bo_get_handle(mm_vbuffer->handle.bo[0], TBM_DEVICE_MM);
+          mm_vbuffer->handle.dmabuf_fd[0] = handle_bo.u32;
+        }
 
-          if (mm_vbuffer->handle.dmabuf_fd[1] == 0)
-            mm_vbuffer->handle.dmabuf_fd[1] = gst_omx_tbm_get_bo_fd(mm_vbuffer->handle.bo[1]);
+        if (mm_vbuffer->handle.dmabuf_fd[1] == 0) {
+          handle_bo = tbm_bo_get_handle(mm_vbuffer->handle.bo[1], TBM_DEVICE_MM);
+          mm_vbuffer->handle.dmabuf_fd[1] = handle_bo.u32;
+        }
 
-          if (mm_vbuffer->data[0] == NULL)
-              mm_vbuffer->data[0] = gst_omx_tbm_get_bo_ptr(mm_vbuffer->handle.bo[0]);
+        if (mm_vbuffer->data[0] == NULL) {
+          handle_bo = tbm_bo_get_handle(mm_vbuffer->handle.bo[0], TBM_DEVICE_CPU);
+          mm_vbuffer->data[0] = handle_bo.ptr;
+        }
 
-          if (mm_vbuffer->data[1] == NULL)
-              mm_vbuffer->data[1] = gst_omx_tbm_get_bo_ptr(mm_vbuffer->handle.bo[1]);
+        if (mm_vbuffer->data[1] == NULL){
+          handle_bo = tbm_bo_get_handle(mm_vbuffer->handle.bo[1], TBM_DEVICE_CPU);
+          mm_vbuffer->data[1] = handle_bo.ptr;
+        }
 
-          GST_LOG_OBJECT (self, "enc. fd[0]:%d  fd[1]:%d  a[0]:%p, a[1]:%p, w[0]:%d  h[0]:%d   %d, %d, buf_share_method:%d",
-              mm_vbuffer->handle.dmabuf_fd[0], mm_vbuffer->handle.dmabuf_fd[1], mm_vbuffer->data[0], mm_vbuffer->data[1],
-              mm_vbuffer->width[0], mm_vbuffer->height[0], mm_vbuffer->width[1], mm_vbuffer->height[1], mm_vbuffer->type);
-        } else {
+        GST_LOG_OBJECT (self, "enc. fd[0]:%d  fd[1]:%d  a[0]:%p, a[1]:%p, w[0]:%d  h[0]:%d   %d, %d, buf_share_method:%d",
+            mm_vbuffer->handle.dmabuf_fd[0], mm_vbuffer->handle.dmabuf_fd[1], mm_vbuffer->data[0], mm_vbuffer->data[1],
+            mm_vbuffer->width[0], mm_vbuffer->height[0], mm_vbuffer->width[1], mm_vbuffer->height[1], mm_vbuffer->type);
+      } else {
           GST_WARNING_OBJECT (self, "enc input buf has wrong buf_share_method[%d]", mm_vbuffer->type);
-        }
+      }
 
-        outbuf->omx_buf->nAllocLen = sizeof(MMVideoBuffer);
-        outbuf->omx_buf->nFilledLen = sizeof(MMVideoBuffer);
-        memcpy (outbuf->omx_buf->pBuffer, mm_vbuffer, sizeof(MMVideoBuffer));
+      outbuf->omx_buf->nAllocLen = sizeof(MMVideoBuffer);
+      outbuf->omx_buf->nFilledLen = sizeof(MMVideoBuffer);
+      memcpy (outbuf->omx_buf->pBuffer, mm_vbuffer, sizeof(MMVideoBuffer));
 
 #ifdef CODEC_ENC_INPUT_DUMP
-        gst_omx_video_enc_input_dump(mm_vbuffer);
+      gst_omx_video_enc_input_dump(mm_vbuffer);
 #endif
 
-        ret = TRUE;
-        break;
+      ret = TRUE;
+      break;
     }
     default:
       GST_ERROR_OBJECT (self, "Unsupported format");