@vmosedge/web-sdk 1.2.6 → 1.3.0-beta.1
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.
- package/README.md +64 -31
- package/dist/index.cjs.js +4 -4
- package/dist/index.es.js +4 -4
- package/dist/index.global.js +4 -4
- package/dist/types/index.d.ts +28 -45
- package/package.json +32 -13
package/README.md
CHANGED
|
@@ -1,32 +1,33 @@
|
|
|
1
|
-
# Vmos Edge Web SDK
|
|
2
|
-
|
|
3
|
-
用于在 Web 端实现高性能 Android 设备远程控制的 SDK。
|
|
4
|
-
|
|
5
|
-
## 特性
|
|
6
|
-
|
|
7
|
-
* WebCodecs + WebGL 高性能低延迟视频渲染
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
# Vmos Edge Web SDK
|
|
2
|
+
|
|
3
|
+
用于在 Web 端实现高性能 Android 设备远程控制的 SDK。
|
|
4
|
+
|
|
5
|
+
## 特性
|
|
6
|
+
|
|
7
|
+
* WebCodecs + WebGL 高性能低延迟视频渲染
|
|
8
|
+
* TinyH264 WASM 软解码(支持 HTTP 环境)
|
|
9
|
+
* 完整的触摸事件支持(多指触控)
|
|
10
|
+
* 设备控制(按键、文本输入、剪贴板)
|
|
11
|
+
* 群控功能支持
|
|
12
|
+
|
|
13
|
+
## 安装
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @vmosedge/web-sdk
|
|
17
|
+
# 或
|
|
18
|
+
pnpm add @vmosedge/web-sdk
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## 使用
|
|
22
|
+
|
|
23
|
+
详细使用说明请参考 [SDK 文档](https://help.vmosedge.com/zh/sdk/web/)。
|
|
24
|
+
|
|
25
|
+
## 快速开始
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
import { VmosEdgeClient, VmosEdgeClientEvents } from "@vmosedge/web-sdk";
|
|
29
|
+
|
|
30
|
+
// 创建客户端实例(HTTPS 环境,默认 WebCodecs 硬件加速)
|
|
30
31
|
const client = new VmosEdgeClient({
|
|
31
32
|
container: document.getElementById("container")!,
|
|
32
33
|
mediaType: 2, // 1=仅视频,2=音视频
|
|
@@ -40,7 +41,21 @@ const client = new VmosEdgeClient({
|
|
|
40
41
|
},
|
|
41
42
|
},
|
|
42
43
|
});
|
|
43
|
-
|
|
44
|
+
|
|
45
|
+
// HTTP 环境使用 TinyH264 WASM 软解码
|
|
46
|
+
const httpClient = new VmosEdgeClient({
|
|
47
|
+
container: document.getElementById("container")!,
|
|
48
|
+
decoderType: "tinyh264", // 支持 HTTP,仅 H.264 Baseline,无音频
|
|
49
|
+
config: {
|
|
50
|
+
ip: "192.168.1.100",
|
|
51
|
+
deviceId: "device_001",
|
|
52
|
+
ports: {
|
|
53
|
+
video: 8000,
|
|
54
|
+
touch: 8002,
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
|
|
44
59
|
// 监听连接成功事件
|
|
45
60
|
client.on(VmosEdgeClientEvents.STARTED, () => {
|
|
46
61
|
console.log("设备连接成功!");
|
|
@@ -58,4 +73,22 @@ client.start();
|
|
|
58
73
|
await client.enableAudio();
|
|
59
74
|
client.disableAudio();
|
|
60
75
|
```
|
|
61
|
-
|
|
76
|
+
|
|
77
|
+
## 配置参数
|
|
78
|
+
|
|
79
|
+
| 参数 | 类型 | 默认值 | 说明 |
|
|
80
|
+
|------|------|--------|------|
|
|
81
|
+
| `config` | `VmosEdgeClientConfig` | **必填** | 设备连接配置(IP、端口等) |
|
|
82
|
+
| `container` | `HTMLElement` | **必填** | 视频渲染容器元素 |
|
|
83
|
+
| `decoderType` | `"webcodecs" \| "tinyh264"` | `"webcodecs"` | 视频解码器类型。`"webcodecs"` 需要 HTTPS,硬件加速;`"tinyh264"` 支持 HTTP,WASM 软解码,仅 H.264 Baseline Profile Level 4,无音频 |
|
|
84
|
+
| `mediaType` | `1 \| 2` | `1` | 媒体模式:1=仅视频,2=音视频 |
|
|
85
|
+
| `retryCount` | `number` | `0` | 连接失败重试次数 |
|
|
86
|
+
| `retryInterval` | `number` | `1000` | 重试间隔(毫秒) |
|
|
87
|
+
| `videoCodecPreference` | `string` | `"no-preference"` | 视频编解码器偏好:`"no-preference"` / `"prefer-hardware"` / `"prefer-software"` |
|
|
88
|
+
| `renderPreference` | `string` | `"default"` | 渲染性能偏好:`"default"` / `"high-performance"` / `"low-power"` |
|
|
89
|
+
| `isGroupControl` | `boolean` | `false` | 是否开启群控 |
|
|
90
|
+
| `hoverMoveKeep` | `boolean` | `false` | move 事件是否保留 hover 状态 |
|
|
91
|
+
| `scrollSpeedRatio` | `number` | `200` | 滚轮灵敏度(0.001 ~ 800) |
|
|
92
|
+
| `enableRightClickBack` | `boolean` | `true` | 右键是否触发返回 |
|
|
93
|
+
| `enableMiddleClickHome` | `boolean` | `true` | 中键是否触发回到桌面 |
|
|
94
|
+
|