Jellyfin 打造本地影音库

Docker 启动

version: "3.7"

services: 
  jellyfin:
    image: dockerproxy.com/linuxserver/jellyfin:latest
    container_name: jellyfin
    hostname: RISCX
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Shanghai  
      - HTTP_PROXY:'http://192.168.1.9:7890'
      - HTTPS_PROXY:'http://192.168.1.9:7890'
    volumes:
      - /root/sharedfolder/appdata/jellyfin/config:/config
      - /root/sharedfolder/media:/media
      - /root/sharedfolder/appdata/jellyfin/cache:/cache
    devices:
      - /dev/dri:/dev/dri
    extra_hosts:
      - "api.themoviedb.org:108.138.246.55"
      - "image.themoviedb.org:104.16.61.155"
      - "www.36dm.com:104.21.80.200"
    network_mode: "host"
    restart: unless-stopped

初始化配置

就不挨个贴图了,建议将页面都设置为中文,有一点需要注意的是选择国家的时候,中国的英文全称是 People’s Republic of China,不是 China,需要仔细找一下。

转码配置

主要配置硬解码,这样可以大大降低 CPU 的使用率,提高播放的流畅度。能够开启硬解需要 GPU 支持,如果 CPU 有核显,那么就可以开启硬解,如果没有,那么就算了吧,跳过。也可以通过下面的命令查看是否支持硬解。

cat /proc/cpuinfo | grep "flags"

该命令将输出 CPU 的系统信息,并在输出结果中搜索”flags”(标志)行。如果该行中包含”vme”、”cmov”、”cx8”、”mmx”、”sse”、”sse2”、”sse3”、”ssse3”、”sse4_1”、”sse4_2”、”avx”等关键词,则说明该 CPU 支持视频硬解码。

调用Potplayer本地解码

使用下面这个插件可以实现调用本地播放器播放视频,这样就可以使用 Potplayer 等播放器进行播放,而不是使用 Jellyfin 的内置播放器。文档写的十分详细,在这里就不再赘述了。

kjtsune/embyToLocalPlayer: Emby/Jellyfin 调用外部本地播放器,并回传播放记录。适配 Plex。

插件配置

所有插件都可以通过以下路径配置,后续不再赘述。所有地址都加上了代理地址https://mirror.ghproxy.com,请不要删掉,否则目录中的插件将无法加载。

管理页面 -> 插件 -> 存储库 -> 添加存储库 -> 输入manifest.json地址 -> 确定

在目录中找到刚刚添加的插件,点击安装即可。

更换皮肤

https://mirror.ghproxy.com/https://raw.githubusercontent.com/danieladov/JellyfinPluginManifest/master/manifest.json

字幕刮削

弹幕刮削 Danmu

支持下载哔站,爱奇艺,腾讯,优酷,等视频的弹幕。

https://mirror.ghproxy.com/https://github.com/cxfksword/jellyfin-plugin-danmu/releases/download/manifest/manifest_cn.json

字幕刮削 OpenSubtitles

OpenSubtitles 没找到 manifest.json 地址,需要下载插件,然后上传到 Jellyfin 中安装。jellyfin/jellyfin-plugin-opensubtitles

Home | opensubtitles.com注册账号,生成 API Key,然后在插件中配置即可。

元数据

剧集重命名

Nriver/Episode-ReName: 电视剧/番剧自动化重命名工具, 一键批量改名. 可配合QBittorrent下载后自动重命名, 方便Emby自动刮削. 支持Windows, Linux, MacOS, Docker 和 群晖套件环境运行

常规刮削 Metashark

https://mirror.ghproxy.com/https://github.com/cxfksword/jellyfin-plugin-metashark/releases/download/manifest/manifest_cn.json

小日子刮削 Metatube

部署后端服务,然后在插件中配置后端地址即可。这里比较关键的是需要配置代理,并且代理需要通过WebUI设置允许来自局域网的连接,否则无法获取到数据。请参考这篇文章Linux 下使用 Clash 作代理并配置开机启动 | 夜云泊个人博客。代理协议最好选择socks5。

  metatube:
    image: metatube/metatube-server:latest
    container_name: metatube
    ports:
      - 8180:8080
    restart: unless-stopped
    environment:
      - http_proxy=socks5://192.168.1.9:7891
      - https_proxy=socks5://192.168.1.9:7891
      - USER_UID=1000
      - USER_GID=1000
      - TZ=Asia/Shanghai
    networks:
      - br-net-metatube
    depends_on:
      - metatube-postgres
    volumes:
      - /root/sharedfolder/appdata/metatube/run:/var/run
    command: -dsn "postgres://metatube:metatube@/metatube?host=/var/run/postgresql" -port 8080 -db-auto-migrate -db-prepared-stmt

  metatube-postgres:
    image: postgres:15-alpine
    container_name: metatube-postgres
    restart: unless-stopped
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - POSTGRES_USER=metatube
      - POSTGRES_PASSWORD=metatube
      - POSTGRES_DB=metatube
      - TZ=Asia/Shanghai
    volumes:
      - /root/sharedfolder/appdata/metatube/db:/var/lib/postgresql/data
      - /root/sharedfolder/appdata/metatube/run:/var/run
    command: "-c TimeZone=Asia/Shanghai -c log_timezone=Asia/Shanghai -c listen_addresses='' -c unix_socket_permissions=0777"

networks:
  br-net-metatube:
    external: true

https://mirror.ghproxy.com/https://raw.githubusercontent.com/metatube-community/jellyfin-plugin-metatube/dist/manifest.json

欧美刮削 TheP**nDB

Google 搜索 TheP**nDB 注册账号,生成 API Key,然后在插件中配置即可。

https://mirror.ghproxy.com/https://raw.githubusercontent.com/ThePornDatabase/Jellyfin.Plugin.ThePornDB/main/manifest.json

跳过片头 Intro-Skip

https://mirror.ghproxy.com/https://raw.githubusercontent.com/ConfusedPolarBear/intro-skipper/master/manifest.json