Files
jellyfin-plugin-danmu/README.md
2023-02-15 21:34:02 +08:00

97 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# jellyfin-plugin-danmu
[![Danmu](https://img.shields.io/github/v/release/cxfksword/jellyfin-plugin-danmu)](https://github.com/cxfksword/jellyfin-plugin-danmu/releases)
[![Danmu](https://img.shields.io/badge/jellyfin-10.8.x-lightgrey?logo=jellyfin)](https://github.com/cxfksword/jellyfin-plugin-danmu/releases)
[![Danmu](https://img.shields.io/github/license/cxfksword/jellyfin-plugin-danmu)](https://github.com/cxfksword/jellyfin-plugin-danmu/main/LICENSE)
jellyfin弹幕自动下载插件已支持的弹幕来源b站弹弹play优酷爱奇艺。
支持功能:
* 自动下载xml格式弹幕
* 生成ass格式弹幕
* 可配置定时更新
* 支持api访问弹幕
![logo](doc/logo.png)
## 安装插件
只支持最新的`jellyfin 10.8.x`版本
添加插件存储库:
国内加速https://ghproxy.com/https://github.com/cxfksword/jellyfin-plugin-danmu/releases/download/manifest/manifest_cn.json
国外访问https://github.com/cxfksword/jellyfin-plugin-danmu/releases/download/manifest/manifest.json
## 如何使用
1. 安装后,进入`控制台 -> 插件`,查看下`Danmu`插件是否是**Active**状态
2. 进入`控制台 -> 媒体库`,点击任一媒体库进入配置页,在最下面的`字幕下载`选项中勾选**Danmu**,并保存
<img src="doc/tutorial.png" width="720px" />
假如想修正匹配错误的弹幕请在电影或剧集中使用jellyfin的**修改字幕**功能
3. 新加入的影片会自动获取弹幕(只匹配番剧和电影视频),旧影片可以通过计划任务**扫描媒体库匹配弹幕**手动执行获取
4. 可以在元数据中手动指定匹配的视频ID如播放链接`https://www.bilibili.com/bangumi/play/ep682965`对应的视频ID就是`682965`
5. 对于电视剧和动画可以在元数据中指定季ID如播放链接`https://www.bilibili.com/bangumi/play/ss1564`对应的季ID就是`1564`只要集数和b站的集数的一致并正确填写了集号每季视频的弹幕会自动获取
6. 同时生成ass弹幕需要在插件配置中打开默认是关闭的
7. 定时更新需要自己到计划任务中添加定时时间,默认手工执行更新
> 电影或季元数据也支持手动指定BV号来匹配UP主上传的视频弹幕。多P视频和剧集是按顺序一一对应匹配的所以保证jellyfin中剧集有正确的集号很重要
## 支持的api接口
* `/plugin/danmu/{id}`: 获取影片或剧集的xml弹幕链接不存在时url为空
* `/plugin/danmu/raw/{id}`: 获取影片或剧集的xml弹幕文件内容
## 如何播放
xml格式
* [KikoPlay](https://github.com/KikoPlayProject/KikoPlay) (Windows/Mac)
* [Fileball](https://fileball.app/) (iOS/iPadOS/AppleTV)
* [弹弹play](https://www.dandanplay.com/) (Windows/Mac/Android)
ass格式
* PotPlayer (Windows)
* IINA (Mac)
* Infuse (Mac/iOS/iPadOS/AppleTV)
## How to build
1. Clone or download this repository
2. Ensure you have .NET Core SDK setup and installed
3. Build plugin with following command.
```sh
dotnet restore
dotnet publish --output=artifacts Jellyfin.Plugin.Danmu/Jellyfin.Plugin.Danmu.csproj
# remove unused dll
cd artifacts
rm -rf MediaBrowser*.dll Microsoft*.dll Newtonsoft*.dll System*.dll Emby*.dll Jellyfin.Data*.dll Jellyfin.Extensions*.dll *.json *.pdb
```
## How to test
1. Build the plugin
2. Create a folder, like `danmu` and copy `artifacts/*.dll` into it
3. Move folder `danmu` to jellyfin `data/plugins` folder
## Thanks
[downkyi](https://github.com/leiurayer/downkyi)