音视频接口
KY_SetHWDecode
- 功能描述:
- 为指定的视频通道设置解码方式(硬件解码或软件解码)。
接口定义
- (void)KY_SetHWDecode:(NSInteger)channel
isHWDeocde:(BOOL)isHWDeocde;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要设置的视频通道号,通常为 0。 |
| isHWDecode | boolean | YES 表示启用硬件解码,NO 表示启用软件解码。 |
代码示例
// 为 _mainChannel 指定的通道设置为软件解码
[self.camera KY_SetHWDecode:_mainChannel isHWDeocde:NO];
KY_SetDecodeDelayTime
- 功能描述:
- 设置视频解码的最大延迟时间和每帧的解码时间间隔,用于平衡流畅度和实时性。
接口定义
- (void)TK_setDecodeDelayTime:(NSInteger)delayTime
durationTime:(NSInteger)durationTime
channel:(NSInteger)channel;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| delayTime | long | 最大延迟时间,单位为毫秒 (ms)。 |
| durationTime | long | 解码时间间隔,单位为毫秒 (ms),取值范围为 0 ~ 30。 |
| channel | int | 要设置的视频通道号,通常为 0。 |
代码示例
// 设置最大延迟为 1500ms,解码间隔为 15ms
[self.camera TK_setDecocdeDelayTime:1500 durationTime:15 channel:0];
KY_StartListen
- 功能描述:
- 开启或关闭音频监听功能(即播放来自设备端的声音)。
接口定义
- (void)KY_StartListen:(NSInteger)channel
isOn:(BOOL)isOn
isPlayer:(BOOL)isPlayer;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要操作的音频通道号,通常为 0。 |
| isOn | boolean | YES 表示开启监听,NO 表示关闭监听。 |
| isPlayer | boolean | 是否解码并播放音频,默认为 true。 |
代码示例
// 开启监听功能
[self.camera KY_StartListen:_mainChannel isOn:YES isPlayer:YES];
KY_StartTalk
- 功能描述:
- 开启或关闭音频对讲功能(即向设备端发送声音)。
接口定义
- (void)KY_StartTalk:(NSInteger)channel
isResend:(BOOL)isResend
isOn:(BOOL)isOn;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要操作的音频通道号,通常为 0。 |
| isResend | boolean | YES 表示启用重传机制,以提高弱网环境下的通话质量。 |
| isOn | boolean | YES 表示开启对讲,NO 表示关闭对讲。 |
代码示例
// 开启对讲功能,并启用重传机制
[self.camera KY_StartTalk:self.mainChannel isResend:YES isOn:YES];
KY_setVideoDropModeWithChannel
- 功能描述:
- 设置当视频解码缓存达到最大值时的丢帧策略,用于在网络不佳时维持流畅度。
接口定义
- (void)KY_setVideoDropModeWithChannel:(NSInteger)channel
mode:(DropMode)mode;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要设置的视频通道号,通常为 0。 |
| mode | DropMode | 丢帧模式枚举:
|
代码示例
// 设置当延迟过高时,丢弃 P 帧
[self.camera KY_setVideoDropModeWithChannel:0 mode:0];
KY_StartRecording
- 功能描述:
- 开启或关闭本地录像功能,将视频流(可选音频)保存为文件。
接口定义
- (void)KY_StartRecording:(NSInteger)channel
fileName:(NSString * _Nullable)fileName
durationTime:(NSTimeInterval)durationTime
isOn:(BOOL)isOn
isRecordAudio:(BOOL)isRecordAudio
success:(void (^ _Nonnull)(void))success
failure:(void (^ _Nonnull)(NSError * _Nonnull))failure;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要录制的视频通道号,通常为 0。 |
| fileName | string | 保存到沙盒的文件名称。如果为 nil 或空字符串,SDK 可能会自动生成文件名。 |
| durationTime | NSTimeInterval | 录像持续时间,单位为秒。默认值为 3 分钟。如果设置为 0,则表示持续录制直到手动停止。 |
| isOn | boolean | YES 表示开始录制,NO 表示停止录制。 |
| isRecordAudio | boolean | YES 表示同时录制音频,NO 表示只录制视频。 |
| success | block | 操作成功时的回调。 |
| failure | block | 操作失败时的回调,包含一个 NSError 对象。 |
代码示例
// 开始录制,录制音频,使用默认文件名和时长
[self.camera KY_StartRecording:_mainChannel
fileName:@""
durationTime:0
isOn:YES
isRecordAudio:YES
success:^{
NSLog(@"录像已成功开始。");
}
failure:^(NSError * _Nonnull error) {
NSLog(@"录像开始失败: %@", error.localizedDescription);
}];
// ... 一段时间后 ...
// 停止录制
[self.camera KY_StartRecording:_mainChannel
fileName:@""
durationTime:0
isOn:NO
isRecordAudio:YES
success:^{
NSLog(@"录像已成功停止。");
}
failure:^(NSError * _Nonnull error) {
NSLog(@"录像停止失败: %@", error.localizedDescription);
}];
KY_Snapshot
- 功能描述:
- 截取当前视频画面并保存为图片文件。
接口定义
- (void)KY_Snapshot:(NSInteger)channel
fileName:(NSString * _Nullable)fileName;
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | int | 要截取画面的视频通道号,通常为 0。 |
| fileName | string | 保存到沙盒的图片文件名称(不含路径)。如果为 nil 或空字符串,SDK 可能会自动生成文件名。 |
代码示例
// 截取当前画面,使用默认文件名
[self.camera KY_Snapshot:0 fileName:@""];
