返回顶部
H

Hum2Song哼唱成曲

Hum2Song turns a hummed or sung melody into a complete song with local audio processing, MIDI extraction, and optional AI-assisted arrangement, without uploading sensitive recordings to third-party services.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 3.0.4
安全检测
已通过
220
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

Hum2Song

Hum2Song

通过本地音频处理将哼唱的旋律转化为完整的歌曲,无需将敏感录音上传至第三方服务。



概述

本技能使用本地AI模型将用户的哼唱或演唱转化为完整歌曲。整个处理流程在您的机器上运行——没有任何音频数据发送到外部服务。

处理流程:

  1. 1. 🎤 音频输入 → 2. 🎵 MIDI提取 → 3. 🎼 音乐生成 → 4. 🎧 完整歌曲



触发条件

当用户出现以下情况时使用本技能:

  • - 哼唱或演唱一段旋律并希望将其转化为完整歌曲
  • 拥有哼唱/演唱的音频录音
  • 希望根据自己的旋律创意创作音乐
  • 要求把我的哼唱变成一首歌



环境要求

系统依赖

bash

macOS


brew install ffmpeg fluidsynth

Ubuntu/Debian

sudo apt-get install ffmpeg fluidsynth

Python包

pip install basic-pitch pretty_midi librosa soundfile numpy

可选:ACE-Step音乐生成(用户自行选择)

ACE-Step是一个可选的本地AI。由用户决定是否安装。

bash

用户如需AI生成功能则手动安装


否则,默认SoundFont合成无需AI即可工作


git clone https://github.com/ace-step/ace-step.git
pip install -r ace-step/requirements.txt

注意: 首次使用会下载约4GB模型权重到本地缓存。不会自动下载。



核心工作流程

步骤1:从音频提取MIDI

使用Basic Pitch(Spotify的开源工具)将哼唱转换为MIDI:

python
from basic_pitch.inference import predict
from basicpitch import ICASSP2022MODELPATH

将音频转换为MIDI

modeloutput, mididata, note_events = predict(humming.wav) midi_data.write(extracted.mid)

步骤2:优化MIDI结构

清理并优化提取的MIDI:

python
import pretty_midi

加载提取的MIDI

pm = pretty_midi.PrettyMIDI(extracted.mid)

量化音符以修正时值

for instrument in pm.instruments: for note in instrument.notes: note.start = round(note.start * 4) / 4 # 量化为十六分音符 note.end = round(note.end * 4) / 4

保存优化后的MIDI

pm.write(enhanced.mid)

步骤3:生成完整歌曲

选项A:ACE-Step(本地AI,可选)

仅当用户已手动安装ACE-Step时使用:

python
from ace_step import MusicGenerator

加载模型(本地运行,首次使用下载权重)

generator = MusicGenerator.from_pretrained(ace-step/base)

从MIDI生成音乐

audio = generator.generatefrommidi( midi_path=enhanced.mid, style=pop, mood=upbeat, duration=120 )

保存结果

audio.save(complete_song.mp3)

选项B:MIDI + SoundFont(无需AI)

python
import pretty_midi

加载MIDI

pm = pretty_midi.PrettyMIDI(enhanced.mid)

使用高质量SoundFont合成

audiodata = pm.fluidsynth(fs=44100, sf2path=path/to/good_soundfont.sf2)

保存为WAV

import soundfile as sf sf.write(completesong.wav, audiodata, 44100)

使用方法

快速开始

bash

运行完整流程


python ~/.openclaw/skills/hum2song/scripts/hum2song.py \
--input my_humming.wav \
--style pop \
--mood upbeat \
--output my_song.mp3

参数说明

参数描述选项
--input输入音频文件任意音频格式
--style
音乐风格 | pop, rock, jazz, classical, electronic | | --mood | 歌曲情绪 | upbeat, calm, energetic, melancholic | | --duration | 目标时长(秒) | 30-300 | | --output | 输出文件路径 | .mp3, .wav, .mid |

响应格式

用户提供音频时

🎵 我将把您的哼唱转化为完整歌曲!

