charlesvestal/schwung

GitHub: charlesvestal/schwung

一个非官方扩展框架,通过并行 Shadow UI 为 Ableton Move 硬件添加自定义合成器、效果器和工具模块。

Stars: 210 | Forks: 23

# Schwung(原名 Move Everything) [![Schwung 视频](https://img.youtube.com/vi/AQ-5RZlg6gw/0.jpg)](https://www.youtube.com/watch?v=AQ-5RZlg6gw) 一个非官方框架,用于在 Ableton Move 上运行自定义乐器、效果器和控制器。 Schwung 添加了一个与 Move 原生系统并行运行的 Shadow UI,使得额外的 Synth、FX 和其他工具能够在常规 UI 旁边运行。 ## 许可证 MIT - 请参阅 [LICENSE](LICENSE) 和 [THIRD_PARTY_LICENSES](THIRD_PARTY_LICENSES) 如果没有 [Move Anything](https://github.com/bobbydigitales/move-anything) 项目的工作成果,Schwung 将无法实现,该项目提供了访问 Move 硬件和系统功能的基础技术。感谢 @talktogreg、@impbox、@deets,特别是 @bobbyd 的这些贡献。 ## 重要声明 本项目绝未被 Ableton 批准、认可或支持。 本项目会修改您 Ableton Move 上的软件。在安装之前,请备份重要的 Set 和采样,并熟悉 DFU 恢复模式(在 [Centercode](https://ableton.centercode.com/project/article/item.html?cap=ecd3942a1fe3405eb27a806608401a0b&arttypeid=%7Be70be312-f44a-418b-bb74-ed1030e3a49a%7D&artid=%7BC0A2D9E2-D52F-4DEB-8BEE-356B65C8942E%7D) 上),以防您需要恢复设备。安装后 Move 仍可正常工作;Schwung 与其并行运行。 这是名副其实的“Hack(修改/破解)”。它并不稳定,也不适合作为日常主力工具,但它很有趣,而且超级好玩。请知悉风险,并尽情享受! 另外:这些代码很大程度上是由 AI 编程助手编写的,并在人类监督下完成。如果这让你感到不安或你不认同这种方法,完全没问题!感谢你的关注。 ## 安装 ### 桌面安装程序(推荐) 下载适合您平台的 [Schwung 安装程序](https://github.com/charlesvestal/schwung-installer/releases/latest)(macOS、Windows、Linux)。它通过图形界面处理 SSH 设置、模块选择和升级。桌面安装程序也支持屏幕阅读器访问。 ### 命令行 **前置条件:** - Move 已连接 WiFi - 一台位于同一网络的电脑 - **Mac/Linux:** 终端 - **Windows:** [Git Bash](https://git-scm.com/downloads)(随 Git for Windows 附带) **安装:** ``` curl -L https://raw.githubusercontent.com/charlesvestal/schwung/main/scripts/install.sh | sh ``` **仅屏幕阅读器(无障碍安装):** ``` curl -sL https://raw.githubusercontent.com/charlesvestal/schwung/main/scripts/install.sh | sh -s -- --enable-screen-reader --disable-shadow-ui ``` _注意:使用 `-sL`(静默模式)以减少输出,适合屏幕阅读器。_ 安装程序将: 1. **指导您完成 SSH 设置**(如果需要)(生成密钥,展示如何将其添加到 Move) 2. **下载并安装** Schwung 框架 3. **提供模块安装选项**(合成器、效果器)来自模块商店 4. **复制资源** 以供需要的模块使用(ROM、SoundFonts 等) **安装选项:** ``` # 默认启用屏幕阅读器 (TTS 公告) ./scripts/install.sh local --enable-screen-reader # 仅安装屏幕阅读器,不带 UI 功能 ./scripts/install.sh --enable-screen-reader --disable-shadow-ui # 跳过模块安装提示 ./scripts/install.sh --skip-modules ``` 要管理您 Move 上的文件,您也可以使用 [Cyberduck](https://cyberduck.io)(通过 SFTP 连接到 `move.local`,选择您的 SSH 私钥)。 有关故障排除和手动设置,请参阅 [MANUAL.md](MANUAL.md)。 ## 卸载 ``` curl -L https://raw.githubusercontent.com/charlesvestal/schwung/main/scripts/uninstall.sh | sh ``` 默认情况下,卸载前会将非活动的 Set Pages 备份导出到 `/data/UserData/UserLibrary/Schwung Backups/Set Pages/`,然后再移除 Schwung。 若要永久删除 Schwung 数据而不导出备份: ``` curl -L https://raw.githubusercontent.com/charlesvestal/schwung/main/scripts/uninstall.sh | sh -s -- --purge-data ``` ## 模式 - **Shadow UI**:与 Move 原生系统并行运行自定义信号链,以便您可以叠加额外的合成器和效果器。使用 Shift+Vol+Track(以及 +Menu)访问这些信号链插槽。 - **Overtake 模块**:暂时接管 Move UI 的全屏模块(例如 MIDI 控制器应用)。使用 Shift+Vol+Jog 点击访问 Overtake 模块。 - **量化采样器**:Shift+Sample 打开一个采样器,录制到 `Samples/Schwung/Resampler/YYYY-MM-DD/`。选择重采样(包括 Schwung 合成器)或 Move Input,设置时长(以小节为单位),录制会在音符事件或按下播放时开始。 - **跳回录制**:Shift+Capture 将最后 30 秒的音频写入 `Samples/Schwung/Skipback/YYYY-MM-DD/`。 - **屏幕阅读器**:用于无障碍访问的可选 TTS 语音播报。通过 Shadow UI 设置切换,或在禁用 Shadow UI 时使用 Shift+Menu。 在 **全局设置 > 显示 > 叠加旋钮 (Global Settings > Display > Overlay Knobs)** 中,您可以将旋钮叠加触发方式更改为 `+Shift`(默认)、`+Jog Touch` 或 `Off`。如果 `Shift+Knob` 干扰原生 Move 操作(如精细控制),请使用 `+Jog Touch` 或 `Off`。 使用详情、快捷键和工作流程记录在 [MANUAL.md](MANUAL.md) 中。 ## 原生采样器桥接 在 **Master FX > 设置** 中,`Resample Src` 控制是否将 Schwung 音频馈送到原生 Move 采样工作流中: - `Off`:禁用(默认) - `Replace`:用 Schwung 主输出替换原生采样器输入 `Mix` 仅作为遗留配置值保留,并被视为 `Replace`。 为了获得此功能最可靠的原生采样行为: - 将 `Resample Src` 设置为 **Replace** - 在 Move 的采样器中,将采样源设置为 **Line In** - 将监听设置为 **Off** 如果监听开启(或源/路由配置不同),可能会发生音频反馈。 ## 文档 - [MANUAL.md](MANUAL.md) - 用户指南和快捷键 - [BUILDING.md](BUILDING.md) - 构建说明 - [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) - 系统和 Shadow UI 架构 - [docs/MODULES.md](docs/MODULES.md) - 模块开发、Shadow UI 集成、Overtake 模块 - [docs/API.md](docs/API.md) - JavaScript 模块 API - [src/modules/chain/README.md](src/modules/chain/README.md) - 信号链模块说明 ## 可用模块 模块可通过模块商店或桌面安装程序安装。完整详情请参阅 [module-catalog.json](module-catalog.json)。 ### 音源 | 模块 | 描述 | 作者 | |--------|-------------|--------| | [Dexed](https://github.com/charlesvestal/schwung-dx7) | 6 算子 FM 合成器 (Dexed/MSFA),支持 .syx 音色 | Dexed/MSFA 由 google/asb2m10 开发 (移植: charlesvestal) | | [SF2 Synth](https://github.com/charlesvestal/schwung-sf2) | 使用 FluidLite 的 SoundFont (.sf2) 合成器 | FluidLite 由 Robin Lobel 开发 (移植: charlesvestal) | | [SFZ Player](https://github.com/charlesvestal/schwung-sfz) | 使用 sfizz 引擎的 SFZ 和 DecentSampler (.dspreset) 采样播放器 | sfizz 由 sfztools 开发 (移植: charlesvestal) | | [Mini-JV](https://github.com/charlesvestal/schwung-jv880) | 基于 ROM 的 PCM 波表合成器模拟器 | nukeykt/giulioz (移植: charlesvestal) | | [OB-Xd](https://github.com/charlesvestal/schwung-obxd) | 基于 Oberheim OB-X 的虚拟模拟合成器 | reales (移植: charlesvestal) | | [Braids](https://github.com/charlesvestal/schwung-braids) | 具有 47 种合成算法的宏振荡器 (Mutable Instruments) | Emilie Gillet (移植: charlesvestal) | | [Hera](https://github.com/charlesvestal/schwung-hera) | 具有 BBD 合唱效果的 Juno-60 模拟合成器 | jpcima (移植: charlesvestal) | | [Surge XT](https://github.com/charlesvestal/schwung-surge) | 混合合成器 - 波表、FM、减法及物理建模,拥有 600+ 预设 | Surge Synth Team (移植: charlesvestal) | | [RaffoSynth](https://github.com/charlesvestal/schwung-moog) | 具有 4 个振荡器和 Moog 梯形滤波器的单音合成器 | Nicolas Roulet, Julian Palladino (移植: charlesvestal) | | [Webstream](https://github.com/charlesvestal/schwung-webstream) | 网络音频搜索和流媒体生成器,捆绑 yt-dlp + ffmpeg 运行时 | charlesvestal | | [Radio Garden](https://github.com/charlesvestal/schwung-radiogarden) | 通过 Radio Garden 浏览并流式传输全球 200 个城市的直播电台 | charlesvestal | | [AirPlay](https://github.com/charlesvestal/schwung-airplay) | AirPlay 音频接收器 - 从 iPhone、iPad 或 Mac 流式传输到 Move 的信号链 | charlesvestal | | [Chiptune](https://github.com/charlesvestal/schwung-chiptune) | NES 2A03 和 Game Boy DMG 芯片音乐合成器,含 32 个预设 | blargg (移植: charlesvestal) | | [Osirus](https://github.com/charlesvestal/schwung-virus) | 通过 Gearmulator JIT 引擎实现的 Access Virus DSP56300 模拟器 | dsp56300/gearmulator (移植: charlesvestal) | | [Granny](https://github.com/handcraftedcc/move-everything-granny) | 具有扫描控制和文件浏览器的颗粒采样乐器 | handcraftedcc | | [MrHyde](https://github.com/handcraftedcc/move-everything-mrhyde) | 灵感来自 MicroFreak 的宏振荡器,基于 Mutable Instruments Plaits | handcraftedcc | | [MrDrums](https://github.com/handcraftedcc/move-everything-mrdrums) | 16 垫采样鼓模块,具有每垫控制和动态垫编辑功能 | handcraftedcc | | [REX Player](https://github.com/charlesvestal/schwung-rex) | Propellerhead ReCycle (.rx2/.rex) 切片播放器,带有 DWOP 无损解码器 | charlesvestal | | [HUSH ONE](https://github.com/charlesvestal/schwung-hush1) | 模拟 Roland SH-101 的单音减法合成器 | charlesvestal | | [NuSaw](https://github.com/charlesvestal/schwung-nusaw) | 失谐复音多锯齿波合成器,带谐振滤波器、双包络、合唱和延迟 | charlesvestal | | [Plaits](https://github.com/j3threejay/move-anything-plaits) | 具有 24 种合成引擎的宏振荡器 (Mutable Instruments Plaits) | Emilie Gillet (移植: charlesvestal) | | [Sample Slicer](https://github.com/j3threejay/move-anything-slicer) | 具有瞬态检测功能的采样切片器,支持 32 垫复音播放 | Justin Joe | | [Weird Dreams](https://github.com/fillioning/weird-dreams-move) | 8 复音模拟鼓机 — 64 个套鼓,41 个音色预设,动态垫选音色编辑,主总线 FX | fillioning (DSP: dfilaretti) | ### 音频 FX | 模块 | 描述 | 作者 | |--------|-------------|--------| | [CloudSeed](https://github.com/charlesvestal/schwung-cloudseed) | Ghost Note Audio 开发的算法混响 | Ghost Note Audio (移植: charlesvestal) | | [TAPESCAM](https://github.com/charlesvestal/schwung-tapescam) | 磁带饱和和退化效果 | Charles Vestal | | [PSX Verb](https://github.com/charlesvestal/schwung-psxverb) | PlayStation 1 SPU 混响模拟 | Charles Vestal | | [TapeDelay](https://github.com/charlesvestal/schwung-space-delay) | 带有颤动和音调塑形的磁带延迟 | Charles Vestal | | [Junologue Chorus](https://github.com/charlesvestal/schwung-junologue-chorus) | Junologue 合唱 - Juno-60 合唱模拟(I、I+II、II 模式) | Peter Allwin (移植: charlesvestal) | | [NAM](https://github.com/charlesvestal/schwung-nam) | Neural Amp Modeler - 神经网络吉他放大器/效果模拟 | NeuralAudio 由 Mike Oliphant 开发 (移植: charlesvestal) | | [Ducker](https://github.com/charlesvestal/schwung-ducker) | MIDI 触发的侧链闪避器 - 无需音频侧链的经典泵浦效果 | charlesvestal | | [CLAP FX](https://github.com/charlesvestal/schwung-clap) | CLAP 音频效果插件宿主 | charlesvestal | | [Gate](https://github.com/charlesvestal/schwung-gate) | 噪声门和向下扩展器 | charlesvestal | | [Key Detect](https://github.com/charlesvestal/schwung-keydetect) | 检测通过它的音频的调性 | charlesvestal | | [Vocoder](https://github.com/charlesvestal/schwung-vocoder) | 声码器 - 使用麦克风/线路输入作为调制器来塑造合成器载波 | charlesvestal | | [Usefulity](https://github.com/charlesvestal/schwung-usefulity) | 立体声实用工具 - 声道选择、宽度、低音单声道、增益、声像、相位、静音、DC 滤波器 | charlesvestal | | [Boris Granular](https://github.com/fillioning/move-anything-boris) | 实时颗粒音频效果,支持实时输入捕获和 MIDI 同步 | Alessandro Gaiba (移植: fillioning) | | [Super Boom](https://github.com/fillioning/super-boom-move) | 灵感来自 OTO Boum 的主总线破坏器,具有 8 频段滤波器组、10 种前置放大模型、声码器模式和磁带级 | fillioning | | [Verglashttps://github.com/fillioning/move-everything-verglas) | Mutable Instruments Clouds 颗粒处理器 — 颗粒、拉伸、循环器和频谱模式,带输出滤波器和限制器 | Emilie Gillet (移植: fillioning) | | [Dragonfly Hall](https://github.com/wolfrenegade1976/move-anything-dragonfly-hall) | Dragonfly Hall 混响 — 华丽的 Hall 混响,具有 25 个预设和完整的参数控制 | bradcoomber | | [Punch-In FX](https://github.com/fillioning/MovePunchFX) | PO-33 风格的 Punch-in 效果,带压力控制 — 左侧 4x4 垫网格上有 16 种效果 | fillioning | | [Structor](https://github.com/fillioning/move-everything-structor) | 具象音乐声音解构/重构器 — 8 种算法模式,具有每颗粒 DJ 滤波、随机化和音序器 | fillioning | ### MIDI FX | 模块 | 描述 | 作者 | |--------|-------------|--------| | [Super Arp](https://github.com/handcraftedcc/move-everything-superarp) | 高级 MIDI 琶音器,具有进行模式、节奏预设和种子修饰符 | handcraftedcc | | [Eucalypso](https://github.com/handcraftedcc/move-everything-eucalypso) | 确定 4 通道欧几里得 MIDI 音序器,具有保持/音阶音符寄存器、重触发模式和种子调制 | handcraftedcc | ### Overtake | 模块 | 描述 | 作者 | |--------|-------------|--------| | [M8 LPP Emulator](https://github.com/charlesvestal/schwung-m8) | 用于 Dirtywave M8 的 Novation Launchpad Pro 模拟 | bobbydigitales (移植: charlesvestal) | | [SID Control](https://github.com/charlesvestal/schwung-sidcontrol) | SIDaster III 合成器的 MIDI 控制器 | charlesvestal | | [Custom MIDI Control](https://github.com/chaolue/move-anything-control) | 自定义 MIDI 控制器,具有 16 个可配置的垫/旋钮/按钮库 | chaolue | | [Performance FX](https://github.com/charlesvestal/schwung-performance-fx) | 32 种 Punch-in 音频 FX,具有压力控制、锁定和速度同步 | charlesvestal | ### 工具 | 模块 | 描述 | 作者 | |--------|-------------|--------| | [AutoSample](https://github.com/charlesvestal/schwung-autosample) | 自动对外部 MIDI 设备进行采样以创建多重采样的 SFZ 乐器 | charlesvestal | | [Wave Edit](https://github.com/charlesvestal/schwung-waveform-editor) | 在 Move 上修剪、增益调整和编辑音频文件 | charlesvestal | | [Time Stretch](https://github.com/charlesvestal/schwung-stretch) | 使用 Bungee 进行实时音频时间拉伸 | charlesvestal | | [Stems](https://github.com/charlesvestal/schwung-stems) | 将音频分轨为:鼓、人声、伴奏(0.5 倍实时) | charlesvestal | | [DJ Deck](https://github.com/djhardrich/move-anything-dj) | CDJ/唱机风格的 4 轨分轨播放器,带有 Bungee 时间拉伸/变调 | DJ Hard Rich | | [Tuner](https://github.com/CatsAreCool710/Move-Everything-Tuner) | 半音阶和乐器调音器,带步进指南反馈 | Jeremiah Ticket | ## 相关仓库 **安装程序:** - [move-everything-installer](https://github.com/charlesvestal/schwung-installer) - 跨平台桌面安装程序 ## 社区 - Discord: [https://discord.gg/Zn33eRvTyK](https://discord.gg/GHWaZCC9bQ) - 贡献者: @talktogreg, @impbox, @deets, @bobbyd, @chaolue, @charlesvestal ## AI 辅助免责声明 本模块是 Schwung 的一部分,并在 AI 辅助下开发,包括 Claude、Codex 和其他 AI 助手。 所有架构、实现和发布决策均由人类维护者审查。 AI 辅助的内容可能仍包含错误,因此请在生产使用前验证功能、安全性和许可证兼容性。
标签:Ableton, CSV导出, Cutter, DFU模式, Move, Shadow UI, SSH, 内存分配, 合成器, 客户端加密, 嵌入式开发, 开源, 插件框架, 数据可视化, 桌面安装程序, 模块化, 电子音乐, 硬件修改, 自定义控制器, 非官方, 音乐制作, 音乐工具, 音效