@rongcloud/plugin-rtc 5.3.11 → 5.3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/async-task-queue.d.ts +15 -0
  2. package/dist/core/PolarisReporter.d.ts +35 -0
  3. package/dist/core/RCAudienceClient.d.ts +72 -0
  4. package/dist/core/RCRTCClient.d.ts +220 -0
  5. package/dist/core/constants.d.ts +2 -0
  6. package/dist/core/enums/BackgroundPictureFillMode.d.ts +14 -0
  7. package/dist/core/enums/MixLayoutMode.d.ts +18 -0
  8. package/dist/core/enums/MixVideoRenderMode.d.ts +14 -0
  9. package/dist/core/enums/RCFrameRate.d.ts +7 -0
  10. package/dist/core/enums/RCInnerCDNBroadcast.d.ts +5 -0
  11. package/dist/core/enums/RCInnerCDNModel.d.ts +5 -0
  12. package/dist/core/enums/RCInnerCDNPullIsHttps.d.ts +5 -0
  13. package/dist/core/enums/RCInnerCDNPullKind.d.ts +6 -0
  14. package/dist/core/enums/RCInnerCDNPushMode.d.ts +5 -0
  15. package/dist/core/enums/RCKickType.d.ts +11 -0
  16. package/dist/core/enums/RCLivingRoomType.d.ts +11 -0
  17. package/dist/core/enums/RCLivingType.d.ts +14 -0
  18. package/dist/core/enums/RCMediaType.d.ts +18 -0
  19. package/dist/core/enums/RCMixInputFilterMode.d.ts +35 -0
  20. package/dist/core/enums/RCRTCCode.d.ts +91 -0
  21. package/dist/core/enums/RCRTCLiveRole.d.ts +14 -0
  22. package/dist/core/enums/RCRTCPingResult.d.ts +5 -0
  23. package/dist/core/enums/RCRTCResolution.d.ts +102 -0
  24. package/dist/core/enums/RCResolution.d.ts +16 -0
  25. package/dist/core/enums/inner/PolarisRole.d.ts +14 -0
  26. package/dist/core/enums/inner/R2Action.d.ts +14 -0
  27. package/dist/core/enums/inner/R2Status.d.ts +11 -0
  28. package/dist/core/enums/inner/RCRTCMessageType.d.ts +66 -0
  29. package/dist/core/enums/inner/RCStreamType.d.ts +14 -0
  30. package/dist/core/enums/inner/TrackState.d.ts +14 -0
  31. package/dist/core/interfaces.d.ts +893 -0
  32. package/dist/core/room/Pinger.d.ts +34 -0
  33. package/dist/core/room/RCAbstractRoom.d.ts +379 -0
  34. package/dist/core/room/RCAudienceLivingRoom.d.ts +305 -0
  35. package/dist/core/room/RCAudioLevelReport.d.ts +17 -0
  36. package/dist/core/room/RCLivingPKHandler.d.ts +176 -0
  37. package/dist/core/room/RCLivingRoom.d.ts +145 -0
  38. package/dist/core/room/RCLocalMediaStream.d.ts +8 -0
  39. package/dist/core/room/RCMCUConfigBuilder.d.ts +207 -0
  40. package/dist/core/room/RCRTCRoom.d.ts +11 -0
  41. package/dist/core/service/RCMediaService.d.ts +96 -0
  42. package/dist/core/service/helper.d.ts +8 -0
  43. package/dist/core/service/index.d.ts +6 -0
  44. package/dist/core/service/interface.d.ts +311 -0
  45. package/dist/core/service/mcu-interface.d.ts +290 -0
  46. package/dist/core/tracks/RCLocalTrack.d.ts +108 -0
  47. package/dist/core/tracks/RCRemoteTrack.d.ts +23 -0
  48. package/dist/core/tracks/RCTrack.d.ts +80 -0
  49. package/dist/core/webrtc/ASdpStrategy.d.ts +43 -0
  50. package/dist/core/webrtc/PlanBStrategy.d.ts +25 -0
  51. package/dist/core/webrtc/RCRTCPeerConnection.d.ts +80 -0
  52. package/dist/core/webrtc/UnifiedPlanStrategy.d.ts +20 -0
  53. package/dist/core/webrtc/helper.d.ts +26 -0
  54. package/dist/core/webrtc/stat-parser/AbstractStatParser.d.ts +116 -0
  55. package/dist/core/webrtc/stat-parser/ChromeStatParser.d.ts +14 -0
  56. package/dist/core/webrtc/stat-parser/FirefoxStatParser.d.ts +14 -0
  57. package/dist/core/webrtc/stat-parser/IStatParser.d.ts +24 -0
  58. package/dist/core/webrtc/stat-parser/SafariStatParser.d.ts +14 -0
  59. package/dist/device.d.ts +6 -0
  60. package/dist/helper.d.ts +176 -0
  61. package/dist/index.d.ts +26 -7
  62. package/dist/index.esm.js +1 -1
  63. package/dist/index.js +1 -1
  64. package/dist/index.umd.js +1 -1
  65. package/dist/logger.d.ts +4 -0
  66. package/package.json +2 -2
