JiJiDown
GitHub Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

配置文件

如何配置唧唧核心 (JiJiDownCore)

配置文件

JiJiDownCore 使用 config.yaml 作为默认配置文件。

配置目录

操作系统 路径
Windows %AppData%\JiJiDown
macOS ~/.config/JiJiDown
Linux ~/.config/JiJiDown

默认配置文件夹位置: %AppData%\JiJiDown

小贴士进入文件夹方法:

粘贴到 文件浏览器地址栏 中回车即可进入

image-20231103161230134

Win键 + R, 在运行中输入此地址后点确定即可进入

image-20231103161402579

默认配置文件夹位置: ~/.config/JiJiDown

小贴士进入文件夹方法:

  1. image-20231103183548744
  2. image-20231103183748877
  3. image-20231103184233760

默认配置文件夹位置: ~/.config/JiJiDown

小贴士进入文件夹方法:

  1. image-20231103185045798
  2. image-20231103185141488

配置文件校验

配置文件使用 yaml 格式, 自行编辑后请确保文件格式, 缩进正确. 可使用此工具验证格式是否合法 YAML、YML在线编辑(校验)器

image-20231103193333174

所有配置设置

以下是 唧唧核心 (JiJiDownCore) 定义的变量的完整列表。 用户可以选择覆盖配置文件中的这些值。

log-level: warning

log-level

默认值: info

日志输出等级, 可选值为 info (信息), warning (警告), error (错误), debug (调试), silent (无输出)

配置外部控制器端口

当需要外部接口操作 唧唧核心 (JiJiDownCore) 时才需要配置此部分。外部控制器是可选配置。

external-controller-port:
    grpc: 4000
    grpc-web: 4100
    restful-api: 64001

grpc

默认值: 4000

端口需要符合 IANA 标准, 有效端口范围 1024-49151, 端口号设置为 0 则关闭此功能, 不监听任何端口。

此端口使用 native gRPC protocol 适用于完全支持 gRPC 的语言使用。例如 Go, Python, C# / .NET, Swift, Java, Ruby, C++

有关 IANA 端口分配标准的更多信息,请访问以下 IANA 网站:服务名称和传输协议端口号注册表

grpc-web

默认值: 4100

端口需要符合 IANA 标准, 有效端口范围 1024-49151, 端口号设置为 0 则关闭此功能, 不监听任何端口。

由于浏览器限制,Web 客户端库实现了与 native gRPC protocol 不同的协议。仅供 gRPC-Web 使用

gRPC-Web代理的作用

restful-api

默认值: 64001

历史遗留端口, 后续更新中会删除. 固定使用 64001 端口, 请勿修改

用户信息

user-info:
    access-token: 
    refresh-token: 
    cookies: 
    raw-access-token: 
    raw-cookies: 
    hide-nickname: false

access-token

默认值: ""

此项由软件控制不可修改, 可以删除值。access-token 用于登录 TV、APP 接口。

refresh-token

默认值: ""

此项由软件控制不可修改, 可以删除值。refresh-token 用于刷新 access-token

cookies

默认值: ""

此项由软件控制不可修改, 可以删除值。cookies 用于登录 WEB 接口。

raw-access-token

默认值: ""

因某些原因无法使用软件中的登录功能时, 可以配置此项。raw-access-token 优先级高于 access-token, 设置后优先使用此项配置。

raw-cookies

默认值: ""

因某些原因无法使用软件中的登录功能时, 可以配置此项。raw-cookies 优先级高于 cookies, 设置后优先使用此项配置。

hide-nickname

默认值: false

Premium 用户专属选项, 可在接口中 (界面中) 隐藏用户信息。

下载任务

download-task:
    temp-dir: 
    download-dir: 
    ffmpeg-path: 
    max-task: 2
    download-speed-limit: 0
    disable-mcdn: false

temp-dir

默认值: ""

此项留空时默认位置, Windows: %TEMP%\JiJiDown\, Linux / macOS: /tmp/JiJiDown/

下载缓存目录, 用于处理视频流, 音频流, 字幕, 弹幕, 封面图的临时数据目录。此目录需要频繁读写建议设置为内存盘中, 加快速度的同时延长磁盘寿命。如果没有内存盘则推荐设置顺序为 RAM 磁盘 > SSD 磁盘 > HDD 磁盘 > 移动硬盘 > U 盘

download-dir

默认值: ""

此项留空时默认位置, Windows: %USERPROFILE%, Linux / macOS: $HOME

视频下载目录, 下载完成后的输出文件夹。

ffmpeg-path

默认值: ""

