larksr_websdk 3.2.402 → 3.2.403

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 (55) hide show
  1. package/dist/doc/en/config.md +228 -0
  2. package/dist/doc/en/dev.md +84 -0
  3. package/dist/doc/en/event_codes.md +286 -0
  4. package/dist/doc/en/events.md +229 -0
  5. package/dist/doc/en/functions.md +603 -0
  6. package/dist/doc/en/index.md +115 -0
  7. package/dist/doc/en/member_variables.md +407 -0
  8. package/dist/doc/en/multi_media_3_2_401.md +84 -0
  9. package/dist/doc/en/sdkid_encryption.md +40 -0
  10. package/dist/doc/en/update.md +462 -0
  11. package/dist/doc/zh_CN/config.md +243 -0
  12. package/dist/doc/zh_CN/event_codes.md +286 -0
  13. package/dist/doc/zh_CN/events.md +229 -0
  14. package/dist/doc/zh_CN/functions.md +658 -0
  15. package/dist/doc/zh_CN/index.md +84 -0
  16. package/dist/doc/zh_CN/member_variables.md +431 -0
  17. package/dist/doc/zh_CN/multi_media_3_2_401.md +84 -0
  18. package/dist/doc/zh_CN/sdkid_encryption.md +40 -0
  19. package/dist/doc/zh_CN/update.md +579 -0
  20. package/dist/larksr-web-sdk.min.js +1 -1
  21. package/dist/types/api.d.ts +1 -0
  22. package/dist/types/appli_params.d.ts +9 -6
  23. package/dist/types/config.d.ts +0 -1
  24. package/dist/types/lark/Worker.d.ts +3 -0
  25. package/dist/types/lark/application.d.ts +6 -1
  26. package/dist/types/lark/custom.d.ts +7 -0
  27. package/dist/types/lark/peer_connection.d.ts +2 -1
  28. package/dist/types/lark/webcodec.d.ts +40 -0
  29. package/dist/types/lark/webcodecs.generated.d.ts +417 -0
  30. package/dist/types/lark/websocket_channel.d.ts +1 -0
  31. package/dist/types/lark/websocket_proxy.d.ts +2 -0
  32. package/dist/types/larksr.d.ts +19 -7
  33. package/dist/types/protobuf/cloudlark.d.ts +9674 -0
  34. package/dist/types/screen_state.d.ts +2 -2
  35. package/dist/types/utils/ios-inner-height.d.ts +4 -0
  36. package/dist/types/utils/lock_pointer.d.ts +2 -1
  37. package/dist/types/utils/scale_mode.d.ts +19 -0
  38. package/package.json +72 -71
  39. package/types/api.d.ts +1 -0
  40. package/types/appli_params.d.ts +9 -6
  41. package/types/config.d.ts +0 -1
  42. package/types/lark/Worker.d.ts +3 -0
  43. package/types/lark/application.d.ts +6 -1
  44. package/types/lark/custom.d.ts +7 -0
  45. package/types/lark/peer_connection.d.ts +2 -1
  46. package/types/lark/webcodec.d.ts +40 -0
  47. package/types/lark/webcodecs.generated.d.ts +417 -0
  48. package/types/lark/websocket_channel.d.ts +1 -0
  49. package/types/lark/websocket_proxy.d.ts +2 -0
  50. package/types/larksr.d.ts +19 -7
  51. package/types/protobuf/cloudlark.d.ts +9674 -0
  52. package/types/screen_state.d.ts +2 -2
  53. package/types/utils/ios-inner-height.d.ts +4 -0
  54. package/types/utils/lock_pointer.d.ts +2 -1
  55. package/types/utils/scale_mode.d.ts +19 -0
@@ -101,8 +101,8 @@ export default class ScreenState extends EventBase<SCREEN_EVENT_TYPE, ScreenEven
101
101
  scaleX: number;
102
102
  scaleY: number;
103
103
  };
104
- get initCursorMode(): boolean;
105
- set initCursorMode(mode: boolean);
104
+ get initCursorMode(): number;
105
+ set initCursorMode(mode: number);
106
106
  private _initCursorMode;
107
107
  get isMobile(): boolean;
108
108
  private _isMobile;
