← 返回 无痛入门音乐科技

「MIR-CC」2026年用Claude Code就可以无痛入门音乐科技

2026年2月14日 17:53 · 无痛入门音乐科技

自从2025年末Claude Opus 4.5模型发布后,博主就再也没写过代码了,每天都在和agents对话,只需要开发不同的plugins和bots做自动化。现沉迷在前不久发布的4.6中,让这个公众号时隔3年发篇新的科普文章!

♬ 本文为MIR音乐信息检索系列的第14篇文章 ♬
本文将展示在Claude Code (以下简称CC) 的作用下,该公众号在GitHub上的代码仓库intro2musictech做了哪些更新

『环境配置现代化』

过去,读者需要先安装Anaconda,再创建conda虚拟环境,再用pip安装依赖。步骤多、容易出错,尤其对零编程基础的读者来说是一道不小的门槛。现在项目全面迁移到uv包管理器:

另外,修复了所有notebook使其不再调用过时的API,还美化了README页面。

以上所有更新修复,在CC理解了该项目后(首次接触可使用 /init 指令生成CLAUDE.md文件),大概不到10分钟就能完成 ✅ 

我另外调用了自己平时发起Pull Request的指令,自动创建PR#10, #11, #12。

☞ https://github.com/beiciliang/intro2musictech/pulls?q=is%3Aclosed+author%3Abeiciliang


『交互式 Notebook』

这是本次更新的重点,一个全新的交互式教程 MIR-CC.py,基于marimo框架构建。与传统Jupyter Notebook不同,marimo notebook的每个单元格都是响应式的:修改一个参数,所有依赖它的图表会自动重新计算和刷新,无需手动重跑。

整个教程以「和 Claude Code 结对编程」为主线,模拟读者向 AI 提问、AI 给出代码并实时运行的学习场景,分为六个部分:

Part 0 — 开场白: 介绍Claude Code是什么、为什么它能帮助零基础读者学习音乐科技,集中导入所有依赖库。

Part 1 — 加载与聆听: 加载音频文件,展示采样率、时长等元数据,支持直接在页面内播放音频,并绘制波形图。这是MIR的第一步:「先听到、再看到」。

Part 2 — 交互式STFT频谱图: 这是交互性最强的部分。读者可以通过下拉菜单从 5 个音频样本中选择,然后拖动两个滑块实时调节:

频谱图会随滑块变化即时刷新,让读者直观感受「时频分辨率的取舍」这一核心概念,而不只是看公式。

Part 3 — 梅尔频谱图: 将线性频谱与梅尔频谱并排对比展示,并提供可调节的n_mels参数。梅尔刻度模拟人耳对频率的非线性感知,是语音识别和音乐分析中最常用的特征表示之一。

Part 4 — 实用MIR任务: 展示三个经典的音乐信息检索应用:

Part 5 — 音频特征仪表盘: 将六种核心特征可视化整合到一个标签页界面中:波形、频谱图、梅尔频谱图、色度图、MFCC(梅尔频率倒谱系数)、频谱质心 + 过零率。读者可以切换标签页,一站式总览同一段音频的多维度特征。

Part 6 — 总结与展望: 回顾所学内容,提供进一步学习的资源链接。

本地运行指令:

uv syncuv run marimo edit MIR-CC.py

☞ 顺便展示一下做这个更新时CC自动发起的PR#13

Image

『在线预览』

并非所有读者都希望在本地搭建环境才能看到上面的教程内容。PR#14将 MIR-CC notebook 通过marimo export html导出为一个完整的静态HTML文件(docs/index.html),并配置GitHub Pages从main分支的/docs目录部署。

读者只需打开这个链接即可在浏览器中看到教程内容和所有预渲染的图表:

☞ https://beiciliang.github.io/intro2musictech/

需要注意的是,静态版本中的交互组件(滑块、下拉框、标签页切换)仅作为视觉展示,无法实际拖动操作。如果想要完整的交互体验,仍然需要在本地通过 uv run marimo edit MIR-CC.py 运行。

以下为截图:

Image

现在回看3年前的「INFO」分享我的MIR研发技术栈自己都觉得过时,2026年的编程体验一定还会有更加翻天覆地的变化,希望我还能想起更新这个公众号,感谢大家一直以来的关注!

击下方阅读原文可直达intro2musictech代码仓库

☞ https://github.com/beiciliang/intro2musictech