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

HarmonyOS
2024-12-25 10:45:10
浏览
收藏 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);
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
分享
微博
QQ
微信
回复
2024-12-25 13:18:50
相关问题
HarmonyOS cpp进行m3u8视频流解密demo
843浏览 • 1回复 待解决
HarmonyOS 视频渲染播放
775浏览 • 1回复 待解决
摄像头获取到yuv数据是否旋转
1367浏览 • 1回复 待解决
HarmonyOS 本地音视频播放demo
896浏览 • 1回复 待解决
视频解码结果通过到vulkan渲染
2736浏览 • 1回复 待解决
HarmonyOS视频编解码-音频渲染
1307浏览 • 1回复 待解决
HarmonyOS 怎么获取视频播放时长?
1009浏览 • 1回复 待解决