在需要指定版本, 路径时设置。此项留空时优先使用环境变量中的 ffmpeg, 最后为唧唧特别版本的 ffmpeg

此配置项用于指定 FFmpeg 工具的路径,以便在应用程序中使用 FFmpeg 执行多媒体处理任务。 FFmpeg 是一个强大的开源多媒体框架,可用于处理音频和视频文件,以及进行编码、解码、剪辑和转码操作。

max-task

默认值: 2

同时运行任务数量, 可选范围 1-5。屑站对单 IP 下载速度有限制, 太高没有任何速度提升, 反而速度会变慢。

download-speed-limit

默认值: 0

下载限速, 可选范围 1-1048576 (1 byte 到 1024 MiB/s)。0 为不限速。

disable-mcdn

默认值: false

设置为 true 时过滤 mCDN 下载源。

什么是 mCDN? CDN 分类

根据自己打开不同热度不同类型的视频结合网上搜集的信息,大致分为以下几种:

  • 服务商 CDN
    upos-sz-mirror****.bilivideo.com
    看域名应该是服务商方案
    腾讯:cos,cosb,coso1,coso2,bos
    金山:ks3,ks3b,ks3c,ks32
    七牛:kodo,kodob
    华为:hw,hwb,uphw,js
    阿卡迈(海外):akamai

  • 自建 CDN (?)
    cn-****-dx-v-**.bilivideo.com
    可能是 B 站的自建服务器其中可以看到省份和城市首字母缩写

  • MCDN
    xxxxx(ip地址).mcdn.bilivideo.com
    查了一圈只在京东云发现了 MCDN,可能是京东云无线宝相关?也可能是京东云+无线宝相互配合?
    怀疑 MCDN 包含无线宝的原因是 IP 段为家宽段。这就是导致下载速度慢, 视频卡顿的原因。

    xy222x140x19x174xy.mcdn.bilivideo.cn:4483
    xy112x64x111x240xy.mcdn.bilivideo.cn:4483
    
  • PCDN
    ********.v1d.szbdyd.com
    到这就完全看脸了,各个地区上行带宽不可控,你连接到的节点与你的距离不可控,极端环境下甚至无法顺利播放 1080+

JiJi Download Manager (JDM) 设置

jdm:
    max-retry: 5
    retry-wait: 10
    session-workers: 1
    part-workers: 5
    min-split-size: 30
    proxy-addr: 
    check-best-mirror: true
    cache-in-ram: false
    cache-in-ram-limit: 500
    insecure-skip-verify: false
    custom-root-certificates: 

max-retry

默认值: 5

HTTP 请求出错时最大尝试次数, 可选范围 1-10

retry-wait

默认值: 10

HTTP 请求出错时尝试间隔 (秒), 可选范围 1-600 (1秒 至 10分钟)。

session-workers

默认值: 1

同一个任务中, 同时下载的资源文件数量, 可选范围 1-3。如视频流, 音频流, 字幕, 弹幕, 封面图的资源文件。

part-workers

默认值: 5

每个资源文件的同时下载分段数量, 可选范围 1-8

min-split-size

默认值: 30

最小分段大小, 可选范围 1-100 MiB。例如 100 MiB 的文件, 使用默认值时会分段为 4 段。

屑站会在请求数据时提供突发速度, 然后慢慢降低速度。选择一个合适分段大小以满足突发速度的条件。这是一个提升速度的选项, 每个人的网络不一样, 请求的 CDN 也不一样没有通用设置。

proxy-addr

默认值: ""

使用代理下载, 在公司摸鱼并且公司网络有行为管理屏蔽了一些地址时可配置代理下载。

有效代理类型: httphttps

http://127.0.0.1:1080
https://127.0.0.1:1080
127.0.0.1:1080
https://[::1]:1080
[::1]:1080

check-best-mirror

默认值: true

检查最快的下载源, 会从所有下载地址中选择最快的源进行下载。

cache-in-ram

默认值: false

把下载的文件缓存在内存中, 对于内存大的用户可减少缓存碎片频繁读写磁盘。此项不同于 temp-dir 这是 JDM 专属选项。在没有内存盘但仍然想使用内存缓存分段碎片的用户可启用此项。

cache-in-ram-limit

默认值: 500

在内存中缓存大小限制, 可选范围 500-16384 MiB (500MiB 至 16 GiB)。当下载文件小于内存缓存大小限制时, 才会使用内存缓存下载文件。

insecure-skip-verify

默认值: false

当下载地址使用 HTTPS 时, 不验证服务器证书有效性。不了解此选项的请保持为 false

custom-root-certificates

默认值: ""

证书格式为 PEM, 自定义根证书文件路径。