跳转至

发布和播放音视频

最近更新时间:2022-01-25 15:10:36 星期二

publishVideo

简要描述 - 发布本地视频

需在进入房间成功后,调用生效。 用户发布视频成功后,收到成功的回调函数:- (void)onUserVideoStatus(String uid, int state)

接口名称
- - (int)publishVideo(String signalingRole);

参数

参数名 必填 类型 说明
signalingRole String 用户身份

方法示例

1
    int ret =TKRoomManager.getInstance().publishVideo(RoomRole.STUDENT);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

unPublishVideo

简要描述 - 停止发布本地视频

需在进入房间成功后,调用生效。 用户停止发布视频成功后,收到成功的回调函数:- onUserVideoStatus(String uid, int state)

接口名称
- - (int)unPublishVideo(String signalingRole);

参数

参数名 必填 类型 说明
signalingRole String 用户身份

方法示例

1
    int ret =TKRoomManager.getInstance().publishVideo(RoomRole.STUDENT);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

publishAudio

简要描述 - 发布本地音频

需在进入房间成功后,调用生效。 用户发布音频成功后,收到成功的回调函数:- (void)onUserAudioStatus(String uid, int state)

接口名称
- - (int)publishAudio(String signalingRole);

参数

参数名 必填 类型 说明
signalingRole String 用户身份

方法示例

1
    int ret =TKRoomManager.getInstance().publishAudio(RoomRole.STUDENT);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

unPublishAudio

简要描述 - 停止发布本地音频

需在进入房间成功后,调用生效。 用户停止发布音频成功后,收到成功的回调函数:- (void)onUserAudioStatus(String uid, int state)

接口名称
- - (int)unPublishAudio(String signalingRole);

参数

参数名 必填 类型 说明
signalingRole String 用户身份

方法示例

1
    int ret =TKRoomManager.getInstance().unPublishAudio(RoomRole.STUDENT);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

playVideo

简要描述 - 播放用户视频

需在调用 init 后,调用生效。 对同一个用户ID,可以调用多次此函数。 - 多次调用: 1、当对传入相同peerID,相同view时,函数不执行任何操作,直接返回成功; 2、当对传入相同peerID,不同view时,会在新的view上渲染视频,之前播放视频的view将停止渲染视频; 3、须都在主线程调用。 - 调用此接口后,会有播放视频的相关回调通知: 1、收到第一帧数据的回调 -(void)onFirstVideoFrame(String peerId, int mediaType, int width, int height) 2、播放视频的过程中,出现视频中断的回调 -(void)onVideoStateChange(String peerId, String id, TK_VIDEO_STATE state)

接口名称
- ```java - (int)playVideo(String peerId, Object view, RendererCommon.ScalingType mode);

1
2
  - (int)playVideo(String peerId, Object view, RendererCommon.ScalingType mode, String cameraId);
       ```

参数

参数名 必填 类型 说明
peerID String 用户ID
ScalingType ScalingType 渲染模式枚举,定义详情见 相关扩展字段
view SurfaceViewRenderer 渲染窗口类,请使用sdk中的SurfaceViewRenderer
cameraId String 该视频的采集设备ID,针对该用户是多摄像头设备同时发布情况

方法示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//全局的eglbase
 EglBase eglBase = EglBase.create();
 //创建一个renderer
 TkSurfaceViewRenderer createRender() {
    TkSurfaceViewRenderer renderer  = new TkSurfaceViewRenderer(this);
    try {
        renderer.init(eglBase.getEglBaseContext(), null);
    } catch (Exception e) {
        //释放renderer
        renderer.release();
        //eglbase释放并重新创建
        eglBase.release();
        eglBase = EglBase.create();
        //重新初始化renderer
        renderer.init(eglBase.getEglBaseContext(), null);
    }
    return renderer;
}

    TKRoomManager.getInstance().playVideo("123", createRender(),RendererCommon.ScalingType.SCALE_ASPECT_BALANCED);

OR:

    TKRoomManager.getInstance().playVideo("123", createRender(),RendererCommon.ScalingType.SCALE_ASPECT_BALANCED,"1234");
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

playAudio

简要描述 - 播放用户音频

需在调用 init 后,调用生效。 无需播放自己的音频,若playAudio传入参数是自己的ID,函数会直接return。 - 调用此接口后,会有播放音频的相关回调通知: 1、收到第一帧数据的回调 - (void)onFirstAudioFrame(String peerId, int mediaType) 2、播放视频的过程中,出现音频中断的回调 - (void)onAudioStateChange(String peerId, TK_AUDIO_STATE state) 3、播放用户音频时,音量大小变化的回调(包括自己的音量和远端音频的音量): -(void)onAudioVolume(String peerId, int volume)

接口名称
- - (int)playAudio(String peerId);

参数

参数名 必填 类型 说明
peerID String 用户ID

方法示例

1
   TKRoomManager.getInstance().playAudio(peerId);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

unPlayVideo

简要描述 - 停止播放用户视频

需在调用 init 后,调用生效。 须都在主线程调用。

接口名称
```java - (int)unPlayVideo(String peerId); OR: - (int)unPlayVideo(String peerId, String cameraId);

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<font size=2.5>**参数**</font></br>

|参数名|必填|类型|说明|
|:----|:-----|:----- |:----- |
| peerID | | String | 用户ID |
| cameraId | | String | 采集该视频的设备ID,针对该用户是多摄像头设备同时发布情况  |

<font size=2.5>**方法示例**</font></br>
```java
    TKRoomManager.getInstance().unPlayVideo(peerId);
OR:
    TKRoomManager.getInstance().unPlayVideo(peerId,null);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

unPlayAudio

简要描述 - 停止播放用户音频

接口名称
- - (int)unPlayAudio(String peerId);

参数

参数名 必填 类型 说明
peerID String 用户ID

方法示例

1
   TKRoomManager.getInstance().unPlayAudio(peerId);
返回值说明

类型 说明
int 0:表示调用成功,非0:表示调用失败

© 2016-2023 北京拓课网络科技有限公司 版权所有  京ICP备17018423号-1 京公网安备11010502043461号