ezuikit-flv 2.0.3 → 2.1.0
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/CHANGELOG.md +20 -7
- package/README.md +29 -25
- package/decoder.js +3 -22
- package/index.js +51 -16
- package/package.json +6 -2
- package/style.css +28 -12
- package/types/constant/index.d.ts +9 -45
- package/types/index.d.ts +51 -64
- package/types/locales/en_US.d.ts +1 -0
- package/types/locales/zh_CN.d.ts +1 -0
- package/types/player/hard-player/videoLoader.d.ts +0 -1
- package/types/player/interface.d.ts +14 -1
- package/types/recorder/FlvParseChunk.d.ts +59 -0
- package/types/typedefs.d.ts +5 -3
- package/types/utils/index.d.ts +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,22 @@
|
|
|
1
|
+
## v2.1.0 (2026-01-22)
|
|
2
|
+
|
|
3
|
+
### Feat
|
|
4
|
+
|
|
5
|
+
- 升级主题,支持双击全屏等
|
|
6
|
+
|
|
7
|
+
- 支持码流本地录制成 MP4 (音频仅支持 AAC), `startRecord` 开始录制, `stopRecord` 停止录制 (录制的是接收到的原始码流)
|
|
8
|
+
|
|
9
|
+
- api `setScaleMode` 改成同步操作
|
|
10
|
+
|
|
11
|
+
- 移除 `setRotate` api
|
|
12
|
+
|
|
13
|
+
- 新增 `mutedShowAutoReload` 静音播放窗口隐藏后再展示自动重新加载流, 默认为 `true`
|
|
14
|
+
|
|
1
15
|
## v2.0.3 (2025-11-14)
|
|
2
16
|
|
|
3
17
|
### Feat
|
|
4
18
|
|
|
5
|
-
-
|
|
19
|
+
- 非萤石平台的播放地址不再追加 `vc=3` 参数
|
|
6
20
|
|
|
7
21
|
### Fixed
|
|
8
22
|
|
|
@@ -20,21 +34,20 @@
|
|
|
20
34
|
|
|
21
35
|
- 修复缺失的依赖项文件
|
|
22
36
|
|
|
23
|
-
## v2.0.0
|
|
37
|
+
## v2.0.0
|
|
24
38
|
|
|
25
39
|
### Feat
|
|
26
40
|
|
|
27
41
|
- 新增主题 UI
|
|
42
|
+
- 新的全屏 api `fullscreen` 和退出全屏 `exitFullscreen`
|
|
43
|
+
- `openSound` 和 `closeSound` 不再推荐, 使用`player.current.volume = 0.8` 和 `player.current.muted = true` 代替
|
|
28
44
|
|
|
29
45
|
## v1.0.3
|
|
30
46
|
|
|
31
47
|
### Fixed
|
|
32
48
|
|
|
33
49
|
- 修复全屏冲突
|
|
34
|
-
|
|
35
|
-
- 修复实时追帧导致 MSE 异常
|
|
36
|
-
|
|
37
|
-
- 修复软解在浏览器窗口隐藏后内存泄漏问题
|
|
50
|
+
- 支持截图
|
|
38
51
|
|
|
39
52
|
## v1.0.2 (2024-07-15)
|
|
40
53
|
|
|
@@ -56,6 +69,6 @@
|
|
|
56
69
|
|
|
57
70
|
- 支持 flv h264/h265 编码的流播放
|
|
58
71
|
|
|
59
|
-
- 支持 音频ACC 播放
|
|
72
|
+
- 支持 音频 ACC 播放
|
|
60
73
|
|
|
61
74
|
- 支持 2k 分辨率
|
package/README.md
CHANGED
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
 
