constexpr const size_t kMetaBufferSize = 4096;
-#if TIZEN_VERSION_AT_LEAST(8, 0, 0)
+#if TIZEN_VERSION_AT_LEAST(9, 0, 0)
+using FrameInfo = VideoSink_RenderInfo;
+#elif TIZEN_VERSION_AT_LEAST(8, 0, 0)
using FrameInfo = VideoSink_SetPlaneInfo;
#else
using FrameInfo = IVideoRenderer::SetPlaneInfo;
-#endif // TIZEN_VERSION_AT_LEAST(8, 0, 0)
+#endif // TIZEN_VERSION_AT_LEAST(9, 0, 0)
class VideoRendering {
public:
auto* video_metadata = reinterpret_cast<VideoBufMetadata*>(v4l2_info_.data());
video_metadata->plane = render_data.plane_id;
-#if TIZEN_VERSION_AT_LEAST(8, 0, 0)
+#if TIZEN_VERSION_AT_LEAST(9, 0, 0)
+ frame_info->dmabuf_fd = render_data.plane_id;
+#elif TIZEN_VERSION_AT_LEAST(8, 0, 0)
frame_info->v4l2_ptr = v4l2_info_.data();
#else
frame_info->metadata = video_metadata;
render_data.picture_size.height() / 2,
render_data.nv12_data->uv_phys_offset);
+#if TIZEN_VERSION_AT_LEAST(9, 0, 0)
+ frame_info->display_index = current_index_;
+ frame_info->width = render_data.picture_size.width();
+ frame_info->height = render_data.picture_size.height();
+ frame_info->framerate = kDefaultFramerate;
+ frame_info->scan_type = kProgressiveScanType;
+ frame_info->color_format = VIDEOSINK_DRM_COLORFORMAT_YUV420;
+#elif TIZEN_VERSION_AT_LEAST(8, 0, 0)
dec_info_.width = render_data.picture_size.width();
dec_info_.height = render_data.picture_size.height();
dec_info_.framerate = kDefaultFramerate;
dec_info_.scantype = kProgressiveScanType;
dec_info_.display_index = current_index_;
-
-#if TIZEN_VERSION_AT_LEAST(8, 0, 0)
dec_info_.colorformat = VIDEORCTRL_COLORFORMAT_YUV420;
dec_info_.stereoscopic_info = VIDEOCTRL_STEREOSCOPIC_2D;
frame_info->v4l2_ptr = &dec_info_;
+ frame_info->sw_hres = render_data.picture_size.width();
+ frame_info->sw_vres = render_data.picture_size.height();
#else
+ dec_info_.width = render_data.picture_size.width();
+ dec_info_.height = render_data.picture_size.height();
+ dec_info_.framerate = kDefaultFramerate;
+ dec_info_.scantype = kProgressiveScanType;
+ dec_info_.display_index = current_index_;
dec_info_.colorformat = IVideoSWDec::COLORFORMAT_YUV420;
dec_info_.stereoscopic_info = IVideoSWDec::STEREOSCOPIC_2D;
// See above why it's needed. |VideoBufMetaData| does not match |v4l2_drm|.
frame_info->metadata =
reinterpret_cast<IVideoRenderer::VideoBufMetaData*>(&dec_info_);
-#endif
-
frame_info->sw_hres = render_data.picture_size.width();
frame_info->sw_vres = render_data.picture_size.height();
+#endif
}
} // namespace ui
FrameInfo frame_info{};
renderer->PrepareForRenderingFrame(&frame_info, render_data);
+
+#if TIZEN_VERSION_AT_LEAST(9, 0, 0)
+ return videoRenderCtrl_frameRender(video_sink_.get(), &frame_info) == 0;
+#else
return videoRenderCtrl_renderFrame(video_sink_.get(), &frame_info) == 0;
+#endif // TIZEN_VERSION_AT_LEAST(9, 0, 0)
}
bool VideoSurface::SetPreResolution(const avoc_tpt_resolution_s& data) {