[TTVD] Remove kernel header usage from media 90/315190/2
authorJakub Gajownik <j.gajownik2@samsung.com>
Tue, 23 Jul 2024 18:15:34 +0000 (20:15 +0200)
committerBot Blink <blinkbot@samsung.com>
Fri, 26 Jul 2024 09:01:55 +0000 (09:01 +0000)
This commit changes, so V4L2 is no longer used from
//media/filters/tizen directory, this is not part of
start "public" API.

Bug: https://jira-eu.sec.samsung.net/browse/VDGAME-540
Change-Id: I4fb21d9b0db7893faa6f93389041a051ee2339b4
Signed-off-by: Jakub Gajownik <j.gajownik2@samsung.com>
media/filters/BUILD.gn
media/filters/tizen/omx/omx_facade_video.cc
media/filters/tizen/omx/omx_facade_video_test.cc

index 64759f602c1b4fbdcc2e31cf741e707cbcda42fb..8a74138268bc3367b4767dff27115415ebe19a0d 100644 (file)
@@ -286,7 +286,6 @@ source_set("filters") {
 
       "//tizen_src/build:graphics-control",
       "//tizen_src/build:omxil-e4x12-v4l2",
-      "//tizen_src/build:vd_kernel-interfaces",
     ]
     sources += [
       "tizen/cdm_utils.cc",
index e2ac243cb6526ef03cf3916762941049640de32f..410abeea4862d06439c109994a70df185e4a7e9d 100644 (file)
@@ -6,7 +6,7 @@
 
 #include <OMX_Component.h>
 #include <OMX_Core.h>
-#include <linux/videodev2_tztv.h>
+#include <ivideo-renderer.hpp>
 
 #include "build/tizen_version.h"
 #include "media/base/tizen/logger/media_logger.h"
@@ -302,32 +302,34 @@ void OmxFacadeVideo::HandleOutputData() {
     return;
   }
 
-  struct v4l2_drm* drm =
-      static_cast<struct v4l2_drm*>(output_buf_hdr_->pPlatformPrivate);
-  if (!drm) {
+  const auto* video_info = static_cast<IVideoRenderer::VideoBufMetaData*>(
+      output_buf_hdr_->pPlatformPrivate);
+  if (!video_info) {
     TIZEN_MEDIA_LOG(VERBOSE)
         << "Buffer filled event without the actual decoded frame";
     return;
   }
 
   TIZEN_MEDIA_LOG(VERBOSE) << "Frame color format: "
-                           << drm->u.dec_info.pFrame[0].colorformat;
+                           << video_info->u.dec_info.pFrame[0].colorformat;
 
   {
     const uint32_t yb =
-        static_cast<uint32_t>(drm->u.dec_info.pFrame[0].y_viraddr);
-    const uint32_t ye = yb + drm->u.dec_info.pFrame[0].y_linesize *
-                                 drm->u.dec_info.pFrame[0].height;
+        static_cast<uint32_t>(video_info->u.dec_info.pFrame[0].y_viraddr);
+    const uint32_t ye = yb + video_info->u.dec_info.pFrame[0].y_linesize *
+                                 video_info->u.dec_info.pFrame[0].height;
 
     const uint32_t ub =
-        static_cast<uint32_t>(drm->u.dec_info.pFrame[0].u_viraddr);
-    const uint32_t ue = ub + drm->u.dec_info.pFrame[0].u_linesize *
-                                 ((drm->u.dec_info.pFrame[0].height + 1) / 2);
+        static_cast<uint32_t>(video_info->u.dec_info.pFrame[0].u_viraddr);
+    const uint32_t ue =
+        ub + video_info->u.dec_info.pFrame[0].u_linesize *
+                 ((video_info->u.dec_info.pFrame[0].height + 1) / 2);
 
     const uint32_t vb =
-        static_cast<uint32_t>(drm->u.dec_info.pFrame[0].v_viraddr);
-    const uint32_t ve = vb + drm->u.dec_info.pFrame[0].v_linesize *
-                                 ((drm->u.dec_info.pFrame[0].height + 1) / 2);
+        static_cast<uint32_t>(video_info->u.dec_info.pFrame[0].v_viraddr);
+    const uint32_t ve =
+        vb + video_info->u.dec_info.pFrame[0].v_linesize *
+                 ((video_info->u.dec_info.pFrame[0].height + 1) / 2);
     TIZEN_MEDIA_LOG(VERBOSE) << "Y: " << yb << " - " << ye << ", U: " << ub
                              << " - " << ue << ", V: " << vb << " - " << ve;
 
@@ -339,21 +341,24 @@ void OmxFacadeVideo::HandleOutputData() {
   OutputData output_data;
   output_data.timestamp = *maybe_timestamp;
   output_data.nv12_data.y_data =
-      reinterpret_cast<uint8_t*>(drm->u.dec_info.pFrame[0].y_viraddr);
-  output_data.nv12_data.y_phys_data = drm->u.dec_info.pFrame[0].y_phyaddr;
-  output_data.nv12_data.y_stride = drm->u.dec_info.pFrame[0].y_linesize;
+      reinterpret_cast<uint8_t*>(video_info->u.dec_info.pFrame[0].y_viraddr);
+  output_data.nv12_data.y_phys_data =
+      video_info->u.dec_info.pFrame[0].y_phyaddr;
+  output_data.nv12_data.y_stride = video_info->u.dec_info.pFrame[0].y_linesize;
   output_data.nv12_data.uv_data =
-      reinterpret_cast<uint8_t*>(drm->u.dec_info.pFrame[0].u_viraddr);
-  output_data.nv12_data.uv_phys_data = drm->u.dec_info.pFrame[0].u_phyaddr;
-  output_data.nv12_data.uv_stride = drm->u.dec_info.pFrame[0].u_linesize;
-  output_data.image_size.set_width(drm->u.dec_info.pFrame[0].width);
-  output_data.image_size.set_height(drm->u.dec_info.pFrame[0].height);
-  output_data.plane_id = drm->plane;
+      reinterpret_cast<uint8_t*>(video_info->u.dec_info.pFrame[0].u_viraddr);
+  output_data.nv12_data.uv_phys_data =
+      video_info->u.dec_info.pFrame[0].u_phyaddr;
+  output_data.nv12_data.uv_stride = video_info->u.dec_info.pFrame[0].u_linesize;
+  output_data.image_size.set_width(video_info->u.dec_info.pFrame[0].width);
+  output_data.image_size.set_height(video_info->u.dec_info.pFrame[0].height);
+  output_data.plane_id = video_info->plane;
   output_data.eos = (output_buf_hdr_->nFlags & OMX_BUFFERFLAG_EOS);
 
   uint32_t num_planes = CountPlanes(output_data);
   output_data.pixel_format = ConvertPlatformToMediaPixelFormat(
-      num_planes, static_cast<uint32_t>(drm->u.dec_info.pFrame[0].colorformat));
+      num_planes,
+      static_cast<uint32_t>(video_info->u.dec_info.pFrame[0].colorformat));
 
   TIZEN_MEDIA_LOG(VERBOSE) << "Output cb: " << output_data.timestamp;
   output_cb_.Run(output_data);
index b455d94d4be231efb859c6b9676ec967ca9c77ca..d7092b3a2a4c734aa41a195d4fa3b787ba7f9fc4 100644 (file)
@@ -4,8 +4,8 @@
 
 #include "media/filters/tizen/omx/omx_facade_video.h"
 
-#include <linux/videodev2_tztv.h>
 #include <OMX_Component.h>
+#include <ivideo-renderer.hpp>
 
 #include "base/task/thread_pool.h"
 #include "base/test/mock_callback.h"
@@ -133,7 +133,7 @@ class OmxFacadeVideoTest : public testing::Test {
       base::test::TaskEnvironment::MainThreadType::IO};
 
   OMX_BUFFERHEADERTYPE buffer_;
-  struct v4l2_drm decoded_spec_;
+  IVideoRenderer::VideoBufMetaData decoded_spec_;
 };
 
 TEST_F(OmxFacadeVideoTest, CreateAndInit) {