zwplayer-vue2x 1.0.32 → 1.0.33

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 CHANGED
@@ -1,24 +1,189 @@
1
1
  # zwplayer-vue2x
2
2
 
3
- ## Project setup
4
- ```
5
- npm install
6
- ```
3
+ 基于 Vue 2.x 的 zwplayer 组件封装,提供简单易用的视频播放能力。
4
+
5
+ ## 关于 zwplayer
6
+
7
+ `zwplayer`(Zero Web Player)是一款秉持"智能傻瓜式"设计理念的网页播放器,致力于将开发者的使用成本降至无限接近于零。
8
+
9
+ ### 核心特点
10
+
11
+ ✅ **零费用成本** - 完全免费,永久免费,无需支付任何费用
12
+
13
+ ✅ **零学习成本** - 提供统一简洁的 API,智能引擎自动处理所有流媒体技术细节
14
+
15
+ ✅ **零升级成本** - API 永久固化,版本升级仅需替换文件
16
+
17
+ ✅ **零风险成本** - 代码纯净,无广告、无统计、无联网后门
18
+
19
+ ✅ **零部署成本** - 不依赖第三方库和 CDN,私网、内网均可使用
20
+
21
+ ### 主要功能
22
+
23
+ - **广泛协议支持**:HLS、DASH、HTTP-FLV、HTTP-TS、WS、WebRTC(WHEP/ARTC/BRTC/TRTC)
24
+ - **特色协议**:支持 RTSP 网页播放(无需插件)
25
+ - **本地文件播放**:支持直接播放用户设备上的本地视频/音频文件
26
+ - **智能字幕**:支持双字幕、字幕搜索、章节搜索、拖拽加载本地字幕、章节文件
27
+ - **丰富功能**:弹幕、进度条预览、画面调节、截图、音量增益、AB循环、录制、音频提取等
28
+ - **直播优化**:超低延时直播、直播追帧、多码流切换
29
+ - **灵活模式**:画中画、网页全屏、自动小窗口、强制锁定模式
7
30
 