|
|
4
4
|
|
|
5
|
-
ezuikit-flv 是一款开源的纯H5直播流播放器,通过Emscripten将音视频解码库编译成js(wasm) 运行于浏览器之中。兼容几乎所有浏览器,可以运行在PC、手机、微信中,无需额外安装插件。
|
|
5
|
+
ezuikit-flv 是一款开源的纯 H5 直播流播放器,通过 Emscripten 将音视频解码库编译成 js(wasm) 运行于浏览器之中。兼容几乎所有浏览器,可以运行在 PC、手机、微信中,无需额外安装插件。
|
|
6
6
|
|
|
7
7
|
## 功能
|
|
8
8
|
|
|
9
|
-
- 支持解码H.264视频
|
|
10
|
-
- 支持解码H.265视频(flv id == 12)
|
|
11
|
-
- 支持2K视频
|
|
12
|
-
- 支持解码AAC音频
|
|
13
|
-
- 可设置播放缓冲区时长,可设置0缓冲极限低延迟(网络抖动会造成卡顿现象)
|
|
9
|
+
- 支持解码 H.264 视频
|
|
10
|
+
- 支持解码 H.265 视频(flv id == 12)
|
|
11
|
+
- 支持 2K 视频
|
|
12
|
+
- 支持解码 AAC 音频
|
|
13
|
+
- 可设置播放缓冲区时长,可设置 0 缓冲极限低延迟(网络抖动会造成卡顿现象)
|
|
14
14
|
- 可创建多个播放实例
|
|
15
15
|
- 手机浏览器内打开长时间不会息屏
|
|
16
|
-
- 支持填充,等比,等比缩放 3种视频缩放模式
|
|
17
|
-
- 支持0,90,180,270度画面旋转
|
|
18
|
-
- 支持MediaSourceExtensions 硬件解码
|
|
19
|
-
- 支持MediaSourceExtensions硬解码失败的情况下自动切换到wasm软解码
|
|
16
|
+
- 支持填充,等比,等比缩放 3 种视频缩放模式
|
|
17
|
+
- 支持 0,90,180,270 度画面旋转
|
|
18
|
+
- 支持 MediaSourceExtensions 硬件解码
|
|
19
|
+
- 支持 MediaSourceExtensions 硬解码失败的情况下自动切换到 wasm 软解码
|
|
20
20
|
|
|
21
21
|
### npm 使用
|
|
22
22
|
|
|
@@ -25,20 +25,21 @@ npm install ezuikit-flv
|
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
```js
|
|
28
|
-
import
|
|
29
|
-
import EzuikitFlv from
|
|
28
|
+
import "ezuikit-flv/style.css"; // @since 2.0.1
|
|
29
|
+
import EzuikitFlv from "ezuikit-flv";
|
|
30
30
|
|
|
31
31
|
const player = new EzuikitFlv({
|
|
32
|
-
url:
|
|
33
|
-
id:
|
|
34
|
-
decoder:
|
|
32
|
+
url: "play url", // https://play.com/9999.flv
|
|
33
|
+
id: "id", // support element id
|
|
34
|
+
decoder: "decoder.js", // 自定义解码库加载地址, 默认放置在服务器根目录下
|
|
35
|
+
autoPlay: true,
|
|
35
36
|
// themeData: null // 忽略主题
|
|
36
37
|
});
|
|
37
38
|
|
|
38
|
-
player.play();
|
|
39
|
+
// player.play(); // 由于解码资源异步加载的问题 不推荐
|
|
39
40
|
```
|
|
40
41
|
|
|
41
|
-
### umd使用
|
|
42
|
+
### umd 使用
|
|
42
43
|
|
|
43
44
|
```html
|
|
44
45
|
<div id="container-id">
|
|
@@ -48,22 +49,23 @@ player.play();
|
|
|
48
49
|
<script src="./index.js"></script>
|
|
49
50
|
<script>
|
|
50
51
|
const player = new EzuikitFlv({
|
|
51
|
-
url:
|
|
52
|
-
id:
|
|
53
|
-
decoder:
|
|
52
|
+
url: "play url", // https://play.com/9999.flv
|
|
53
|
+
id: "container-id", // support element id or element
|
|
54
|
+
decoder: "decoder.js", // 自定义解码库加载地址, 默认放置在服务器根目录下
|
|
55
|
+
autoPlay: true,
|
|
54
56
|
// themeData: null // 忽略主题
|
|
55
57
|
});
|
|
56
58
|
|
|
57
|
-
player.play();
|
|
59
|
+
// player.play(); // 由于解码资源异步加载的问题 不推荐
|
|
58
60
|
</script>
|
|
59
61
|
</div>
|
|
60
62
|
```
|
|
61
63
|
|
|
62
|
-
注意: 暂不提供CDN地址, decoder静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
64
|
+
注意: 暂不提供 CDN 地址, decoder 静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
63
65
|
|
|
64
|
-
注意: 暂不提供CDN地址,decoder静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
66
|
+
注意: 暂不提供 CDN 地址,decoder 静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
65
67
|
|
|
66
|
-
注意: 暂不提供CDN地址,decoder静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
68
|
+
注意: 暂不提供 CDN 地址,decoder 静态资源需要放置在自己的服务器下(`node_modules/ezuikit-flv`下 `decoder.wasm` 和 `decoder.js` 文件, 这两个文件需要在同一个文件夹下)
|
|
67
69
|
|
|
68
70
|
### 配置
|
|
69
71
|
|
|
@@ -79,4 +81,6 @@ player.play();
|
|
|
79
81
|
|
|
80
82
|
[react-app](https://github.com/Ezviz-OpenBiz/EZUIKit-flv/tree/master/examples/react-app)
|
|
81
83
|
|
|
82
|
-
[
|
|
84
|
+
[vue3.3-app](https://github.com/Ezviz-OpenBiz/EZUIKit-flv/tree/master/examples/vue3.3-app)
|
|
85
|
+
|
|
86
|
+
[vue2.5-app](https://github.com/Ezviz-OpenBiz/EZUIKit-flv/tree/master/examples/vue2.5-app)
|