@@ -0,0 +1,4 @@
1
+ declare module "ios-inner-height" {
2
+ function innerHeight(): number;
3
+ export = innerHeight;
4
+ }
@@ -1,7 +1,8 @@
1
1
  import { EventBase, LocalEvent } from '../event/event_base';
2
2
  export declare const enum LockPointerEventType {
3
3
  LockPointChange = 0,
4
- LockPointFailed = 1
4
+ LockPointFailed = 1,
5
+ LockPointNotSupport = 2
5
6
  }
6
7
  export interface LockPointerEvent extends LocalEvent<LockPointerEventType> {
7
8
  isLockPointer: boolean;
@@ -19,6 +19,25 @@ export default class ScaleMode {
19
19
  * 拉伸模式,完全填充屏幕但不保留宽高比
20
20
  */
21
21
  static FILL_STRETCH: string;
22
+ /**
23
+ * 如果太大出现滚动条
24
+ */
25
+ static SCROLL_AUTO: string;
26
+ /**
27
+ * 水平方向出现滚动条,垂直方向填充满
28
+ */
29
+ static SCROLL_X_FILL_Y: string;
30
+ /**
31
+ * 水平方向出现滚动条,垂直方向不放大,不出现滚动条
32
+ */
33
+ static SCROLL_X_CONTAIN_Y: string;
34
+ /**
35
+ * 水平方向出现滚动条,垂直方向不放大
36
+ */
37
+ /**
38
+ * 水平方向填满,垂直方向出现滚动条
39
+ */
40
+ static SCROLL_Y_FILL_X: string;
22
41
  /**
23
42
  * offset 控制条的高度
24
43
  */
package/package.json CHANGED
@@ -1,71 +1,72 @@
1
- {
2
- "name": "larksr_websdk",
3
- "version": "3.2.402",
4
- "description": "Larksr websdk. Easy to build a cloud render client for larksr system or ue4 pixelstreaming.docs: https://pingxingyun.github.io/webclient_sdk/",
5
- "keywords": [
6
- "pingxingyun",
7
- "larksr",
8
- "cloudrendeing",
9
- "webrtc",
10
- "cloudxr",
11
- "pixelstreaming"
12
- ],
13
- "main": "./dist/larksr-web-sdk.min.js",
14
- "types": "./types/index.d.ts",
15
- "files": [
16
- "dist",
17
- "types",
18
- "doc,"
19
- ],
20
- "scripts": {
21
- "test": "echo \"Error: no test specified\" && exit 1",
22
- "dev": "webpack-dev-server --config webpack.config.dev.js",
23
- "build": "webpack --config webpack.config.js",
24
- "build:typings": "tsc --build tsconfig.type.json",
25
- "copy-dts": "copyfiles -u 1 \"src/**/*.d.ts\" dist/types/",
26
- "dist": "webpack --config webpack.config.js && copyfiles -u 1 \"src/**/*.d.ts\" ./types/ && copyfiles -u 1 \"doc/**/*\" dist/doc/ && copyfiles -u 1 \"types/**/*.d.ts\" ./dist/types/ && copyfiles -u 1 \"dist/*\" ./sample-plain-html/source/dist/"
27
- },
28
- "author": "fcx@pingxingyun.com",
29
- "license": "ISC",
30
- "dependencies": {
31
- "axios": "^0.24.0",
32
- "bowser": "^2.11.0",
33
- "core-js": "^3.18.1",
34
- "crypto-js": "^4.1.1",
35
- "ios-inner-height": "^1.1.1",
36
- "protobufjs": "^6.11.2",
37
- "webrtc-adapter": "^8.1.0",
38
- "weixin-js-sdk": "^1.6.0"
39
- },
40
- "devDependencies": {
41
- "@babel/core": "^7.15.5",
42
- "@tsconfig/svelte": "^2.0.1",
43
- "@types/crypto-js": "^4.0.2",
44
- "@types/webrtc": "^0.0.30",
45
- "babel-loader": "^8.2.2",
46
- "clean-webpack-plugin": "^4.0.0",
47
- "css-loader": "^6.3.0",
48
- "fork-ts-checker-webpack-plugin": "^6.3.3",
49
- "html-loader": "^3.0.1",
50
- "html-webpack-plugin": "^5.3.2",
51
- "less-loader": "^10.0.1",
52
- "react": "^17.0.2",
53
- "react-dom": "^17.0.2",
54
- "sass": "^1.43.4",
55
- "scss": "^0.2.4",
56
- "style-loader": "^3.3.0",
57
- "svelte": "^3.44.1",
58
- "svelte-check": "^2.2.10",
59
- "svelte-loader": "^3.1.2",
60
- "svelte-preprocess": "^4.9.8",
61
- "terser-webpack-plugin": "^5.2.5",
62
- "ts-loader": "^9.2.6",
63
- "typescript": "^4.4.3",
64
- "typescript-svelte-plugin": "^0.2.5",
65
- "url-loader": "^4.1.1",
66
- "vconsole": "^3.12.1",
67
- "webpack": "^5.54.0",
68
- "webpack-cli": "^4.8.0",
69
- "webpack-dev-server": "^4.3.0"
70
- }
71
- }
1
+ {
2
+ "name": "larksr_websdk",
3
+ "version": "3.2.403",
4
+ "description": "Larksr websdk. Easy to build a cloud render client for larksr system or ue4 pixelstreaming.docs: https://pingxingyun.github.io/webclient_sdk/",
5
+ "keywords": [
6
+ "pingxingyun",
7
+ "larksr",
8
+ "cloudrendeing",
9
+ "webrtc",
10
+ "cloudxr",
11
+ "pixelstreaming"
12
+ ],
13
+ "main": "./dist/larksr-web-sdk.min.js",
14
+ "types": "./types/index.d.ts",
15
+ "files": [
16
+ "dist",
17
+ "types",
18
+ "doc,"
19
+ ],
20
+ "scripts": {
21
+ "test": "echo \"Error: no test specified\" && exit 1",
22
+ "dev": "webpack-dev-server --config webpack.config.dev.js",
23
+ "build": "webpack --config webpack.config.js",
24
+ "build:typings": "tsc --build tsconfig.type.json",
25
+ "copy-dts": "copyfiles -u 1 \"src/**/*.d.ts\" dist/types/",
26
+ "dist": "webpack --config webpack.config.js && copyfiles -u 1 \"src/**/*.d.ts\" ./types/ && copyfiles -u 1 \"doc/**/*\" dist/doc/ && copyfiles -u 1 \"types/**/*.d.ts\" ./dist/types/ && copyfiles -u 1 \"dist/*\" ./sample-plain-html/source/dist/"
27
+ },
28
+ "author": "fcx@pingxingyun.com",
29
+ "license": "ISC",
30
+ "dependencies": {
31
+ "axios": "^0.24.0",
32
+ "bowser": "^2.11.0",
33
+ "core-js": "^3.18.1",
34
+ "crypto-js": "^4.1.1",
35
+ "ios-inner-height": "^1.1.1",
36
+ "protobufjs": "^6.11.2",
37
+ "webrtc-adapter": "^8.1.0",
38
+ "weixin-js-sdk": "^1.6.0"
39
+ },
40
+ "devDependencies": {
41
+ "@babel/core": "^7.15.5",
42
+ "@tsconfig/svelte": "^2.0.1",
43
+ "@types/crypto-js": "^4.0.2",
44
+ "@types/dom-webcodecs": "^0.1.11",
45
+ "@types/webrtc": "^0.0.30",
46
+ "babel-loader": "^8.2.2",
47
+ "clean-webpack-plugin": "^4.0.0",
48
+ "css-loader": "^6.3.0",
49
+ "fork-ts-checker-webpack-plugin": "^6.3.3",
50
+ "html-loader": "^3.0.1",
51
+ "html-webpack-plugin": "^5.3.2",
52
+ "less-loader": "^10.0.1",
53
+ "react": "^17.0.2",
54
+ "react-dom": "^17.0.2",
55
+ "sass": "^1.43.4",
56
+ "scss": "^0.2.4",
57
+ "style-loader": "^3.3.0",
58
+ "svelte": "^3.44.1",
59
+ "svelte-check": "^2.2.10",
60
+ "svelte-loader": "^3.1.2",
61
+ "svelte-preprocess": "^4.9.8",
62
+ "terser-webpack-plugin": "^5.2.5",
63
+ "ts-loader": "^9.2.6",
64
+ "typescript": "^4.4.3",
65
+ "typescript-svelte-plugin": "^0.2.5",
66
+ "url-loader": "^4.1.1",
67
+ "vconsole": "^3.12.1",
68
+ "webpack": "^5.54.0",
69
+ "webpack-cli": "^4.8.0",
70
+ "webpack-dev-server": "^4.3.0"
71
+ }
72
+ }
package/types/api.d.ts CHANGED
@@ -132,6 +132,7 @@ export default class API {
132
132
  static GetTouchCtrMapping(server: string, appliId?: string): Promise<unknown>;
133
133
  static GetAppliList(server: string, params: any): Promise<unknown>;
134
134
  static RegionList(server: string, params: any): Promise<unknown>;
135
+ static heartbeat(server: string, taskId: string): Promise<unknown>;
135
136
  static joinParam(params: any): string;
136
137
  }
137
138
  export {};
@@ -98,10 +98,11 @@ export interface IAppliParams {
98
98
  language: string;
99
99
  /**
100
100
  * 初始的鼠标锁定模式
101
- * false:非锁定模式
102
- * true:锁定模式
101
+ * 0:自动判断模式
102
+ * 1:锁定模式
103
+ * 2: 非锁定模式
103
104
  */
104
- initCursorMode: boolean;
105
+ initCursorMode: number;
105
106
  /**
106
107
  * 背景颜色
107
108
  */
@@ -181,7 +182,7 @@ export interface IAppliParams {
181
182
  /**
182
183
  * 触摸操作对应的操作方式,触摸屏还是鼠标
183
184
  */
184
- touchOperateMode: 'touchScreen' | 'mouse';
185
+ touchOperateMode: 'touchScreen' | 'mouse' | 'mix';
185
186
  /**
186
187
  * appid
187
188
  */
@@ -204,6 +205,7 @@ export interface IAppliParams {
204
205
  useSeparateMediaSharePeer: boolean;
205
206
  mobileKeyboardType: number;
206
207
  initResolutionType: number;
208
+ useWebcodec: boolean;
207
209
  }
208
210
  export declare enum AppliType {
209
211
  DESKTOP = 1,
@@ -240,7 +242,7 @@ export declare class AppliParams implements IAppliParams {
240
242
  frameRate: number;
241
243
  network: 'local' | 'public';
242
244
  language: string;
243
- initCursorMode: boolean;
245
+ initCursorMode: number;
244
246
  bgColor: string;
245
247
  fullScreenMode: number;
246
248
  mobileFullScreenMode: number;
@@ -257,7 +259,7 @@ export declare class AppliParams implements IAppliParams {
257
259
  mouseZoomDirection: number;
258
260
  showPlayerList: boolean;
259
261
  preferDecoder: 'auto' | 'vp8' | 'vp9' | 'h264' | 'h265' | 'hevc' | 'av1' | 'av1x';
260
- touchOperateMode: 'touchScreen' | 'mouse';
262
+ touchOperateMode: 'touchScreen' | 'mouse' | 'mix';
261
263
  appliId: string;
262
264
  syncLocalToCloudClipboard: boolean;
263
265
  enableRttIcon: boolean;
@@ -274,6 +276,7 @@ export declare class AppliParams implements IAppliParams {
274
276
  useSeparateMediaSharePeer: boolean;
275
277
  mobileKeyboardType: number;
276
278
  initResolutionType: number;
279
+ useWebcodec: boolean;
277
280
  static copyAndCreate(params?: IAppliParams): AppliParams;
278
281
  static setUpWithSDKConfig(params: IAppliParams, config: ILarkSRConfig): AppliParams;
279
282
  }
package/types/config.d.ts CHANGED
@@ -55,5 +55,4 @@ export default class Config {
55
55
  */
56
56
  static VirtualRackerScale: number;
57
57
  static ErrChromeAndroidVersion: string[];
58
- static DownloadChromium: string;
59
58
  }
@@ -0,0 +1,3 @@
1
+ declare const ctx: Worker;
2
+ declare var fading: boolean;
3
+ declare var interval: any;
@@ -6,6 +6,7 @@ import { LarkSR } from '../larksr';
6
6
  import PixelStreamingWebsocketChannel from './test_pixel_streaming';
7
7
  import { RECORDER_STATE } from './recoder';
8
8
  import PeerConnectionMediaShare from './peer_connection_media_share';
9
+ import WebCodec from './webcodec';
9
10
  export declare enum APP_STATE {
10
11
  BEFORE_CREATE = 0,
11
12
  INITED = 1,
@@ -82,6 +83,8 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
82
83
  private recoder;
83
84
  private rtcConfig;
84
85
  get currentAppSize(): Msg.CloudLark.IAppResize | null | undefined;
86
+ get webcodecDecoder(): WebCodec;
87
+ private _webcodecDecoder;
85
88
  constructor(larksr: LarkSR);
86
89
  init(): void;
87
90
  initSharePc(): void;
@@ -118,11 +121,12 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
118
121
  private onRecoderData;
119
122
  start(): Promise<void>;
120
123
  connect(): Promise<PixelStreamingWebsocketChannel> | Promise<WebsocketProxy> | Promise<WebSocektChannel> | undefined;
124
+ sendKeepAlive(): void | undefined;
121
125
  disConnect(): void;
122
126
  closeRtc(): void;
123
127
  versionCheck(): void;
124
128
  task(): void;
125
- startSteam(): void;
129
+ startSteam(): Promise<void>;
126
130
  startMonitorSteam(): void;
127
131
  restart(): void;
128
132
  restartApp(): void;
@@ -157,6 +161,7 @@ export default class Application extends EventBase<APP_EVENT_TYPE, AppEvent> {
157
161
  retryPeerconnection(): void;
158
162
  private onAerialViewStatus;
159
163
  private onAerialViewScreen;
164
+ private onVideoFrame;
160
165
  private onShareMediaError;
161
166
  private onShareMediaInfo;
162
167
  private onShareMediaOffer;
@@ -0,0 +1,7 @@
1
+ declare module "worker-loader!*" {
2
+ class WebpackWorker extends Worker {
3
+ constructor();
4
+ }
5
+
6
+ export = WebpackWorker;
7
+ }
@@ -36,7 +36,8 @@ export declare enum WEBRTC_EVENT_TYPE {
36
36
  RTMP_STREAM_ERROR = 23,
37
37
  INFO = 24,
38
38
  AerialViewStatus = 25,
39
- AerialViewScreen = 26
39
+ AerialViewScreen = 26,
40
+ VideoFrame = 27
40
41
  }
41
42
  export interface GoogleBitRate {
42
43
  start: number;
@@ -0,0 +1,40 @@
1
+ import { LocalEvent } from "@/event/event_base";
2
+ import { EventBase, LarkSR } from "@/larksr";
3
+ import { CloudLark } from '@/protobuf/cloudlark';
4
+ export declare enum WebCodecType {
5
+ WebCodecTypeH264 = "h264",
6
+ WebCodecTypeH265 = "h265",
7
+ WebCodecTypeNone = "none"
8
+ }
9
+ export declare enum WEB_CODEC_EVENT_TYPE {
10
+ PLAYED = 0
11
+ }
12
+ export interface WebCodecEvent extends LocalEvent<WEB_CODEC_EVENT_TYPE> {
13
+ data?: any;
14
+ }
15
+ export default class WebCodec extends EventBase<WEB_CODEC_EVENT_TYPE, WebCodecEvent> {
16
+ static AVC_High_PROFILE: string;
17
+ static HEVC_MAIN_PROFILE: string;
18
+ static checkSupport(codec: WebCodecType, width?: number, height?: number): Promise<boolean>;
19
+ static toWebCodecType(cloudType: CloudLark.StreamVideoFrame.Codec | null | undefined): WebCodecType;
20
+ static getProfileName(codec: WebCodecType): string;
21
+ private larksr;
22
+ private decoder;
23
+ private codec;
24
+ private width;
25
+ private height;
26
+ private canvas;
27
+ private context;
28
+ private frameData;
29
+ private dataOffset;
30
+ private firstFrame;
31
+ constructor(larksr: LarkSR);
32
+ setCanvas(canvas: HTMLCanvasElement, context: CanvasRenderingContext2D): void;
33
+ init(frame: CloudLark.IStreamVideoFrame): Promise<boolean | undefined>;
34
+ onStreamVideoFrame(frame: CloudLark.IStreamVideoFrame): Promise<void>;
35
+ private checkConfig;
36
+ private onFrameDecode;
37
+ private onFrameError;
38
+ private $emit;
39
+ private createAppEvent;
40
+ }