chen3861229 / dd-danmaku

Emby danmaku extension
MIT License
82 stars 5 forks source link

emby-danmaku

Emby danmaku extension

截图

安装

任选以下一种方式安装即可

一.浏览器插件

  1. Tampermonkey
  2. 添加脚本

二.修改服务端

修改文件 /system/dashboard-ui/index.html (Docker版,其他类似),在</body>前添加如下标签,多选一

  1. 直接下载ede.js到 index.html 同级目录下,优先使用本地文件较为稳定

    <script src="https://github.com/chen3861229/dd-danmaku/raw/main/ede.js" defer></script>
  2. 使用 jsdelivr CDN 网络地址

    <script src="https://cdn.jsdelivr.net/gh/chen3861229/dd-danmaku/ede.js" defer></script>
  3. 不建议再使用Cloudflare Pages托管的js文件,被强制隐去了Content-Length响应头会导致客户端开屏闪退 3. 使用 Cloudflare Pages 网络地址,等同 main 分支,中国移动网络此 cf 地址

该方式安装与浏览器插件安装可同时使用不冲突

三.修改客户端

为什么需要修改客户端?

因为 Emby 除了 Web 端是从服务端加载的前端界面,其余所有端都是使用的客户端本地代码文件,因此需要修改客户端才能使用本插件

  1. 类似服务端方式,安卓解包后修改/assets/www/index.html再重新打包即可, 具体细节请 Google 解决,对客户端不是太熟,这里仅提供一个简单参考, windows 下载 JDK 可使用Apktool 进行解包和打包, 建议打包名加上 -unsigned 后缀标明为未签名版本,传到手机中使用 MT管理器 进行一键默认自签名,然后安装即可,若出现安装包解析失败或 PackageInfo is null 的自行 Google 解决

  2. IOS 需要通过类似 AltStore 方式自签,请自行 Google 解决,这里也提供一个简单参考,访问decrypt.day这样的第三方 IPA 下载网站,下载离线安装包得到com.emby.mobile_xxx.ipa,直接使用7zip等解压软件解压,修改/Payload/Emby.app/www/index.html文件,重点注意删除原安装包的签名文件,PlugIns,SC_Info,否则使用爱思助手自签将报错AppexBundleIdNotPrefixed无法安装,然后将Payload压缩为zip文件,手动改后缀为ipa,使用爱思助手自签并手动安装即可,注意自签包只能在绑定的设备上安装

FAQ

四.使用第三方用户脚本加载器(推荐)

优点为属于 emby 插件,也可添加其它类型脚本并快捷管理,但同样需要服务端与客户端配合使用CustomCssJS,服务端改一次,客户端修改集成可手动参考三,不想自己改的可直接使用第三方魔改增强版已内置 CustomCssJS 集成的即可,缺点为无 iOS 端的已修改版

界面

请注意Readme上方截图可能与最新版存在差异,请以实际版本与说明为准

播放界面进度条下方新增如下按钮,若按钮透明度与"暂停"等其他原始按钮存在差异,说明插件正在进行加载

效果预览

Windows 端

截图 截图 截图 截图 截图

Android 端

截图 `3.4.20` 与老版本一些 NewUI 的小差异截图,因为弹窗`dialog`用的`Emby`的样式,所以形式具体取决于客户端版本了 ![](https://raw.githubusercontent.com/chen3861229/dd-danmaku/main/img/android-01.jpg) ![](https://raw.githubusercontent.com/chen3861229/dd-danmaku/main/img/android-02.jpg) ![](https://raw.githubusercontent.com/chen3861229/dd-danmaku/main/img/android-03.jpg) ![](https://raw.githubusercontent.com/chen3861229/dd-danmaku/main/img/android-04.jpg) ![](https://raw.githubusercontent.com/chen3861229/dd-danmaku/main/img/android-05.jpg)

IOS 端,Mac,Windows,Web,基本一样,这里就不截图了

弹幕

弹幕来源为 弹弹 play ,已开启弹幕聚合(A/B/C/... 站等网站弹幕聚合)

数据

匹配完成后对应关系会保存在浏览器(或客户端)本地存储中,后续播放(包括同季的其他集)会优先按照保存的匹配记录载入弹幕

常见弹幕加载错误/失败原因

  1. 译名导致的异常: 如『よふかしのうた』 Emby 识别为《彻夜之歌》后因为弹弹 play 中为《夜曲》导致无法匹配
  2. 存在多季/剧场版/OVA 等导致的异常: 如『OVERLORD』第四季若使用S[N]格式归档(如 OVERLORD/S4E1.mkv 或 OVERLORD/S4/E1.mkv),可能出现匹配失败/错误等现象
  3. 其他加载BUG: 鉴定为后端程序猿不会前端还要硬写JS,有BUG麻烦 开个issue THX
  4. NewUI 以来的一些更改和注意事项, CHANGLOGPR#60

首次播放时请检查当前弹幕信息是否正确匹配,若匹配错误请尝试手动匹配