HarmonyOS Xcomponent怎么渲染视频y,u,v分量的视频数据。怎么渲染摄像头传过来的y,u,v分量的视频demo有吗

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit

可以在OnSurfaceChanged生命周期方法中,重新获取一下xcomponent的大小,并更新nativewindow的大小,参考代码如下:

解决方案

double offsetX;
double offsetY;
// 获取XComponent持有的surface相对窗口左上角的偏移量
OH_NativeXComponent_GetXComponentOffset(component, window, &offsetX, &offsetY);
OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "OH_NativeXComponent_GetXComponentOffset",
  "offsetX = %{public}lf, offsetY = %{public}lf", offsetX, offsetY);
uint64_t width;
uint64_t height;
// 获取XComponent持有的surface的大小。
OH_NativeXComponent_GetXComponentSize(component, window, &width, &height);
UpdateNativeWindow(window, width, height);
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS cpp进行m3u8视频流解密demo
36浏览 • 1回复 待解决
摄像头获取到yuv数据是否旋转
657浏览 • 1回复 待解决
视频解码结果通过到vulkan渲染
1787浏览 • 1回复 待解决
HarmonyOS视频编解码-音频渲染
325浏览 • 1回复 待解决
HarmonyOS 怎么获取视频播放时长?
412浏览 • 1回复 待解决