发布和播放音视频
最近更新时间:2022-01-25 15:10:36 星期二
publishVideo
简要描述 - 发布本地视频
需在进入房间成功后,调用生效。 用户发布视频成功后,收到成功的回调函数:- (void)roomManagerOnUserVideoStatus:(NSString *)peerID state:(TKMediaState)state。
接口名称
- - (int)publishVideo:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
completion | 否 | completion_block | 调用接口的callback |
方法示例
1 2 3 4 5 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
unPublishVideo
简要描述 - 停止发布本地视频
需在进入房间成功后,调用生效。 用户停止发布视频成功后,收到成功的回调函数:- (void)roomManagerOnUserVideoStatus:(NSString *)peerID state:(TKMediaState)state。
接口名称
- - (int)unPublishVideo:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
completion | 否 | completion_block | 调用接口的callback |
方法示例
1 2 3 4 5 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
publishAudio
简要描述 - 发布本地音频
需在进入房间成功后,调用生效。 用户发布音频成功后,收到成功的回调函数:- (void)roomManagerOnUserAudioStatus:(NSString *)peerID state:(TKMediaState)state。
接口名称
- - (int)publishAudio:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
completion | 否 | completion_block | 调用接口的callback |
方法示例
1 2 3 4 5 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
unPublishAudio
简要描述 - 停止发布本地音频
需在进入房间成功后,调用生效。 用户停止发布音频成功后,收到成功的回调函数:- (void)roomManagerOnUserAudioStatus:(NSString *)peerID state:(TKMediaState)state。
接口名称
- - (int)unPublishAudio:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
completion | 否 | completion_block | 调用接口的callback |
方法示例
1 2 3 4 5 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
playVideo
简要描述
- 播放用户视频 需在调用 initWithAppKey 后,调用生效。 对同一个用户ID,可以调用多次此函数。
- 多次调用: 1、当对传入相同peerID,相同view时,函数不执行任何操作,直接返回成功; 2、当对传入相同peerID,不同view时,会在新的view上渲染视频,之前播放视频的view将停止渲染视频; 3、须都在主线程调用。
- 调用此接口后,会有播放视频的相关回调通知: 1、收到第一帧数据的回调 -(void)roomManagerOnFirstVideoFrameWithPeerID:(NSString *)peerID width:(NSInteger)width height:(NSInteger)height mediaType:(TKMediaType)type 2、播放视频的过程中,出现视频中断的回调 -(void)roomManagerOnVideoStateChange:(NSString )peerId deviceId:(NSString )deviceId videoState:(TKRenderState)state mediaType:(TKMediaType)type
接口名称
1 2 3 4 5 6 7 8 |
|
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
peerID | 是 | NSString | 用户ID |
TKRenderMode | 是 | TKRenderMode | 渲染模式枚举,定义详情见 TKRoomDefines.h |
window | 是 | UIView | 视频窗口 |
canvas | 是 | TKVideoCanvas | 渲染窗口类,定义详情见 TKRoomDefines.h |
deviceId | 否 | NSString | 该视频的采集设备ID,针对该用户是多摄像头设备同时发布情况 |
completion | 否 | completion_block | 调用完成的回调,可以处理播放完成之后的操作 |
方法示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
playAudio
简要描述
- 播放用户音频 需在调用 initWithAppKey 后,调用生效。 无需播放自己的音频,若playAudio传入参数是自己的ID,函数会直接return。
- 调用此接口后,会有播放音频的相关回调通知: 1、收到第一帧数据的回调 - (void)roomManagerOnFirstAudioFrameWithPeerID:(NSString *)peerID mediaType:(TKMediaType)type 2、播放视频的过程中,出现音频中断的回调 - (void)roomManagerOnAudioStateChange:(NSString *)peerId audioState:(TKRenderState)state mediaType:(TKMediaType)type 3、播放用户音频时,音量大小变化的回调(包括自己的音量和远端音频的音量): -(void)roomManagerOnAudioVolumeWithPeerID:(NSString *)peeID volume:(int)volume
接口名称
- - (int)playAudio:(NSString *)peerID completion:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
peerID | 是 | NSString | 用户ID |
completion | 否 | completion_block | 调用完成回调 |
方法示例
1 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
unPlayVideo
简要描述 - 停止播放用户视频
需在调用 initWithAppKey 后,调用生效。 须都在主线程调用。
接口名称
1 2 3 4 5 6 |
|
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
peerID | 是 | NSString | 用户ID |
deviceId | 否 | NSString | 采集该视频的设备ID,针对该用户是多摄像头设备同时发布情况 |
completion | 否 | completion_block | 调用完成的回调 |
方法示例
1 2 3 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
unPlayAudio
简要描述 - 停止播放用户音频
接口名称
- - (int)unPlayAudio:(NSString *)peerID completion:(completion_block _Nullable)completion;
参数
参数名 | 必填 | 类型 | 说明 |
---|---|---|---|
peerID | 是 | NSString | 用户ID |
completion | 否 | completion_block | 调用完成回调 |
方法示例
1 |
|
类型 | 说明 |
---|---|
int | 0:表示调用成功,非0:表示调用失败 |
备注
- 更多返回错误代码请看 TKRoomErrorCode 错误代码描述