Skip to content

腾讯实时音视频SDK升级到9.9版本,音视频通话美颜崩溃 #17

@Zhudongli

Description

@Zhudongli
  • (uint32_t)onProcessVideoFrame:(TRTCVideoFrame *)srcFrame dstFrame:(TRTCVideoFrame *)dstFrame {
    _mContext = [EAGLContext currentContext];
    if ([FUGLContext shareGLContext].currentGLContext != _mContext) {
    [[FUGLContext shareGLContext] setCustomGLContext: _mContext];
    }

    if ([FUManager shareManager].isRender) {
    [[FUTestRecorder shareRecorder] processFrameWithLog];
    [[FUManager shareManager] updateBeautyBlurEffect]; //更新美颜磨皮效果
    FURenderInput *input = [[FURenderInput alloc] init];

      // 根据输入纹理调整参数设置
      input.renderConfig.imageOrientation = FUImageOrientationDown;
      input.renderConfig.isFromFrontCamera = self.isFrontCamera;
      input.renderConfig.isFromMirroredCamera = YES;
      // stickerFlipH和stickerFlipV尽量不要使用,后续将不再维护,这里使用是为了适配老道具
      input.renderConfig.stickerFlipH = !self.isFrontCamera;
      input.renderConfig.stickerFlipV = NO;
      
      FUTexture tex = {srcFrame.textureId, CGSizeMake(srcFrame.width, srcFrame.height)};
      input.texture = tex;
      // 开启重力感应,内部会自动计算正确方向,设置fuSetDefaultRotationMode,无须外面设置
      input.renderConfig.gravityEnable = YES;
      input.renderConfig.textureTransform = CCROT0_FLIPVERTICAL;
      FURenderOutput *output = [[FURenderKit shareRenderKit] renderWithInput:input];
      dstFrame.textureId = output.texture.ID;
      if (output.texture.ID != 0) {
          return output.texture.ID;
      }
    

    }
    return 0;
    }

崩溃在: FURenderOutput *output = [[FURenderKit shareRenderKit] renderWithInput:input];
崩溃原因显示: glGetError:GL_INVALID_VALUE 和 glGetError:GL_INVALID_FRAMEBUFFER_OPERATION

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions