# 调性匹配器

检测采样或循环的调性（Krumhansl-Schmuckler 色度分布）并移调到项目调——移调后输出调性复检验证。

> 标准页面: https://elysiatools.com/zh/tools/key-matcher

- **分类:** Media

- **关键词:** 调性匹配, 采样移调, 调性检测, 色度, krumhansl, camelot, 移调, 采样匹配调性, 循环移调

## 概述

调性检测对单遍 FFT 提取的色度运行 Krumhansl-Schmuckler 调性轮廓（附 Camelot 编码方便 DJ 使用）。移调距离是让检测根音移动到目标根音的最小半音偏移，始终限制在 ±6 半音内，循环不会被拖到八度之外。移调优先使用保留共振峰的 rubberband 滤镜（人声保持音色）；FFmpeg 构建不含 rubberband 时回退到 asetrate 重采样链——共振峰会随音高移动，对采样无碍、对人声可闻。移调后结果会重新分析，输出的检测调性与目标并排报告，匹配全程可验证。注意移调只移动音高、无法改变调式：小调循环匹配大调目标只对齐主音并给出警告，不做假承诺。

## 输入项

- **采样或循环** (file)
- **目标调** (select)
- **目标调式** (select)
- **保留共振峰（rubberband）** (checkbox)
- **输出格式** (select)

## 适用场景

- 将外部旋律循环或采样素材移调对齐到宿主工程的目标调性。
- 为人声采样进行变调处理并保留原始共振峰音色。
- 快速检测混音素材的调性与 Camelot 轮盘编码以辅助 DJ 和声混音。

## 工作原理

- 基于单遍快速傅里叶变换（FFT）提取音频色度特征，运用 Krumhansl-Schmuckler 算法计算出当前调性与 Camelot 编码。
- 计算当前根音到目标根音的最短半音偏移量（限制在 ±6 半音以内），防止音频跨八度产生严重失真。
- 使用 Rubberband 算法在保留共振峰的前提下执行变调处理，或通过重采样链平移音高。
- 对处理后的音频重新执行调性检测，将最终输出调性与目标调并排对比，验证移调结果并导出指定格式。

## 使用案例

- 音乐制作中将不同音源包中的吉他或合成器循环统一移调至项目主调。
- 播客或混音工程中微调人声片段音高并保持自然的人声音色。
- DJ 在准备曲目库时对关键过渡采样进行音高匹配与 Camelot 调性核验。

## 常见问题

### 移调能把小调循环直接变成大调吗？

不能。移调仅对齐主音高低，无法更改音频内在的音阶调式结构；若调式不同，系统将对齐主音并给出提示。

### 什么是“保留共振峰（rubberband）”选项？

该选项可在改变音高的同时维持人声或乐器的原始喉腔共鸣音色，避免出现“花栗鼠”或低沉怪异的人声失真。

### 移调的最大半音跨度是多少？

移调距离严格限制在 ±6 个半音以内，系统会自动寻找最近的同名音高进行位移。

### 支持哪些音频格式导出？

支持将处理后的音频导出为 WAV、MP3、FLAC、M4A 或 OGG 格式。

### 单次处理支持的最大音频文件大小是多少？

支持上传最大 100MB 的音频文件进行调性检测与移调。

## 相关工具

- [添加静音](https://elysiatools.com/zh/tools/audio-add-silence): 在音频开头或结尾添加指定时长的静音
- [空气频段增强器](https://elysiatools.com/zh/tools/audio-air-band-enhancer): 用高频空气搁架加谐波激励器让发闷的人声或母带更明亮——基于 FFmpeg 搭建的 Aphex Aural Exciter 架构。
- [专辑响度匹配器](https://elysiatools.com/zh/tools/audio-album-loudness-matcher): 按 album-gain 思路把一批轨道匹配到同一目标响度：专辑模式整张一个增益以保留刻意的轨间动态，混合模式只收敛离群轨，逐轨模式全部拉平。
- [环境音循环生成器](https://elysiatools.com/zh/tools/audio-ambience-loop-generator): 从片段中提取背景环境音/房间底噪,生成任意长度的无缝循环。
- [音频自动淡化设计器](https://elysiatools.com/zh/tools/audio-automatic-fade-designer): 设计并渲染音乐化的淡入/淡出：按 BPM 折算小节长度，或从检测到的静音自动推导时长；淡化贴着真实音乐区间摆放，默认对数曲线，可选静音修剪。
- [批量音频归一化](https://elysiatools.com/zh/tools/audio-batch-normalize): 将多个音频文件批量归一化到目标峰值电平，使批量文件的音量一致
- [呼吸控制编辑器](https://elysiatools.com/zh/tools/audio-breath-control-editor): 检测语音中的呼吸声,通过自然交叉淡化来降低、移除或保留。
- [字幕时间偏移器](https://elysiatools.com/zh/tools/audio-caption-timing-shifter): 将 SRT 或 WebVTT 字幕对齐到可能的语音起始点，或按手动偏移移动。

## 示例

- [无版权FLAC音频样本](https://elysiatools.com/zh/samples/flac-samples): 用于测试与开发的 FLAC 无损音频样本集合，包含自然声音与冥想音乐
- [无版权MP3音频样本](https://elysiatools.com/zh/samples/mp3-samples): 免费使用和测试的无版权音频样本集合，包括自然声音、冥想音乐和环境音频，适用于测试和开发目的
- [无版权WAV音频样本](https://elysiatools.com/zh/samples/wav-samples): 用于测试与开发的未压缩 WAV 音频样本集合，包含自然声音与冥想音乐
- [无版权原始 PCM 音频样本](https://elysiatools.com/zh/samples/pcm-samples): 适合查看波形、播放和音频格式转换使用的原始 PCM s16le 音频样本，包含自然环境音与放松音乐
