跳转至

配置文件格式

录播姬的配置文件在设计之初没有考虑需要人工编写阅读的情况,所以可读性比较差。

因为录播姬所有版本的配置文件都是通用的,对于一般用户来说,推荐使用录播姬命令行版的 API 和 Web UI 进行控制,或使用录播姬桌面版生成配置文件。

配置文件是工作目录里的 config.json 文件。

如果需要手动修改配置文件,推荐使用的编辑器是 VSCode。
推荐添加 JSON Schema,会有自动补全和简单设置说明。

Schema 在 GitHub 仓库根文件夹里 configV3.schema.json

关于所有设置项的列表可以参考 软件设置

{
  "$schema":"https://raw.githubusercontent.com/BililiveRecorder/BililiveRecorder/dev/configV3.schema.json",
  "version": 3,
  "global": {},
  "rooms": []
}

层级结构

录播姬的设置是层级结构的,如果单房间没有设置值就会使用全局设置,如果全局没有设置值就会使用默认设置。

每个配置项都是下面这样的结构

{
  "HasValue": true,
  "Value": "value"
}

HasValue 代表有没有值,为 true 时使用此处设置的值,为 false 时使用更高一层的设置。

示例

配置文件示例
{
  "version": 2,
  "global": {
    "TimingStreamRetry": {
      "HasValue": false,
      "Value": 0
    },
    "TimingStreamConnect": {
      "HasValue": false,
      "Value": 0
    },
    "TimingDanmakuRetry": {
      "HasValue": false,
      "Value": 0
    },
    "TimingCheckInterval": {
      "HasValue": false,
      "Value": 0
    },
    "TimingWatchdogTimeout": {
      "HasValue": false,
      "Value": 0
    },
    "RecordDanmakuFlushInterval": {
      "HasValue": false,
      "Value": 0
    },
    "Cookie": {
      "HasValue": false,
      "Value": null
    },
    "WebHookUrls": {
      "HasValue": false,
      "Value": null
    },
    "WebHookUrlsV2": {
      "HasValue": false,
      "Value": null
    },
    "LiveApiHost": {
      "HasValue": false,
      "Value": null
    },
    "RecordFilenameFormat": {
      "HasValue": false,
      "Value": null
    },
    "WpfShowTitleAndArea": {
      "HasValue": true,
      "Value": true
    },
    "RecordMode": {
      "HasValue": false,
      "Value": 0
    },
    "CuttingMode": {
      "HasValue": true,
      "Value": 1
    },
    "CuttingNumber": {
      "HasValue": false,
      "Value": 0
    },
    "RecordDanmaku": {
      "HasValue": true,
      "Value": true
    },
    "RecordDanmakuRaw": {
      "HasValue": false,
      "Value": false
    },
    "RecordDanmakuSuperChat": {
      "HasValue": true,
      "Value": false
    },
    "RecordDanmakuGift": {
      "HasValue": true,
      "Value": false
    },
    "RecordDanmakuGuard": {
      "HasValue": true,
      "Value": false
    }
  },
  "rooms": [
    {
      "RoomId": {
        "HasValue": true,
        "Value": 5440
      },
      "AutoRecord": {
        "HasValue": true,
        "Value": false
      },
      "RecordMode": {
        "HasValue": false,
        "Value": 0
      },
      "CuttingMode": {
        "HasValue": false,
        "Value": 0
      },
      "CuttingNumber": {
        "HasValue": false,
        "Value": 0
      },
      "RecordDanmaku": {
        "HasValue": false,
        "Value": false
      },
      "RecordDanmakuRaw": {
        "HasValue": false,
        "Value": false
      },
      "RecordDanmakuSuperChat": {
        "HasValue": false,
        "Value": false
      },
      "RecordDanmakuGift": {
        "HasValue": false,
        "Value": false
      },
      "RecordDanmakuGuard": {
        "HasValue": false,
        "Value": false
      }
    }
  ]
}