9
9
10
10
# 软件介绍
11
11
12
- ZyPlayer是一款采用现代化技术栈开发的高颜值媒体播放器 ,它基于 ` electron-vite ` 框架,集成了 ` TDesign ` UI 组件库与 ` Vue3 ` 全家桶,以清新的薄荷绿为主题,旨在为用户提供流畅的跨平台娱乐体验。
12
+ zyfun [ 老版为zyplayer ] 是一款采用现代化技术栈开发的高颜值媒体播放器 ,它基于 ` electron-vite ` 框架,集成了 ` TDesign ` UI 组件库与 ` Vue3 ` 全家桶,以清新的薄荷绿为主题,旨在为用户提供流畅的跨平台娱乐体验。
13
13
14
14
** 重要提醒** : 仅此Github发布,请勿上当受骗;请各位公众号、QQ群、博客的管理者不要费力宣传及引流本软件!
15
15
16
- ** 重要提醒** : 请务必在有能力的情况请支持正版 ,我们不提倡盗版!
16
+ ** 重要提醒** : 请务必支持正版版权 ,我们不提倡盗版!
17
17
18
18
** 重要提醒** : 在开始使用前,请务必详读并同意用户协议,确保遵守相关规定!
19
19
20
20
<details >
21
21
<summary >展开查看用户协议及免责申明</summary >
22
- 感谢您选择使用zyplayer (以下简称本软件),在使用产品和服务之前,请您仔细阅读和理解以下声明:
22
+ 感谢您选择使用zyfun (以下简称本软件),在使用产品和服务之前,请您仔细阅读和理解以下声明:
23
23
24
24
1 . 若您不同意本声明的任何内容,请您立即停止使用本软件。一旦您开始使用本软件产品和服务,则表示您已同意本声明的所有内容。
25
25
2 . 本软件仅供个人学习、研究和技术交流使用,仅提供展示功能,所有数据资源均由用户自身制作提供,包括但不限于视频网站、媒体分享站点等。本软件无法控制这些资源的合法性、准确性、完整性或可用性,因此不对资源内容的真实性、合法性或适用性负责。
@@ -83,11 +83,22 @@ ZyPlayer是一款采用现代化技术栈开发的高颜值媒体播放器,它
83
83
- 播放器选择需考虑格式兼容性,如 h264 与 h265 的差异
84
84
- 针对播放失败, 建议切换播放器或者调用系统播放器
85
85
86
- ### 安装包说明
86
+ ### 跨平台说明
87
87
88
- - ** MacOS** : 提供 arm64、x64 及 universal 三种架构安装包。
89
- - ** Windows** : 支持 arm64、x64、ia32,以及通用版本,但请注意 Electron 23 起不再支持 Win 7/8/8.1。
90
- - ** Linux** : 针对 arm64、x64 架构发行 image、deb、rpm 安装包。
88
+ > {appname}为软件名
89
+
90
+ - ** MacOS** :
91
+ - 提供 arm64(苹果芯)、x64(英特尔芯) 及 universal(通用) 三种架构安装包
92
+ - 日志路径: ` ~/Library/Logs/{appname}/ `
93
+ - 数据库路径: ` ~/Library/Application\ Support/{appname}/database/ `
94
+ - ** Linux** :
95
+ - 针对 arm64、x64 架构发行 image、deb、rpm 安装包
96
+ - 日志路径: ` ~/.config/{appname}/logs/ `
97
+ - 数据库路径: ` ~/.config/{appname}/database/ `
98
+ - ** Windows** :
99
+ - 支持 arm64、x64、ia32,以及通用版本
100
+ - 日志路径: ` %USERPROFILE%\AppData\Roaming\{appname}\logs\ `
101
+ - 数据库路径: ` %USERPROFILE%\AppData\Roaming\{appname}\database\ `
91
102
92
103
## 🛠️ 下载与安装
93
104
@@ -97,10 +108,42 @@ ZyPlayer是一款采用现代化技术栈开发的高颜值媒体播放器,它
97
108
98
109
### macOS 安装问题解决方案
99
110
100
- 若遇到“已损坏”提示,执行以下命令修复权限
111
+ 因为软件没有签名,所以会被 macOS 的安全检查所拦下。安装后打开遇到「文件已损坏」的情况,请按如下方式操作:
101
112
102
113
``` bash
103
- sudo xattr -cr /Applications/zyplayer.app
114
+ [1] 执行下面命令信任开发者, 会要求输入密码:
115
+ sudo spctl --master-disable
116
+ [2] 执行下面命令放行软件 :
117
+ sudo xattr -cr /Applications/zyplayer.app
118
+
119
+ 完成上面两个步骤,大多数情况下都能正常打开应用。
120
+
121
+ ps:
122
+ 如果提示以下内容:
123
+ option -r not recognized
124
+
125
+ usage: xattr [-slz] file [file ...]
126
+ xattr -p [-slz] attr_name file [file ...]
127
+ xattr -w [-sz] attr_name attr_value file [file ...]
128
+ xattr -d [-s] attr_name file [file ...]
129
+ xattr -c [-s] file [file ...]
130
+
131
+ The first form lists the names of all xattrs on the given file(s).
132
+ The second form (-p) prints the value of the xattr attr_name.
133
+ The third form (-w) sets the value of the xattr attr_name to attr_value.
134
+ The fourth form (-d) deletes the xattr attr_name.
135
+ The fifth form (-c) deletes (clears) all xattrs.
136
+
137
+ options:
138
+ -h: print this help
139
+ -s: act on symbolic links themselves rather than their targets
140
+ -l: print long format (attr_name: attr_value)
141
+ -z: compress or decompress (if compressed) attribute value in zip format
142
+
143
+ 则执行命令
144
+ xattr -c /Applications/zyplayer.app/*
145
+ 如果上述命令依然没有效果,可以尝试下面的命令:
146
+ sudo xattr -d com.apple.quarantine /Applications/zyplayer.app/
104
147
```
105
148
106
149
### Linux Appimage桌面快捷方式设置
@@ -121,78 +164,94 @@ sudo xattr -cr /Applications/zyplayer.app
121
164
## 🚗 二次开发
122
165
123
166
```
124
- [1]安装 node.js version18 以上
125
- [2]克隆项目 git clone https://github.com/Hiram-Wong/ZyPlayer.git
126
- [3]进入项目 cd ZyPlayer/
127
- [4]打开vscode code .
128
- [5]修改代码
129
- [6]修改packgae.json[仅win8.1、7] "electron": "^19.1.9",
130
- [7]安装依赖包 yarn
131
- [8]全局安装electron-vite框架 yarn add electron-vite -D
132
- [9]打包 yarn build:win[mac/linux]
167
+ [1] 安装 node.js version18 以上
168
+ [2] 克隆项目
169
+ git clone https://github.com/Hiram-Wong/ZyPlayer.git
170
+ [3] 进入项目
171
+ cd ZyPlayer/
172
+ [4] 打开项目<此处使用命令行快捷打开vscode>
173
+ code .
174
+ [5] 修改代码
175
+ [6] 安装依赖包
176
+ yarn
177
+ [7] 全局安装electron-vite框架
178
+ yarn add electron-vite -D
179
+ [8] 打包编译发布
180
+ yarn build:win[mac/linux]
181
+
182
+ ps:
183
+ - 同步库说明
184
+ - sync-fetch: 渲染进程 + webworker线程运行
185
+ - sync-request: 主进程 + fork线程运行 + tree-kill结束
186
+ - 兼容win7说明
187
+ - Electron 23 起不再支持 Win 7/8/8.1, 推荐"electron": "~22.3.27"
188
+ - Electron 23 以下不支持升级fastif及相关插件, 最高版本为4.x
189
+ - Electron 23 以下不支持升级cheerio, 最高版本为1.0.0-rc.12
190
+ - Electron 23 以下puppeteer存在兼容性问题, 推荐"puppeteer-core": "~21.3.8", "puppeteer-in-electron": "^3.0.5"
133
191
```
134
192
135
193
## 📚 数据结构
136
194
137
- > 请严格按照数据结构填写, 避免不必要的报错
195
+ > 请严格按照数据结构填写, 避免不必要的报错(如数据字段类型不匹配)
138
196
139
197
<details >
140
198
<summary >展开查看接口说明</summary >
141
199
142
- > 配置导入格式(备份数据建议此格式)
143
-
144
200
``` json
145
201
{
146
202
"analyze" : [
147
203
{
148
- "id" : " fddfb425-6fd9-0b39-459f-a21f69739a6e" , // id唯一值不可重复,不能数字,建议 uuid
149
- "name" : " 纯净" , // 名称
150
- "url" : " https://im1907.top/?jx=" , // 解析源地址
151
- "isActive" : true // 是否启用 true启用 false 禁用
204
+ "id" : " fddfb425-6fd9-0b39-459f-a21f69739a6e" , // id唯一值不可重复[uuidv4]
205
+ "name" : " Parse" , // 名称[string]
206
+ "type" : 0 , // 类型[number | 0:web-1:json]
207
+ "url" : " https://xxx.top/?jx=" , // 解析源地址[string]
208
+ "isActive" : true // 是否启用[boolean | true启用-false禁用]
152
209
}
153
210
],
154
211
"iptv" : [
155
212
{
156
- "id" : " 993841fe-5e91-5e5d-35d6-5be81822960b" , // id唯一值不可重复,不能数字,建议 uuid
157
- "name" : " APTV" , // 名称
158
- "url" : " https://ghproxy.com/https://raw.githubusercontent.com/Kimentanm/aptv/master/m3u/iptv.m3u" , // 直播源地址
159
- "type" : " remote" , // remote为远程m3u local本地m3u文件路径
160
- "isActive" : true , // 是否启用 true启用 false 禁用
161
- "epg" : " https://epg.112114.xyz/" // 电子节目单地址
213
+ "id" : " 993841fe-5e91-5e5d-35d6-5be81822960b" , // id唯一值不可重复[uuidv4]
214
+ "name" : " IPTV" , // 名称[string]
215
+ "url" : " https://xxx.com/m3u/iptv.m3u" , // 直播源地址[string]
216
+ "type" : " remote" , // url格式[string | remote:远程m3u-local本地m3u文件路径-json本地手动文件]
217
+ "isActive" : true , // 是否启用[boolean | true启用-false禁用]
218
+ "epg" : " https://epg.112114.xyz/" , // 电子节目单地址[string]
219
+ "logo" : " https://epg.112114.xyz/" // 台标地址[string] - 3.3.8启用该参数
162
220
}
163
221
],
164
222
"channel" : [
165
223
{
166
- "id" : " 0ede1ecd-de69-1042-15d9-4e5e9e3bb897" , // id唯一值不可重复,不能数字,建议 uuid
167
- "name" : " CCTV6 " , // 名称
168
- "url" : " http://dbiptv.sn.chinamobile. com/PLTV/88888890/224/3221226393/ index.m3u8" , // 播放地址
169
- "group" : " 央视 " // 分组
224
+ "id" : " 0ede1ecd-de69-1042-15d9-4e5e9e3bb897" , // id唯一值不可重复[uuidv4]
225
+ "name" : " xx卫视 " , // 名称[string]
226
+ "url" : " http://xxx. com/index.m3u8" , // 播放地址[string]
227
+ "group" : " 默认 " // 分组[string]
170
228
}
171
229
],
172
230
"sites" : [
173
231
{
174
- "id" : " 51793af6-c923-5504-85db-0ef686624dec" , // id唯一值不可重复,不能数字,建议 uuid
175
- "name" : " 39影视" , // 名称
176
- "api" : " https://www.39kan.com/api.php/provide/vod/" , // 站点源地址
177
- "playUrl" : " " , // 配合解析去url地址
178
- "search" : 1 , // 0:关闭 1:聚合搜索 2:本站搜索
179
- "group" : " 切片" , // 分组
180
- "isActive" : true , // 是否启用 true启用 false 禁用
181
- "type" : 1 , // 0:cms(xml) 1:cms(json) 2:drpy 3:app(v3) 4:app(v1)
182
- "ext" : " " , // 扩展参数
183
- "categories" : " 电视,影视" // 按顺序展示所配置的分类 不配置则默认展示所有分类
232
+ "id" : " 51793af6-c923-5504-85db-0ef686624dec" , // id唯一值不可重复[uuidv4]
233
+ "key" : " 51793af6-c923-5504-85db-0ef686624dec" , // key值不建议重复[string]
234
+ "name" : " xx9影视" , // 名称[string]
235
+ "api" : " https://www.xxx.com/api.php/provide/vod/" , // 站点源地址[string]
236
+ "playUrl" : " " , // 配合解析去url地址[string]
237
+ "search" : false , // 是否支持搜索[boolean | true启用-false禁用]
238
+ "group" : " 切片" , // 分组[string]
239
+ "type" : 1 , // 数据源类型[number | 0:T0(xml)-1:T1(json)-2:drpy(js0)-6:T4(hipy)-7:T3(js)-8:catvod(nodejs)-9:csp(XBPQ)-10:csp(XYQ)-11:csp(AppYsV2)]
240
+ "ext" : " " , // 扩展参数[string]
241
+ "categories" : " 电视,影视" , // 按顺序展示所配置的分类 不配置则默认展示所有分类[string]
242
+ "isActive" : true // 是否启用[boolean | true启用-false禁用]
184
243
}
185
244
],
186
245
"drive" : [
187
246
{
188
- "id" : " 3293dc45-cf14-9c66-3028-5b7765b240b7" , // id唯一值不可重复,不能数字,建议 uuid
189
- "name" : " 🙋丫仙女 " , // 名称
190
- "server" : " http://alist.xiaoya .pro/" , // 网盘地址
191
- "startPage" : " " , // 开始页路径
192
- "search" : false , // 是否支持搜索 true启用 false 禁用
193
- "headers" : null , // 请求头
194
- "params" : null , // 参数
195
- "isActive" : true // 是否启用 true启用 false 禁用
247
+ "id" : " 3293dc45-cf14-9c66-3028-5b7765b240b7" ,// id唯一值不可重复[uuidv4]
248
+ "name" : " alist " , // 名称[string]
249
+ "server" : " http://alist.xxx .pro/" , // 网盘地址[string]
250
+ "startPage" : " " , // 开始页路径[string]
251
+ "search" : false , // 是否支持搜索[boolean | true启用-false禁用] 未启用预留
252
+ "headers" : " {} " , // 请求头[string] 未启用预留
253
+ "params" : " {} " , // 参数[string]
254
+ "isActive" : true // 是否启用[boolean | true启用-false禁用]
196
255
}
197
256
],
198
257
"setting" : [
@@ -208,14 +267,16 @@ sudo xattr -cr /Applications/zyplayer.app
208
267
"pauseWhenMinimize" : false , // [弃用] 最小化时暂停
209
268
"defaultIptvEpg" : " https://epg.112114.eu.org/" , // iptv epg
210
269
"defaultIptvLogo" : " https://epg.112114.eu.org/logo/" , // iptv logo
211
- "iptvSkipIpv6" : true , // iptv是否跳过ipv6节目
270
+ "iptvSkipIpv6" : true , // [3.3.8版本弃用] iptv是否跳过ipv6节目
271
+ "iptvMarkIp" : true , // [3.3.8版本启用] iptv标识IP类型
212
272
"iptvThumbnail" : true , // iptv是否显示缩略图
213
- "iptvStatus" : true , // iptv是否检测延迟
273
+ "iptvStatus" : true , // [3.3.8版本弃用] iptv是否检测延迟
274
+ "iptvDelay" : true , // [3.3.8版本启用] iptv是否检测延迟
214
275
"defaultSite" : " 51793af6-c923-5504-85db-0ef686624dec" , // site 默认源标识
215
276
"defaultIptv" : " 993841fe-5e91-5e5d-35d6-5be81822960b" , // iptv 默认源标识
216
277
"defaultAnalyze" : " fddfb425-6fd9-0b39-459f-a21f69739a6e" , // analyze 默认源标识
217
278
"defaultDrive" : " 3293dc45-cf14-9c66-3028-5b7765b240b7" , // drive 默认源标识
218
- "defaultViewCasual" : " " , // [3.3.4版本启用]心性看地址
279
+ "defaultViewCasual" : " " , // [3.3.4版本启用] 随心看地址
219
280
"barrage" : {
220
281
"url" : " " , // 弹幕地址
221
282
"key" : " danmuku" , // 弹幕接口返回数据对应的key
@@ -281,67 +342,4 @@ sudo xattr -cr /Applications/zyplayer.app
281
342
}
282
343
```
283
344
284
- > 一键配置格式(初次使用建议此格式, 仅支持导入源数据和设置默认源标识)
285
-
286
- ``` json
287
- {
288
- "analyze" : {
289
- "default" : " fddfb425-6fd9-0b39-459f-a21f69739a6e" , // 默认标识 对应需设置为默认的id
290
- "data" : [
291
- {
292
- "id" : " fddfb425-6fd9-0b39-459f-a21f69739a6e" , // id唯一值不可重复,不能数字,建议 uuid
293
- "name" : " 纯净" , // 名称
294
- "url" : " https://im1907.top/?jx=" , // 解析源地址
295
- "isActive" : true // 是否启用 true启用 false 禁用
296
- }
297
- ]
298
- },
299
- "iptv" : {
300
- "default" : " 993841fe-5e91-5e5d-35d6-5be81822960b" , // 默认标识 对应需设置为默认的id
301
- "data" : [
302
- {
303
- "id" : " 993841fe-5e91-5e5d-35d6-5be81822960b" , // id唯一值不可重复,不能数字,建议 uuid
304
- "name" : " APTV" , // 名称
305
- "url" : " https://ghproxy.com/https://raw.githubusercontent.com/Kimentanm/aptv/master/m3u/iptv.m3u" , // 直播源地址
306
- "type" : " remote" , // remote为远程m3u local本地m3u文件路径
307
- "isActive" : true , // 是否启用 true启用 false 禁用
308
- "epg" : " https://epg.112114.xyz/" // 电子节目单地址
309
- }
310
- ]
311
- },
312
- "sites" : {
313
- "default" : " 51793af6-c923-5504-85db-0ef686624dec" , // 默认标识 对应需设置为默认的id
314
- "data" : [
315
- {
316
- "id" : " 51793af6-c923-5504-85db-0ef686624dec" , // id唯一值不可重复,不能数字,建议 uuid
317
- "name" : " 39影视" , // 名称
318
- "api" : " https://www.39kan.com/api.php/provide/vod/" , // 站点源地址
319
- "playUrl" : " " , // 配合解析去url地址
320
- "search" : 1 , // 0:关闭 1:聚合搜索 2:本站搜索
321
- "group" : " 切片" , // 分组
322
- "isActive" : true , // 是否启用 true启用 false 禁用
323
- "type" : 1 , // 0:cms(xml) 1:cms(json) 2:drpy 3:app(v3) 4:app(v1)
324
- "ext" : " " , // 扩展参数
325
- "categories" : " 电视,影视" // 按顺序展示所配置的分类 不配置则默认展示所有分类
326
- }
327
- ]
328
- },
329
- "drive" : {
330
- "default" : " 3293dc45-cf14-9c66-3028-5b7765b240b7" , // 默认标识 对应需设置为默认的id
331
- "data" : [
332
- {
333
- "id" : " 3293dc45-cf14-9c66-3028-5b7765b240b7" , // id唯一值不可重复,不能数字,建议 uuid
334
- "name" : " 🙋丫仙女" , // 名称
335
- "server" : " http://alist.xiaoya.pro/" , // 网盘地址
336
- "startPage" : " " , // 开始页路径
337
- "search" : false , // 是否支持搜索 true启用 false 禁用
338
- "headers" : null , // 请求头
339
- "params" : null , // 参数
340
- "isActive" : true // 是否启用 true启用 false 禁用
341
- }
342
- ]
343
- }
344
- }
345
- ```
346
-
347
345
</details >
0 commit comments