企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 3.2.4 音视频交互 设置必要音视频参数,参考代码如下: ``` //设置本地视频采用 Overlay 模式 [AnyChatPlatform SetSDKOptionInt:BRAC_SO_LOCALVIDEO_OVERLAY :1]; //设置本地视频采集随着设备 ``` 屏幕旋转处理 ``` [AnyChatPlatform SetSDKOptionInt:BRAC_SO_LOCALVIDEO_ORIENTATION :self.int erfaceOrientation]; ``` 摄像头硬件初始化 导入框架#import <AVFoundation/AVFoundation.h> 创建视频显示层全局变量 AVCaptureVideoPreviewLayer*localVideoSurface;
 ``` //AnyChat SDK自动调用“摄像头硬件初始化”方法 - (void) OnLocalVideoInit:(id)session { ``` ``` //通过 session 控制设备的视频数据输入和输出流向 localVideoSurface = [AVCaptureVideoPreviewLayerlayerWithSession: (AVCaptureSession*)session]; ``` ``` //视频显示层 UI 设置 localVideoSurface.frame = CGRectMake(0, 0, 120, 160); localVideoSurface.videoGravity = AVLayerVideoGravityResizeAspectFill; //视频显示层添加到自定义的 theLocalView 界面显示视图中。 [self.theLocalView.layeraddSublayer:self.localVideoSurface]; ``` 打开本地音视频(需要进入房间) ``` //打开本地音频(参数“-1”表示本地用户,也可以用本地的真实 userid) [AnyChatPlatform UserSpeakControl: -1:YES]; ``` ``` //设置本地视频 UI(“0”为默认适配视频显示位置与尺寸大小) [AnyChatPlatform SetVideoPos:-1 :self :0 :0 :0 :0]; ``` ``` //打开本地视频(参数“-1”表示本地用户,也可以用本地的真实 userid) [AnyChatPlatform UserCameraControl:-1 : YES]; ``` 关闭本地音视频 ``` //关闭本地音频 [AnyChatPlatform UserSpeakControl: -1 : NO]; ``` ``` //关闭本地视频 [AnyChatPlatform UserCameraControl: -1 : NO]; ``` ``` - (void) OnLocalVideoRelease:(id)sender { // localVideoSurface表示视频显示层全局变量 if(localVideoSurface) { localVideoSurface = nil; } } ```