使用GPUImage做美颜导致远端图像颠倒的问题详解

使用自采集的方式整合第三方美颜

那个横屏的问题,结论如下:

变换矩阵不能写死为:vf.transform = new float[]
{ 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f }
;
需要从GPUImage绘制层将变换矩阵传出来,然后赋值给vf.transform。用户代码修改如下:
GPUImageRenderer.java:

public interface OnFrameAvailableListener
{ void onFrameAvailable(int textureID, int rotation, byte[] data, float[] transform); }
mSurfaceTexture.getTransformMatrix(videoTextureTransform);
if (null != onFrameAvailableListener)
{ onFrameAvailableListener.onFrameAvailable(mGLTextureId, getRotation().asInt(), data, videoTextureTransform); }

VideoChatViewActivity.java:

vf.transform = transform;

以上可解决远端接收到的数据是横屏的问题

使用商汤的美颜导致颠倒

商汤的矩阵是不停的变化的,所以写固定的转换数组没用。

这里写图片描述

在调用的地方,加上这行代码即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值