@@ -0,0 +1,15 @@
1
+ export type AsyncTask<T = void> = () => Promise<T>;
2
+ export declare class AsyncTaskQueue {
3
+ private readonly queue;
4
+ private locked;
5
+ private checkToStart;
6
+ push<T>(task: AsyncTask<T>): Promise<T>;
7
+ }
8
+ /**
9
+ * 将异步任务推送到异步队列,队列内任务先进先出,依次执行,执行完成后通过
10
+ * Promise.resolve 返回执行结果
11
+ * @param task 传参不能是 `async () => {}` 所定义的异步函数,
12
+ * 只能使用明确的 `() => Promise<T> | T` 形式,避免转义时微任务被提前执行
13
+ */
14
+ export declare const push: <T>(task: AsyncTask<T>) => Promise<T>;
15
+ //# sourceMappingURL=async-task-queue.d.ts.map
@@ -0,0 +1,35 @@
1
+ import { RTCPluginContext, IRuntime } from '@rongcloud/engine';
2
+ import { IInnerRCRTCStateReport } from './interfaces';
3
+ import RCAbstractRoom from './room/RCAbstractRoom';
4
+ import RCAudienceLivingRoom from './room/RCAudienceLivingRoom';
5
+ import { PolarisRole } from './enums/inner/PolarisRole';
6
+ export default class PolarisReporter {
7
+ private readonly _context;
8
+ private readonly _runtime;
9
+ private readonly _roomId;
10
+ private readonly _crtRTCRoom;
11
+ private readonly _userRole;
12
+ constructor(_context: RTCPluginContext, _runtime: IRuntime, _roomId: string, _crtRTCRoom: RCAbstractRoom | RCAudienceLivingRoom, _userRole?: PolarisRole);
13
+ private _send;
14
+ private _getClientID;
15
+ /**
16
+ * 小流需去掉 _tiny,小流 resourceId 为 userId_tag_mediaType_tiny
17
+ */
18
+ private _getRealResourceId;
19
+ /**
20
+ * 生成北极星上报的 trackId
21
+ * @param resourceId userId_11_1_tiny 改为 userId_11_tiny_video
22
+ */
23
+ private _getPolarisTrackId;
24
+ sendR3R4Data(data: IInnerRCRTCStateReport): void;
25
+ /**
26
+ * 加入房间
27
+ */
28
+ sendR1(): void;
29
+ /**
30
+ * RTC 和 LIVE 发布、取消发布
31
+ * RTC 订阅、取消订阅
32
+ */
33
+ sendR2(action: string, status: string, trackIds: string[]): void;
34
+ }
35
+ //# sourceMappingURL=PolarisReporter.d.ts.map
@@ -0,0 +1,72 @@
1
+ import { IRuntime, RTCPluginContext } from '@rongcloud/engine';
2
+ import { IRCRTCReportListener, IRCRTCTrackEventListener, IRCRTCInitOptions } from './interfaces';
3
+ import { RCRemoteTrack } from './tracks/RCRemoteTrack';
4
+ import { RCLivingType } from './enums/RCLivingType';
5
+ import { RCRTCCode } from './enums/RCRTCCode';
6
+ import { RCMediaType } from './enums/RCMediaType';
7
+ /**
8
+ * 直播观众客户端
9
+ */
10
+ export default class RCAudienceClient {
11
+ private readonly _context;
12
+ private _pc;
13
+ private _service;
14
+ /**
15
+ * RTCToken
16
+ */
17
+ private _rtcToken;
18
+ /**
19
+ * 已订阅的资源信息
20
+ */
21
+ private _liveUrl;
22
+ /**
23
+ * 已订阅的远端流
24
+ */
25
+ private readonly _subTracks;
26
+ /**
27
+ * 客户端传入的数据上报事件
28
+ */
29
+ private _reportListener;
30
+ constructor(_context: RTCPluginContext, runtime: IRuntime, _initOption: IRCRTCInitOptions);
31
+ private _getReqHeaders;
32
+ private _clearSubscribeInfo;
33
+ private _livingType;
34
+ private _mediaType;
35
+ private _subTiny;
36
+ private _fromRetry;
37
+ private _reTryExchange;
38
+ /**
39
+ * 直播观众订阅主播资源,直播观众端无需加入房间
40
+ * @param liveUrl 直播资源地址
41
+ * @param livingType 直播类型,有效值为音频、音视频
42
+ * @param mediaType 订阅资源类型,其有效值为 `RCMediaType` 的枚举值
43
+ * @param subTiny 当值为 `true` 时将订阅小流,否则订阅大流。默认值为 `false`
44
+ */
45
+ subscribe(liveUrl: string, livingType: RCLivingType, mediaType: RCMediaType, subTiny?: boolean): Promise<{
46
+ code: RCRTCCode;
47
+ tracks: RCRemoteTrack[];
48
+ }>;
49
+ private __subscribe;
50
+ /**
51
+ * 取消订阅主播资源
52
+ * @param liveUrl
53
+ */
54
+ unsubscribe(): Promise<{
55
+ code: RCRTCCode;
56
+ }>;
57
+ private __unsubscribe;
58
+ /**
59
+ * 注册房间数据监控
60
+ * @param listener
61
+ * @description 该方法暂仅支持 Chrome 浏览器
62
+ */
63
+ registerReportListener(listener: IRCRTCReportListener | null): void;
64
+ private _appListener;
65
+ /**
66
+ * 注册流事件监听,多次注册会导致后者覆盖前者,可以通过使用 `registerTrackEventListener(null)` 取消注册
67
+ * @param listener
68
+ */
69
+ registerTrackEventListener(listener: IRCRTCTrackEventListener | null): void;
70
+ private _onTrackReady;
71
+ }
72
+ //# sourceMappingURL=RCAudienceClient.d.ts.map
@@ -0,0 +1,220 @@
1
+ import { IRuntime, RTCPluginContext, IRTCJoinedInfo, RTCJoinType, IRTCUserData } from '@rongcloud/engine';
2
+ import RCLivingRoom from './room/RCLivingRoom';
3
+ import RCRTCRoom from './room/RCRTCRoom';
4
+ import RCAudienceClient from './RCAudienceClient';
5
+ import { ICameraVideoProfile, ICreateLocalTrackOptions, IJoinResCDNInfo, IMicphoneAudioProfile, IRCRTCInitOptions, IScreenVideoProfile } from './interfaces';
6
+ import RCAbstractRoom from './room/RCAbstractRoom';
7
+ import { RCCameraVideoTrack, RCLocalAudioTrack, RCLocalFileTrack, RCLocalTrack, RCLocalVideoTrack, RCMicphoneAudioTrack, RCScreenVideoTrack } from './tracks/RCLocalTrack';
8
+ import { RCRTCCode } from './enums/RCRTCCode';
9
+ import { RCLivingType } from './enums/RCLivingType';
10
+ import { RCRemoteTrack } from './tracks/RCRemoteTrack';
11
+ import RCAudienceLivingRoom from './room/RCAudienceLivingRoom';
12
+ /**
13
+ * RTC 业务客户端
14
+ * @public
15
+ */
16
+ export default class RCRTCClient {
17
+ private readonly _context;
18
+ private readonly _runtime;
19
+ private readonly _options;
20
+ private readonly _service;
21
+ constructor(_context: RTCPluginContext, _runtime: IRuntime, _options: IRCRTCInitOptions);
22
+ private _handleMessage;
23
+ /**
24
+ * 获取加入的连麦房间
25
+ */
26
+ private _getJoinedPKRoomList;
27
+ private _getPKRoomIds;
28
+ /**
29
+ * 获取当前用户 Id,若 IM 未连接,这返回 `''`
30
+ * @returns
31
+ */
32
+ getCurrentId(): string;
33
+ private _crtRoom;
34
+ /**
35
+ * 加入普通音视频房间
36
+ * @param roomId
37
+ * @param joinType 多端处理方式
38
+ * @param outerUserDatas 业务层设置人员属性
39
+ */
40
+ joinRTCRoom(roomId: string, joinType?: RTCJoinType, outerUserDatas?: IRTCUserData): Promise<{
41
+ room?: RCRTCRoom;
42
+ code: RCRTCCode;
43
+ userIds?: string[];
44
+ tracks?: RCRemoteTrack[];
45
+ }>;
46
+ private _joinRTCRoom;
47
+ /**
48
+ * 主播加入直播房间或观众上麦场景调用,观众上麦之前需先取消已订阅的直播间资源
49
+ * @param roomId 房间 Id
50
+ * @param livingType 直播间类型,`RCLivingType.AUDIO` 为音频直播,`RCLivingType.VIDEO` 为音视频直播
51
+ * @param joinType 多端处理方式
52
+ * @param outerUserDatas 业务层设置人员属性
53
+ */
54
+ joinLivingRoom(roomId: string, livingType: RCLivingType, joinType?: RTCJoinType, outerUserDatas?: IRTCUserData): Promise<{
55
+ room?: RCLivingRoom;
56
+ code: RCRTCCode;
57
+ userIds?: string[];
58
+ tracks?: RCRemoteTrack[];
59
+ CDNEnable?: boolean;
60
+ }>;
61
+ private _joinLivingRoom;
62
+ private _audience;
63
+ /**
64
+ * 获取直播观众客户端
65
+ */
66
+ getAudienceClient(): RCAudienceClient;
67
+ private _onIMStatusChange;
68
+ private _onIMDisconnect;
69
+ private _onIMUninit;
70
+ /**
71
+ * 退出并销毁当前房间实例,退出后该房间的所有方法将不可用
72
+ */
73
+ leaveRoom(room: RCAbstractRoom): Promise<{
74
+ code: RCRTCCode;
75
+ }>;
76
+ private _leaveRoom;
77
+ /**
78
+ * 清除 _crtRoom 的引用
79
+ */
80
+ private _releaseCrtRoomObj;
81
+ private _getMediaStream;
82
+ /**
83
+ * 从麦克风中捕获音轨数据
84
+ * @param tag
85
+ * @param options
86
+ * @returns
87
+ */
88
+ createMicrophoneAudioTrack(tag?: string, options?: IMicphoneAudioProfile): Promise<{
89
+ code: RCRTCCode;
90
+ track?: RCMicphoneAudioTrack;
91
+ }>;
92
+ /**
93
+ * 由摄像头捕获视轨数据
94
+ * @param tag
95
+ * @param options
96
+ * @returns
97
+ */
98
+ createCameraVideoTrack(tag?: string, options?: ICameraVideoProfile): Promise<{
99
+ code: RCRTCCode;
100
+ track?: RCCameraVideoTrack;
101
+ }>;
102
+ private _formatAudioProfile;
103
+ /**
104
+ * 通过摄像头与麦克风采集音视频轨道数据
105
+ * @param tag
106
+ * @param options
107
+ * @returns
108
+ */
109
+ createMicrophoneAndCameraTracks(tag?: string, options?: {
110
+ audio?: IMicphoneAudioProfile;
111
+ video?: ICameraVideoProfile;
112
+ }): Promise<{
113
+ code: RCRTCCode;
114
+ tracks: RCLocalTrack[];
115
+ }>;
116
+ /**
117
+ * 创建屏幕共享视频流,默认分辨率 `1280 * 720`,帧率 `15`
118
+ * @param tag 屏幕共享视轨数据标识
119
+ * @param options
120
+ * @description
121
+ * 支持 Electron 平台下通过制定 `chromeMediaSourceId` 的方式获取屏幕共享视频。
122
+ * 参考:https://www.electronjs.org/docs/api/desktop-capturer
123
+ */
124
+ createScreenVideoTrack(tag?: string, options?: IScreenVideoProfile): Promise<{
125
+ code: RCRTCCode;
126
+ track?: RCScreenVideoTrack;
127
+ }>;
128
+ /**
129
+ * 创建 RCLocalAudioTrack 实例
130
+ * @param tag
131
+ * @param track
132
+ * @returns
133
+ */
134
+ createLocalAudioTrack(tag: string, track: MediaStreamTrack): Promise<{
135
+ code: RCRTCCode;
136
+ track?: RCLocalAudioTrack;
137
+ }>;
138
+ /**
139
+ * 创建 RCLocalVideoTrack 实例
140
+ * @param tag 视轨数据标识
141
+ * @param track MediaStreamTrack 实例
142
+ * @returns
143
+ */
144
+ createLocalVideoTrack(tag: string, track: MediaStreamTrack): Promise<{
145
+ code: RCRTCCode;
146
+ track?: RCLocalVideoTrack;
147
+ }>;
148
+ /**
149
+ * 根据本地或网络媒体文件资源创建 `RCLocalFileTrack` 实例
150
+ * @param tag 资源标识
151
+ * @param file 网络文件地址,或通过 <input type='file'> 获取到的 File 实例
152
+ * @param options 可用于指定 `withoutVideo` 与 `withoutAudio` 以剔除视轨与音轨
153
+ */
154
+ createLocalFileTracks(tag: string, file: string | File, options?: ICreateLocalTrackOptions): Promise<{
155
+ code: RCRTCCode;
156
+ tracks: RCLocalFileTrack[];
157
+ }>;
158
+ /**
159
+ * 根据 MediaStream 实例对象创建 RCLocalTrack 实例
160
+ * @param tag 轨道标识
161
+ * @param stream MediaStream 实例
162
+ * @param options 可用于指定 `withoutVideo` 与 `withoutAudio` 以剔除视轨与音轨
163
+ * @returns
164
+ */
165
+ createLocalTracks(tag: string, stream: MediaStream, options?: ICreateLocalTrackOptions): Promise<{
166
+ code: RCRTCCode;
167
+ tracks: RCLocalTrack[];
168
+ }>;
169
+ private _crtAudienceLivingRoom;
170
+ /**
171
+ * 观众加入直播房间
172
+ * @param roomId 房间 ID
173
+ * @param livingType 直播类型(音频直播 or 音视频直播)
174
+ */
175
+ joinLivingRoomAsAudience(roomId: string, livingType: RCLivingType): Promise<{
176
+ room?: RCAudienceLivingRoom;
177
+ code: RCRTCCode;
178
+ userIds?: string[];
179
+ RTCTracks?: RCRemoteTrack[];
180
+ MCUTracks?: RCRemoteTrack[];
181
+ CDNUris?: IJoinResCDNInfo;
182
+ }>;
183
+ /**
184
+ * 观众退出并销毁当前房间实例,退出后该房间的所有方法将不可用
185
+ */
186
+ leaveLivingRoomAsAudience(room: RCAudienceLivingRoom): Promise<{
187
+ code: RCRTCCode;
188
+ }>;
189
+ /**
190
+ * 升级为主播房间
191
+ * @param room 观众房间实例
192
+ */
193
+ upgradeToAnchorRoom(room: RCAudienceLivingRoom): Promise<{
194
+ room?: RCLivingRoom;
195
+ code: RCRTCCode;
196
+ userIds?: string[];
197
+ tracks?: RCRemoteTrack[];
198
+ }>;
199
+ /**
200
+ * 降级为观众房间
201
+ * @param room 主播房间实例
202
+ */
203
+ downgradeToAudienceRoom(room: RCLivingRoom): Promise<{
204
+ room?: RCAudienceLivingRoom;
205
+ code: RCRTCCode;
206
+ userIds?: string[];
207
+ RTCTracks?: RCRemoteTrack[];
208
+ MCUTracks?: RCRemoteTrack[];
209
+ CDNUris?: IJoinResCDNInfo;
210
+ }>;
211
+ /**
212
+ * 获取在房间内用户信息
213
+ * @since version 5.2.1
214
+ */
215
+ getJoinedRoomInfo(): Promise<{
216
+ code: RCRTCCode;
217
+ data?: IRTCJoinedInfo[];
218
+ }>;
219
+ }
220
+ //# sourceMappingURL=RCRTCClient.d.ts.map
@@ -0,0 +1,2 @@
1
+ export declare const STAT_NONE = -1;
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 自定义合流布局时,背景图片填充方式
3
+ */
4
+ export declare enum BackgroundPictureFillMode {
5
+ /**
6
+ * 裁剪(默认)
7
+ */
8
+ CROP = 1,
9
+ /**
10
+ * 不裁剪
11
+ */
12
+ WHOLE = 2
13
+ }
14
+ //# sourceMappingURL=BackgroundPictureFillMode.d.ts.map
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 直播布局模式定义
3
+ */
4
+ export declare enum MixLayoutMode {
5
+ /**
6
+ * 自定义布局
7
+ */
8
+ CUSTOMIZE = 1,
9
+ /**
10
+ * 悬浮布局(默认)
11
+ */
12
+ SUSPENSION = 2,
13
+ /**
14
+ * 自适应布局
15
+ */
16
+ ADAPTATION = 3
17
+ }
18
+ //# sourceMappingURL=MixLayoutMode.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 合流布局对视频的填充模式
3
+ */
4
+ export declare enum MixVideoRenderMode {
5
+ /**
6
+ * 裁剪(默认)
7
+ */
8
+ CROP = 1,
9
+ /**
10
+ * 不裁剪
11
+ */
12
+ WHOLE = 2
13
+ }
14
+ //# sourceMappingURL=MixVideoRenderMode.d.ts.map
@@ -0,0 +1,7 @@
1
+ export declare enum RCFrameRate {
2
+ FPS_10 = "FPS_10",
3
+ FPS_15 = "FPS_15",
4
+ FPS_24 = "FPS_24",
5
+ FPS_30 = "FPS_30"
6
+ }
7
+ //# sourceMappingURL=RCFrameRate.d.ts.map
@@ -0,0 +1,5 @@
1
+ export declare enum RCInnerCDNBroadcast {
2
+ SPREAD = 0,
3
+ NO_SPREAD = -1
4
+ }
5
+ //# sourceMappingURL=RCInnerCDNBroadcast.d.ts.map
@@ -0,0 +1,5 @@
1
+ export declare enum RCInnerCDNModel {
2
+ OPEN = 1,
3
+ STOP = 2
4
+ }
5
+ //# sourceMappingURL=RCInnerCDNModel.d.ts.map
@@ -0,0 +1,5 @@
1
+ export declare enum RCInnerCDNPullIsHttps {
2
+ NOT_HTTPS = 0,
3
+ HTTPS = 1
4
+ }
5
+ //# sourceMappingURL=RCInnerCDNPullIsHttps.d.ts.map
@@ -0,0 +1,6 @@
1
+ export declare enum RCInnerCDNPullKind {
2
+ RTMP = "rtmp",
3
+ FLV = "flv",
4
+ HLS = "hls"
5
+ }
6
+ //# sourceMappingURL=RCInnerCDNPullKind.d.ts.map
@@ -0,0 +1,5 @@
1
+ export declare enum RCInnerCDNPushMode {
2
+ AUTOMATIC = 0,
3
+ MANUAL = 1
4
+ }
5
+ //# sourceMappingURL=RCInnerCDNPushMode.d.ts.map
@@ -0,0 +1,11 @@
1
+ export declare enum RCKickReason {
2
+ /**
3
+ * Server 主动踢(掉 Server API 踢出)
4
+ */
5
+ SERVER_KICK = 1,
6
+ /**
7
+ * 其他设备登陆后,本端被踢
8
+ */
9
+ OTHER_KICK = 2
10
+ }
11
+ //# sourceMappingURL=RCKickType.d.ts.map
@@ -0,0 +1,11 @@
1
+ export declare enum RCLivingRoomType {
2
+ /**
3
+ * 普通直播房间 (通过 RCRTCClient.joinLivingRoom 直接加入的房间)
4
+ */
5
+ LIVING_ROOM = 0,
6
+ /**
7
+ * PK 直播房间 (通过 RCLivingRoom.getRoomPKHandler().joinPKRoom 加入其他主播的房间)
8
+ */
9
+ PK_ROOM = 1
10
+ }
11
+ //# sourceMappingURL=RCLivingRoomType.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 直播间类型
3
+ */
4
+ export declare enum RCLivingType {
5
+ /**
6
+ * 音视频直播
7
+ */
8
+ VIDEO = 0,
9
+ /**
10
+ * 音频直播
11
+ */
12
+ AUDIO = 1
13
+ }
14
+ //# sourceMappingURL=RCLivingType.d.ts.map
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 媒体资源类型
3
+ */
4
+ export declare enum RCMediaType {
5
+ /**
6
+ * 音频流
7
+ */
8
+ AUDIO_ONLY = 0,
9
+ /**
10
+ * 视频流
11
+ */
12
+ VIDEO_ONLY = 1,
13
+ /**
14
+ * 音视频混合流,只在 web 端存在混合流的情况
15
+ */
16
+ AUDIO_VIDEO = 2
17
+ }
18
+ //# sourceMappingURL=RCMediaType.d.ts.map
@@ -0,0 +1,35 @@
1
+ export declare enum RCMixInputFilterMode {
2
+ /** 全合流,后续加入房间的用户会自动合流 */
3
+ AUDIO_VIDEO_ALL = 0,
4
+ /** 全不合流,后续加入本房间的用户 */
5
+ AUDIO_VIDEO_NO = 1,
6
+ /** 音频全订阅, 视频全不订阅 */
7
+ AUDIO_ALL_VIDEO_NO = 2,
8
+ /** 视频全订阅, 音频全不订阅 */
9
+ AUDIO_NO_VIDEO_ALL = 3,
10
+ /**
11
+ * 根据设置的音频合流列表和视频合流列表合并媒体流
12
+ */
13
+ AUDIO_VIDEO_INPUT = 4,
14
+ /** 音频全订阅,视频根据设置的视频合流列表 */
15
+ AUDIO_ALL_VIDEO_INPUT = 5,
16
+ /** 音频全不订阅, 视频根据input里面的视频项订阅 */
17
+ AUDIO_NO_VIDEO_INPUT = 6,
18
+ /** 视频全订阅, 音频根据input里面的音频项订阅 */
19
+ AUDIO_INPUT_VIDEO_ALL = 7,
20
+ /** 视频全不订阅, 音频根据input里面的音频项订阅 */
21
+ AUDIO_INPUT_VIDEO_NO = 8,
22
+ /** 按房间列表订阅音视频(保留当前已经订阅的, 但没在房间列表里的音视频) */
23
+ ROOM_AUDIO_VIDEO_APPEND = 9,
24
+ /** 按房间列表订阅音视频(清理当前已经订阅的, 但没在房间列表里的音视频) */
25
+ ROOM_AUDIO_VIDEO_NOT_APPEND = 10,
26
+ /** 按房间列表订阅音频, 不订阅视频(保留当前已经订阅的, 但没在房间列表里的音频) */
27
+ ROOM_AUDIO_APPEND = 11,
28
+ /** 按房间列表订阅音视, 不订阅视频(清理当前已经订阅的, 但没在房间列表里的音频) */
29
+ ROOM_AUDIO_NOT_APPEND = 12,
30
+ /** 按房间列表订阅视频, 不订阅音频(保留当前已经订阅的, 但没在房间列表里的视频) */
31
+ ROOM_VIDEO_APPEND = 13,
32
+ /** 按房间列表订阅视频, 不订阅音频(清理当前已经订阅的, 但没在房间列表里的视频) */
33
+ ROOM_VIDEO_NOT_APPEND = 14
34
+ }
35
+ //# sourceMappingURL=RCMixInputFilterMode.d.ts.map
@@ -0,0 +1,91 @@
1
+ /**
2
+ * 错误码,与移动端对齐
3
+ * @description
4
+ * 1. `51000 - 51999` 为 Android 专用段
5
+ * 2. `52000 - 52999` 为 iOS 专用段
6
+ * 3. `53000 - 53199` 为 Web RTC 专用段
7
+ * 4. `53200 - 53499` 为 Web Call 专用段
8
+ * 5. `53500 - 53999` 为 Web 保留段
9
+ */
10
+ export declare enum RCRTCCode {
11
+ /** 成功 */
12
+ SUCCESS = 10000,
13
+ /** IM 服务未连接 */
14
+ SIGNAL_DISCONNECTED = 50000,
15
+ /** 参数错误 */
16
+ PARAMS_ERROR = 50001,
17
+ /** 加入房间错误,重复加入 RTC 房间内 */
18
+ REPERT_JOIN_ROOM = 50002,
19
+ /** 当前不在房间内 */
20
+ NOT_IN_ROOM = 50003,
21
+ /** MediaServer 未开启 */
22
+ SERVICE_INVALID = 50004,
23
+ /** RTC Token 无效 */
24
+ RTC_TOKEN_INVALID = 50006,
25
+ /** 底层信令调用错误 */
26
+ SIGNAL_ERROR = 53001,
27
+ /** 创建 Offer 失败 */
28
+ CREATE_OFFER_FAILED = 53003,
29
+ /** 网络请求失败 */
30
+ REQUEST_FAILED = 53004,
31
+ /** MCU 地址不可为空 */
32
+ MCU_SERVER_NOT_FOUND = 53005,
33
+ /** 直播订阅失败,当前存在已订阅资源 */
34
+ BROADCAST_SUB_LIST_NOT_EMPTY = 53007,
35
+ /** 房间已被销毁,需重新加入房间获取 Room 实例 */
36
+ ROOM_HAS_BEEN_DESTROYED = 53008,
37
+ /** 没有可用的音视频服务器地址 */
38
+ NOT_OPEN_VIDEO_AUDIO_SERVER = 53009,
39
+ /** 获取用户媒体资源流失败 */
40
+ GET_USER_MEDIA_FAILED = 53010,
41
+ /** 获取屏幕共享流失败 */
42
+ GET_DISPLAY_MEDIA_FAILED = 53011,
43
+ /** 权限问题导致获取媒体流被拒绝 */
44
+ PERMISSION_DENIED = 53012,
45
+ /** 创建自定义流失败 */
46
+ CREATE_CUSTOM_TRACK_FAILED = 53013,
47
+ /** 无效的 TAG 定义 */
48
+ INVALID_TAGS = 53014,
49
+ /** IM 连接无效,无法识别当前登录的用户身份 */
50
+ INVALID_USER_ID = 53015,
51
+ /** 创建文件流失败 */
52
+ CREATE_FILE_TRACK_FAILED = 53016,
53
+ /** 无效的 File 实例 */
54
+ INVALID_FILE_INSTANCE = 53017,
55
+ /** setRemoteDescription failed */
56
+ SET_REMOTE_DESCRIPTION_FAILED = 53018,
57
+ /** 浏览器不支持此方法 */
58
+ BROWSER_NOT_SUPPORT = 53019,
59
+ /** 媒体流无法播放,可能是远端流未订阅或本地流已销毁 */
60
+ TRACK_NOT_READY = 53020,
61
+ /** 视频流播放需时需传参 HTMLVideoElement 作为显示组件 */
62
+ VIDEO_TRACK_MISS_MEDIA_ELEMENT = 53021,
63
+ /** 媒体流播放失败 */
64
+ TRACK_PLAY_ERROR = 53022,
65
+ /** 观众加入直播房间信令错误 */
66
+ SIGNAL_AUDIENCE_JOIN_ROOM_FAILED = 53023,
67
+ /** 直播房间切换身份错误 */
68
+ SIGNAL_ROOM_CHANGE_IDENTITY_FAILED = 53024,
69
+ /** 公有云 SDK 包不允许使用私有云环境 */
70
+ PACKAGE_ENVIRONMENT_ERROR = 53025,
71
+ /** 单个用户发布资源超过限制 ( MediaServer 限制最多 10 个 track ) */
72
+ PUBLISH_TRACK_LIMIT_EXCEEDED = 53026,
73
+ /** 房间内无主播推 CDN */
74
+ CDN_RESOURCE_IS_EMPTY = 53027,
75
+ /** 加入 RTC 房间 joinTYype 为 1 时,当前有其他端在房间时的应答码 */
76
+ SIGNAL_JOIN_RTC_ROOM_REFUSED = 53028,
77
+ /** 设置音频输出设备时,无权限使用请求的设备 */
78
+ NO_PERMISSION_TO_USE_REQUESTED_DEVICE = 53029,
79
+ /** 方法在 PK 房间上不可用 */
80
+ THE_FUNCTION_IS_DISABLED_IN_PKROOM = 53030
81
+ }
82
+ /**
83
+ * RTC 信令 Server 返回需处理的错误 Code
84
+ */
85
+ export declare enum RTCSignalCode {
86
+ /**
87
+ * 加入 RTC 房间 joinTYype 为 1 时,当前有其他端在房间时的应答码
88
+ */
89
+ JOIN_REFUSED = 40032
90
+ }
91
+ //# sourceMappingURL=RCRTCCode.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 直播角色
3
+ */
4
+ export declare enum RCRTCLiveRole {
5
+ /**
6
+ * 主播
7
+ */
8
+ ANCHOR = 1,
9
+ /**
10
+ * 观众
11
+ */
12
+ AUDIENCE = 2
13
+ }
14
+ //# sourceMappingURL=RCRTCLiveRole.d.ts.map
@@ -0,0 +1,5 @@
1
+ export declare enum RCRTCPingResult {
2
+ SUCCESS = "Success",
3
+ FAIL = "Fail"
4
+ }
5
+ //# sourceMappingURL=RCRTCPingResult.d.ts.map