8
- ### Compiles and hot-reloads for development
31
+ 更多详情请访问:
32
+ 1. [zwplayer 官网](https://www.zwplayer.cn)
33
+ 2. [在线体验](https://www.zwplayer.cn/videoplayer.html)
34
+ 3. [vue框架使用](https://www.zwplayer.cn/docs/support/guide-vue-framework.html)
35
+ 3. [vue框架使用](https://www.zwplayer.cn/docs/support/guide-vue-framework.html)
36
+ 4. 调用示例项目:
37
+ - **Gitee**: https://gitee.com/chenfanyu/zwplayer-vue2x-demo
38
+ - **GitHub**: https://github.com/chenfanyu/zwplayer-vue2x-demo
39
+
40
+
41
+ ## 使用说明
42
+
43
+ ### 安装
44
+
45
+ ```bash
46
+ npm install zwplayer-vue2x --save
9
47
  ```
10
- npm run serve
48
+
49
+ #### 安装注意事项
50
+
51
+ ⚠️ **重要**:本组件依赖 `zwplayer` 核心库,安装时请注意以下事项:
52
+
53
+ 1. **自动配置**:`npm install` 会自动执行 `postinstall` 脚本,该脚本会:
54
+ - 创建 `public` 目录(如果不存在)
55
+ - 将 `zwplayer` 核心库复制到 `public/zwplayer` 目录
56
+
57
+ 2. **核心库必须发布**:`public/zwplayer` 目录必须随项目一起发布到生产环境
58
+ - 确保该目录完整包含所有 zwplayer 相关文件
59
+ - 不要在部署时忽略此目录
60
+
61
+ 3. **动态加载机制**:zwplayer 采用动态加载机制
62
+ - 支持无缝升级,无需修改业务代码
63
+ - 升级时只需替换 `public/zwplayer` 目录中的文件即可
64
+
65
+ 4. **内网/私网部署**:zwplayer 不依赖 CDN,完全支持内网和离线环境部署
66
+ ### 组件注册
67
+
68
+ #### 全局注册
69
+
70
+ 在 `src/main.js` 中添加:
71
+
72
+ ```javascript
73
+ import Vue from 'vue'
74
+ import App from './App.vue'
75
+ import ZwModule from 'zwplayer-vue2x'
76
+
77
+ Vue.use(ZwModule)
78
+
79
+ new Vue({
80
+ render: h => h(App),
81
+ }).$mount('#app')
11
82
  ```
12
83
 
13
- ### Compiles and minifies for production
84
+ 全局注册后,可在项目任何组件中使用 `<zwplayer>` 组件。
85
+
86
+ #### 局部注册
87
+
88
+ 在组件中单独注册:
89
+
90
+ ```javascript
91
+ import { zwplayer } from 'zwplayer-vue2x'
92
+
93
+ export default {
94
+ name: 'MyComponent',
95
+ components: {
96
+ zwplayer
97
+ },
98
+ data() {
99
+ return {
100
+ movieUrl: 'https://d2zihajmogu5jn.cloudfront.net/elephantsdream/ed_hd.mp4',
101
+ playerOpen: true
102
+ }
103
+ },
104
+ methods: {
105
+ onPlayerReady() {
106
+ console.log('player ready event.')
107
+ },
108
+ onPlayerMediaEvent(event) {
109
+ console.log('media event:', event.type)
110
+ },
111
+ sendDanmu(danmu) {
112
+ console.log('sendDanmu:', danmu)
113
+ // 调用websocket等方法将弹幕实际发送出去
114
+ }
115
+ }
116
+ }
14
117
  ```
15
- npm run build
118
+
119
+ ### 组件使用
120
+
121
+ 在模板中使用组件:
122
+
123
+ ```html
124
+ <template>
125
+ <div class="player-container">
126
+ <zwplayer
127
+ v-if="playerOpen"
128
+ ref="zwplayerRef"
129
+ nodeid="main-player"
130
+ :murl="movieUrl"
131
+ @onready="onPlayerReady"
132
+ @onmediaevent="onPlayerMediaEvent"
133
+ :snapshotButton="true"
134
+ :optionButton="true"
135
+ :thumbnails="thumbnails"
136
+ :sendDanmu="sendDanmu"
137
+ :infoButton="true"
138
+ :enableDanmu="true"
139
+ :chapterButton="true"
140
+ danmuBar="danmu-controlbar"
141
+ />
142
+ </div>
143
+ </template>
16
144
  ```
17
145
 
18
- ### Lints and fixes files
146
+ ### 主要属性说明
147
+
148
+ | 属性名称 | 说明 | 备注 |
149
+ |---------|------|------|
150
+ | murl | 媒体地址参数(string/object/array),支持动态切换 | 运行时变动会自动调用 play 方法 |
151
+ | nodeid | 组件顶级父节点 div 的 id,不提供则自动生成 | 新增 |
152
+ | zwplayerlib | zwplayer 库地址,缺省时使用 `public/zwplayer/zwplayer.js` | 新增 |
153
+ | danmuBarId | 弹幕输入控制条的 div 元素 id | 新增 |
154
+ | 其它 | 请参考 [zwplayer 播放器构造函数参数](https://www.zwplayer.cn/docs/support/guide-configuration.html) | - |
155
+
156
+ ### 事件
157
+
158
+ 组件提供了 `onready`、`onmediaevent` 等事件,详细说明请参考 [zwplayer 事件文档](https://www.zwplayer.cn/docs/support/guide-events.html)。
159
+
160
+ ### 方法调用
161
+
162
+ 通过 `ref` 引用调用播放器方法:
163
+
164
+ ```javascript
165
+ // 获取播放器实例
166
+ const player = this.$refs.zwplayerRef
167
+
168
+ // 调用方法
169
+ player.play()
170
+ player.pause()
171
+ player.seek(120)
19
172
  ```
20
- npm run lint
173
+
174
+ ### 示例项目
175
+
176
+ - **Gitee**: https://gitee.com/chenfanyu/zwplayer-vue2x-demo
177
+ - **GitHub**: https://github.com/chenfanyu/zwplayer-vue2x-demo
178
+
179
+ ## 其他版本
180
+
181
+ ### Vue 3.x
182
+
183
+ 如果你使用 Vue 3.x,请安装 `zwplayervue3`:
184
+
185
+ ```bash
186
+ npm install zwplayervue3 --save
21
187
  ```
22
188
 
23
- ### Customize configuration
24
- See [Configuration Reference](https://cli.vuejs.org/config/).
189
+ 详细文档:[zwplayervue3](https://www.zwplayer.cn/guide-vue-framework.html)