处理流程:
1️⃣ 从您的音频中提取旋律...
2️⃣ 转换为MIDI记谱...
3️⃣ 生成完整编曲...
4️⃣ 渲染最终歌曲...

⏱️ 预计时间:2-5分钟

设置:
• 风格:{style}
• 情绪:{mood}
• 时长:{duration}秒

正在处理... 🎧

处理完成时

✅ 您的歌曲已就绪!

📁 输出:{output_path}
🎼 格式:{format}
⏱️ 时长:{actual_duration}秒

已完成的操作:
• 从您的哼唱中提取了{note_count}个音符
• 生成了{instrument_count}条乐器轨道
• 应用了{style}风格和{mood}情绪

💡 您可以:
• 调整风格/情绪并重新生成
• 导出为MIDI在DAW中编辑
• 尝试不同的AI模型以获得变化



交互示例

示例1:用户上传哼唱音频

用户:[上传哼唱音频]

AI:🎵 我将把您的哼唱转化为完整歌曲!

处理流程:
1️⃣ 从您的音频中提取旋律...
2️⃣ 转换为MIDI记谱...
3️⃣ 生成完整编曲...
4️⃣ 渲染最终歌曲...

⏱️ 预计时间:2-5分钟

您想要什么风格?
• 流行(默认)
• 摇滚
• 爵士
• 古典
• 电子

示例2:用户指定风格

用户:把这个哼唱变成爵士歌曲

AI:🎷 爵士风格转换即将开始!

正在以爵士风格处理您的哼唱:
• 摇摆节奏
• 行走低音线
• 钢琴和弦
• 刷子鼓

[处理中...]

✅ 您的爵士歌曲已就绪!
📁 输出:~/Music/hum2songjazz20240321.mp3

示例3:用户需要MIDI输出

用户:能给我MIDI文件让我自己编辑吗?

AI:🎼 当然可以!

我将生成:
• 提取的MIDI(原始旋律)
• 优化后的MIDI(量化、清理)
• 完整编曲MIDI(所有乐器)

所有文件将保存在:~/Music/hum2song_export/



技术细节

音频处理

输入格式: WAV, MP3, M4A, FLAC, OGG
采样率: 自动转换为44.1kHz
声道: 单声道/立体声 → 处理时转为单声道

MIDI提取

模型: Basic Pitch(Spotify,ICASSP 2022)
音高范围: C1至C8
音符检测: 支持复音
时值分辨率: 10ms

音乐生成

ACE-Step模型:

  • - 大小:1B参数(基础版),3B(大版)
  • 训练:授权音乐数据集
  • 输出:44.1kHz立体声
  • 延迟:在M1 Mac上约1秒生成1秒音频

SoundFont合成:

  • - 无需AI
  • 实时合成
  • 高质量乐器音色
  • 确定性输出



局限性

  • - 需要本地Python环境配置
  • ACE-Step基础模型需要约4GB内存
  • 处理时间:2分钟歌曲约需2-5分钟
  • 质量取决于哼唱的清晰度
  • 复杂和声可能无法完全捕捉

隐私与安全

所有处理均在本地进行 - 您的音频永远不会离开您的机器
无需云服务 - 无需API密钥或外部上传
开源工具 - Basic Pitch, ACE-Step, Pretty MIDI
无数据收集 - 不会记录或传输任何内容



参考资料

  • - basic-pitch.md - 音频转MIDI提取
  • ace-step.md - AI音乐生成
  • pretty_midi.md - MIDI处理
  • librosa.md - 音频分析工具

技术信息

属性
名称Hum2Song
标识符
hum2song | | 版本 | 3.0.4 | | 类别 | 音频/音乐生成 | | 标签 | 音乐, 音频, MIDI, AI生成,

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 hum2song-1776199622 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 hum2song-1776199622 技能

通过命令行安装

skillhub install hum2song-1776199622

下载

⬇ 下载 Hum2Song v3.0.4(免费)

文件大小: 10.65 KB | 发布时间: 2026-4-17 15:02

v3.0.4 最新 2026-4-17 15:02
Add explicit frontmatter description so ClawHub refreshes the public summary in English.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部