larksr_websdk 3.2.405 → 3.3.102

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.
@@ -7,7 +7,7 @@ export interface UTLockInfo {
7
7
  }
8
8
  export interface GetTaskResult {
9
9
  adminViewer: number;
10
- appKey: string;
10
+ wsId: string;
11
11
  appliId: string;
12
12
  appliType: number;
13
13
  city: string;
@@ -24,7 +24,6 @@ export interface GetTaskResult {
24
24
  reserveFlag: number;
25
25
  serverId: string;
26
26
  serverIp: string;
27
- shareUrl: string;
28
27
  startAt: string;
29
28
  startParam: string;
30
29
  startProcType: number;
@@ -33,12 +32,13 @@ export interface GetTaskResult {
33
32
  updateDate: string;
34
33
  useGamepad: number;
35
34
  wm: number;
36
- textInputEventPrompt: number;
37
- audioInput: number;
38
- audioInputAutoStart: number;
39
- videoInput: number;
40
- videoInputAutoStart: number;
41
- liveStreaming: number;
35
+ shareUrl?: string;
36
+ textInputEventPrompt?: number;
37
+ audioInput?: number;
38
+ audioInputAutoStart?: number;
39
+ videoInput?: number;
40
+ videoInputAutoStart?: number;
41
+ liveStreaming?: number;
42
42
  mobileKeyboardType?: number;
43
43
  }
44
44
  export interface StartAppInfo {
@@ -75,16 +75,24 @@ export interface StartAppInfo {
75
75
  authCode?: string;
76
76
  nickName?: string;
77
77
  nickname?: string;
78
- appKey?: string;
78
+ wsId?: string;
79
79
  groupId?: string;
80
80
  initResolutionType?: number;
81
81
  useWebCodec?: number;
82
82
  preferDecoder?: string;
83
83
  mobileWebMenuType?: number;
84
+ shareUrl?: string;
85
+ textInputEventPrompt?: number;
86
+ audioInput?: number;
87
+ audioInputAutoStart?: number;
88
+ videoInput?: number;
89
+ videoInputAutoStart?: number;
90
+ liveStreaming?: number;
91
+ mobileKeyboardType?: number;
84
92
  }
85
93
  declare type HostAppliGetUrlReturnParams = {
86
94
  appliId: string;
87
- appKey: string;
95
+ wsId: string;
88
96
  timestamp: string;
89
97
  signature: string;
90
98
  groupId?: string;
@@ -100,6 +108,7 @@ export default class API {
100
108
  private static GetTouchCtrMappingPath;
101
109
  private static GetAppliListPath;
102
110
  private static RegionListPath;
111
+ private static TestEnableWaitQueue;
103
112
  static HostAppliGetUrl(params: {
104
113
  appliId: string;
105
114
  playerMode?: number;
@@ -122,7 +131,7 @@ export default class API {
122
131
  groupId?: string;
123
132
  regionId?: string;
124
133
  targetServerIp?: string;
125
- appKey?: string;
134
+ wsId?: string;
126
135
  timestamp?: string;
127
136
  signature?: string;
128
137
  } | any): Promise<StartAppInfo>;
@@ -135,6 +144,9 @@ export default class API {
135
144
  static GetTouchCtrMapping(server: string, appliId?: string): Promise<unknown>;
136
145
  static GetAppliList(server: string, params: any): Promise<unknown>;
137
146
  static RegionList(server: string, params: any): Promise<unknown>;
147
+ static IsEnableWaitQueue(server: string, params: any): Promise<{
148
+ enableWaitQueue: boolean;
149
+ }>;
138
150
  static heartbeat(server: string, taskId: string): Promise<unknown>;
139
151
  static joinParam(params: any): string;
140
152
  }
@@ -194,7 +194,7 @@ export interface IAppliParams {
194
194
  enableRttIcon: boolean;
195
195
  enableSoundRequire: boolean;
196
196
  toastLevel: number;
197
- appKey: string;
197
+ wsId: string;
198
198
  groupId: string;
199
199
  textInputEventPrompt: boolean;
200
200
  audioInput: boolean;
@@ -266,7 +266,7 @@ export declare class AppliParams implements IAppliParams {
266
266
  enableRttIcon: boolean;
267
267
  enableSoundRequire: boolean;
268
268
  toastLevel: number;
269
- appKey: string;
269
+ wsId: string;
270
270
  groupId: string;
271
271
  textInputEventPrompt: boolean;
272
272
  audioInput: boolean;
@@ -3,6 +3,7 @@ import * as Input from '../protobuf/cloudlark';
3
3
  import { LarkSR } from '../larksr';
4
4
  import { MediaShareInterface, RTCMediaTrackBinding } from './media_share_interface';
5
5
  import { CloudLark } from '@/protobuf/cloudlark';
6
+ import WebCodec from './webcodec';
6
7
  export declare enum IceState {
7
8
  DISCONNECT = 1,
8
9
  BAD = 2,
@@ -119,7 +120,8 @@ export default class PeerConnection extends EventBase<WEBRTC_EVENT_TYPE, WebRTCE
119
120
  private _serverStatics;
120
121
  get currentAppSize(): CloudLark.IAppResize | null;
121
122
  private _currentAppSize;
122
- constructor(larksr: LarkSR, config: WebRTCConfig);
123
+ private webcodec;
124
+ constructor(larksr: LarkSR, config: WebRTCConfig, webcodec: WebCodec);
123
125
  create(streams?: MediaStream | undefined | null, config?: CloudLark.IRTCConfiguration | null | undefined): Promise<void>;
124
126
  createOffer(): void;
125
127
  close(): void;
@@ -21,17 +21,38 @@ export default class WebCodec extends EventBase<WEB_CODEC_EVENT_TYPE, WebCodecEv
21
21
  private larksr;
22
22
  private decoder;
23
23
  private codec;
24
- private width;
25
- private height;
24
+ get width(): number;
25
+ private _width;
26
+ get height(): number;
27
+ private _height;
26
28
  private canvas;
27
29
  private context;
28
30
  private frameData;
29
31
  private dataOffset;
30
32
  private firstFrame;
33
+ get inited(): boolean;
34
+ private _inited;
35
+ private decodeCost;
36
+ private decodeCosts;
37
+ private renderCost;
38
+ private renderCosts;
39
+ private firstPackage;
40
+ private packageCost;
41
+ private packageCosts;
42
+ private frameCount;
43
+ private dataCount;
44
+ private lastState;
31
45
  constructor(larksr: LarkSR);
32
46
  setCanvas(canvas: HTMLCanvasElement, context: CanvasRenderingContext2D): void;
33
47
  init(frame: CloudLark.IStreamVideoFrame): Promise<boolean | undefined>;
34
48
  onStreamVideoFrame(frame: CloudLark.IStreamVideoFrame): Promise<void>;
49
+ stats(): {
50
+ fps: number;
51
+ bitrateKbps: number;
52
+ package: number;
53
+ decode: number;
54
+ render: number;
55
+ };
35
56
  private checkConfig;
36
57
  private onFrameDecode;
37
58
  private onFrameError;
@@ -0,0 +1,36 @@
1
+ import { EventBase, LocalEvent } from '../event/event_base';
2
+ export declare enum WAITQUEUE_EVENT_TYPE {
3
+ OPEN = 0,
4
+ CLOSE = 1,
5
+ ERROR = 2,
6
+ TRY = 3,
7
+ STAUTS = 4
8
+ }
9
+ export interface WaitQueueEvent extends LocalEvent<WAITQUEUE_EVENT_TYPE> {
10
+ waitCount?: number;
11
+ }
12
+ export interface WaitQueueConfig {
13
+ serverAddress: string;
14
+ appliId: string;
15
+ groupId?: string;
16
+ targetServerIp?: string;
17
+ }
18
+ export default class WaitQueue extends EventBase<WAITQUEUE_EVENT_TYPE, WaitQueueEvent> {
19
+ private get wsServer();
20
+ private config;
21
+ private connection;
22
+ private keepAliveTimeout;
23
+ private queueId;
24
+ isOpen(): boolean;
25
+ constructor(config: WaitQueueConfig);
26
+ /**
27
+ *
28
+ */
29
+ connect(): Promise<this>;
30
+ /**
31
+ *
32
+ */
33
+ close(): Promise<void>;
34
+ private startKeepAlive;
35
+ private stopKeepAlive;
36
+ }
@@ -62,7 +62,7 @@ declare enum LarkSRClientEvent {
62
62
  // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
63
63
  // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
64
64
  // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
65
- // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
65
+ // 814=同一wsId下的应用运行数量达到最大值:{0},请稍后再试
66
66
  // 815=应用运行数量已达到最大授权并发数量,请稍后再试
67
67
  // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
68
68
  // 817=渲染资源不足,请稍后再试
@@ -500,6 +500,11 @@ interface ILarkSRConfig {
500
500
  * 是否使用 webcodec
501
501
  */
502
502
  useWebCodec?: boolean;
503
+ /**
504
+ * 是否启用等待队列
505
+ * 优先级高于后台配置
506
+ */
507
+ disableWaitQueue?: boolean;
503
508
  }
504
509
  declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
505
510
  /**
@@ -740,6 +745,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
740
745
  stopAerialview(): void;
741
746
  get syncClientViewport(): boolean;
742
747
  set syncClientViewport(sync: boolean);
748
+ private waitQueue;
743
749
  /**
744
750
  * LarkSR 客户端。所有操作和事件通过该类传递
745
751
  * @param config 本地配置,优先级最高
@@ -787,7 +793,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
787
793
  // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
788
794
  // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
789
795
  // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
790
- // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
796
+ // 814=同一wsId下的应用运行数量达到最大值:{0},请稍后再试
791
797
  // 815=应用运行数量已达到最大授权并发数量,请稍后再试
792
798
  // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
793
799
  // 817=渲染资源不足,请稍后再试
@@ -78,4 +78,5 @@ export default class Message extends LocalizationBase {
78
78
  get LK_NOTIFY_CLIENT_LOGOUT_TASKOWNER_LOGOUT(): string;
79
79
  get LK_APP_PROCESS_NOTIFI_APP_QUIT(): string;
80
80
  get LK_LOADING_TIMEOUT(): string;
81
+ get WAIT_QUEUE_COUNT(): string;
81
82
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "larksr_websdk",
3
- "version": "3.2.405",
4
- "description": "Larksr websdk. Easy to build a cloud render client for larksr system or ue4 pixelstreaming.docs: https://pingxingyun.github.io/webclient_sdk/",
3
+ "version": "3.3.102",
4
+ "description": "Larksr websdk. Easy to build a cloud render client for larksr system or ue4 pixelstreaming.docs: https://paraversetechnology.github.io/en/webclient_sdk/",
5
5
  "keywords": [
6
6
  "pingxingyun",
7
7
  "larksr",
package/types/api.d.ts CHANGED
@@ -7,7 +7,7 @@ export interface UTLockInfo {
7
7
  }
8
8
  export interface GetTaskResult {
9
9
  adminViewer: number;
10
- appKey: string;
10
+ wsId: string;
11
11
  appliId: string;
12
12
  appliType: number;
13
13
  city: string;
@@ -24,7 +24,6 @@ export interface GetTaskResult {
24
24
  reserveFlag: number;
25
25
  serverId: string;
26
26
  serverIp: string;
27
- shareUrl: string;
28
27
  startAt: string;
29
28
  startParam: string;
30
29
  startProcType: number;
@@ -33,12 +32,13 @@ export interface GetTaskResult {
33
32
  updateDate: string;
34
33
  useGamepad: number;
35
34
  wm: number;
36
- textInputEventPrompt: number;
37
- audioInput: number;
38
- audioInputAutoStart: number;
39
- videoInput: number;
40
- videoInputAutoStart: number;
41
- liveStreaming: number;
35
+ shareUrl?: string;
36
+ textInputEventPrompt?: number;
37
+ audioInput?: number;
38
+ audioInputAutoStart?: number;
39
+ videoInput?: number;
40
+ videoInputAutoStart?: number;
41
+ liveStreaming?: number;
42
42
  mobileKeyboardType?: number;
43
43
  }
44
44
  export interface StartAppInfo {
@@ -75,16 +75,24 @@ export interface StartAppInfo {
75
75
  authCode?: string;
76
76
  nickName?: string;
77
77
  nickname?: string;
78
- appKey?: string;
78
+ wsId?: string;
79
79
  groupId?: string;
80
80
  initResolutionType?: number;
81
81
  useWebCodec?: number;
82
82
  preferDecoder?: string;
83
83
  mobileWebMenuType?: number;
84
+ shareUrl?: string;
85
+ textInputEventPrompt?: number;
86
+ audioInput?: number;
87
+ audioInputAutoStart?: number;
88
+ videoInput?: number;
89
+ videoInputAutoStart?: number;
90
+ liveStreaming?: number;
91
+ mobileKeyboardType?: number;
84
92
  }
85
93
  declare type HostAppliGetUrlReturnParams = {
86
94
  appliId: string;
87
- appKey: string;
95
+ wsId: string;
88
96
  timestamp: string;
89
97
  signature: string;
90
98
  groupId?: string;
@@ -100,6 +108,7 @@ export default class API {
100
108
  private static GetTouchCtrMappingPath;
101
109
  private static GetAppliListPath;
102
110
  private static RegionListPath;
111
+ private static TestEnableWaitQueue;
103
112
  static HostAppliGetUrl(params: {
104
113
  appliId: string;
105
114
  playerMode?: number;
@@ -122,7 +131,7 @@ export default class API {
122
131
  groupId?: string;
123
132
  regionId?: string;
124
133
  targetServerIp?: string;
125
- appKey?: string;
134
+ wsId?: string;
126
135
  timestamp?: string;
127
136
  signature?: string;
128
137
  } | any): Promise<StartAppInfo>;
@@ -135,6 +144,9 @@ export default class API {
135
144
  static GetTouchCtrMapping(server: string, appliId?: string): Promise<unknown>;
136
145
  static GetAppliList(server: string, params: any): Promise<unknown>;
137
146
  static RegionList(server: string, params: any): Promise<unknown>;
147
+ static IsEnableWaitQueue(server: string, params: any): Promise<{
148
+ enableWaitQueue: boolean;
149
+ }>;
138
150
  static heartbeat(server: string, taskId: string): Promise<unknown>;
139
151
  static joinParam(params: any): string;
140
152
  }
@@ -194,7 +194,7 @@ export interface IAppliParams {
194
194
  enableRttIcon: boolean;
195
195
  enableSoundRequire: boolean;
196
196
  toastLevel: number;
197
- appKey: string;
197
+ wsId: string;
198
198
  groupId: string;
199
199
  textInputEventPrompt: boolean;
200
200
  audioInput: boolean;
@@ -266,7 +266,7 @@ export declare class AppliParams implements IAppliParams {
266
266
  enableRttIcon: boolean;
267
267
  enableSoundRequire: boolean;
268
268
  toastLevel: number;
269
- appKey: string;
269
+ wsId: string;
270
270
  groupId: string;
271
271
  textInputEventPrompt: boolean;
272
272
  audioInput: boolean;
@@ -3,6 +3,7 @@ import * as Input from '../protobuf/cloudlark';
3
3
  import { LarkSR } from '../larksr';
4
4
  import { MediaShareInterface, RTCMediaTrackBinding } from './media_share_interface';
5
5
  import { CloudLark } from '@/protobuf/cloudlark';
6
+ import WebCodec from './webcodec';
6
7
  export declare enum IceState {
7
8
  DISCONNECT = 1,
8
9
  BAD = 2,
@@ -119,7 +120,8 @@ export default class PeerConnection extends EventBase<WEBRTC_EVENT_TYPE, WebRTCE
119
120
  private _serverStatics;
120
121
  get currentAppSize(): CloudLark.IAppResize | null;
121
122
  private _currentAppSize;
122
- constructor(larksr: LarkSR, config: WebRTCConfig);
123
+ private webcodec;
124
+ constructor(larksr: LarkSR, config: WebRTCConfig, webcodec: WebCodec);
123
125
  create(streams?: MediaStream | undefined | null, config?: CloudLark.IRTCConfiguration | null | undefined): Promise<void>;
124
126
  createOffer(): void;
125
127
  close(): void;
@@ -21,17 +21,38 @@ export default class WebCodec extends EventBase<WEB_CODEC_EVENT_TYPE, WebCodecEv
21
21
  private larksr;
22
22
  private decoder;
23
23
  private codec;
24
- private width;
25
- private height;
24
+ get width(): number;
25
+ private _width;
26
+ get height(): number;
27
+ private _height;
26
28
  private canvas;
27
29
  private context;
28
30
  private frameData;
29
31
  private dataOffset;
30
32
  private firstFrame;
33
+ get inited(): boolean;
34
+ private _inited;
35
+ private decodeCost;
36
+ private decodeCosts;
37
+ private renderCost;
38
+ private renderCosts;
39
+ private firstPackage;
40
+ private packageCost;
41
+ private packageCosts;
42
+ private frameCount;
43
+ private dataCount;
44
+ private lastState;
31
45
  constructor(larksr: LarkSR);
32
46
  setCanvas(canvas: HTMLCanvasElement, context: CanvasRenderingContext2D): void;
33
47
  init(frame: CloudLark.IStreamVideoFrame): Promise<boolean | undefined>;
34
48
  onStreamVideoFrame(frame: CloudLark.IStreamVideoFrame): Promise<void>;
49
+ stats(): {
50
+ fps: number;
51
+ bitrateKbps: number;
52
+ package: number;
53
+ decode: number;
54
+ render: number;
55
+ };
35
56
  private checkConfig;
36
57
  private onFrameDecode;
37
58
  private onFrameError;
@@ -0,0 +1,36 @@
1
+ import { EventBase, LocalEvent } from '../event/event_base';
2
+ export declare enum WAITQUEUE_EVENT_TYPE {
3
+ OPEN = 0,
4
+ CLOSE = 1,
5
+ ERROR = 2,
6
+ TRY = 3,
7
+ STAUTS = 4
8
+ }
9
+ export interface WaitQueueEvent extends LocalEvent<WAITQUEUE_EVENT_TYPE> {
10
+ waitCount?: number;
11
+ }
12
+ export interface WaitQueueConfig {
13
+ serverAddress: string;
14
+ appliId: string;
15
+ groupId?: string;
16
+ targetServerIp?: string;
17
+ }
18
+ export default class WaitQueue extends EventBase<WAITQUEUE_EVENT_TYPE, WaitQueueEvent> {
19
+ private get wsServer();
20
+ private config;
21
+ private connection;
22
+ private keepAliveTimeout;
23
+ private queueId;
24
+ isOpen(): boolean;
25
+ constructor(config: WaitQueueConfig);
26
+ /**
27
+ *
28
+ */
29
+ connect(): Promise<this>;
30
+ /**
31
+ *
32
+ */
33
+ close(): Promise<void>;
34
+ private startKeepAlive;
35
+ private stopKeepAlive;
36
+ }
package/types/larksr.d.ts CHANGED
@@ -62,7 +62,7 @@ declare enum LarkSRClientEvent {
62
62
  // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
63
63
  // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
64
64
  // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
65
- // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
65
+ // 814=同一wsId下的应用运行数量达到最大值:{0},请稍后再试
66
66
  // 815=应用运行数量已达到最大授权并发数量,请稍后再试
67
67
  // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
68
68
  // 817=渲染资源不足,请稍后再试
@@ -500,6 +500,11 @@ interface ILarkSRConfig {
500
500
  * 是否使用 webcodec
501
501
  */
502
502
  useWebCodec?: boolean;
503
+ /**
504
+ * 是否启用等待队列
505
+ * 优先级高于后台配置
506
+ */
507
+ disableWaitQueue?: boolean;
503
508
  }
504
509
  declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
505
510
  /**
@@ -740,6 +745,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
740
745
  stopAerialview(): void;
741
746
  get syncClientViewport(): boolean;
742
747
  set syncClientViewport(sync: boolean);
748
+ private waitQueue;
743
749
  /**
744
750
  * LarkSR 客户端。所有操作和事件通过该类传递
745
751
  * @param config 本地配置,优先级最高
@@ -787,7 +793,7 @@ declare class LarkSR extends EventBase<LarkSRClientEvent, LarkSREvent> {
787
793
  // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
788
794
  // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
789
795
  // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
790
- // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
796
+ // 814=同一wsId下的应用运行数量达到最大值:{0},请稍后再试
791
797
  // 815=应用运行数量已达到最大授权并发数量,请稍后再试
792
798
  // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
793
799
  // 817=渲染资源不足,请稍后再试
@@ -78,4 +78,5 @@ export default class Message extends LocalizationBase {
78
78
  get LK_NOTIFY_CLIENT_LOGOUT_TASKOWNER_LOGOUT(): string;
79
79
  get LK_APP_PROCESS_NOTIFI_APP_QUIT(): string;
80
80
  get LK_LOADING_TIMEOUT(): string;
81
+ get WAIT_QUEUE_COUNT(): string;
81
82
  }