跳转到内容
搜索文档

改几个音符,听见新的旋律

继续 Morning song Project,挑一处想改的旋律。先改几个音符,看谱试听,独立保存选定乐谱,再让它尝试新的风格。简单 MIDI 音色帮助你判断音高与节奏;歌曲生成是后面单独发起的创作任务。

打开已有 Candidate 或 Version 的“查看乐谱”,或在项目的“乐谱”中选择一份记录。原始 ABC 与文件保留在“已保存原文与文件”。要以某一个已保存 Version 为新的起点,选择它的“从此版本继续创作”;普通查看乐谱会沿用乐谱已有的来源。

还没有乐谱时,选择“打开示例 Score”。示例是一段 96 BPM、四小节的独立旋律:Ins 有 22 个音符,Vocal 保留等长休止。打开示例本身不会保存素材、提交生成或创建版本。

示例的完整 ABC
X:1
T:
M:4/4
L:1/8
Q:1/4=96
V: Vocal clef=treble name="Vocal Melody" snm="Vocal"
V: Ins clef=treble name="Ins Melody" snm="Inst."
K:C
% verse
V: Vocal
z8 | z8 | z8 | z8 |
V: Ins
C D E F G2 E2 | F E D C D4 | E F G A G2 E2 | D E F D C4 |

完整示例: apps/web/src/features/scores/example.txt ↗

在“ABC 草稿”中,把 Ins 第一小节的 C D E F G2 E2 改成 G A B c d2 B2。保留其余音符、标头与 Vocal 休止。音名字母决定音高,后面的数字决定音长;小写 c 比大写 C 高八度。

稍等检查,或选择“更新谱面”。“谱面和 MIDI 对应当前草稿”表示当前文本通过了谱面与支持格式检查。当前生成采用 Vocal / Ins 双声部 ABC;普通 ABC 工具能显示的语法可能不在此范围内。

  1. 看第一句是否向更高的音区移动。对照小节位置,确认节奏仍然相同。
  2. 选择“试听草稿 MIDI”。底部持续播放器播放从同一份 MIDI 音符生成的简单音色。切到歌词或版本页,播放器继续,所听修订不会被新草稿悄悄替换。
  3. 选择“导出草稿 MIDI”,在自己的音乐软件中检查。导出来自当前有效草稿;下方“下载 MIDI”若存在,则是原来登记的文件,两者用途清楚分开。

一次只改一处,再重新试听。简单音色不能用来判断真实歌曲的人声或编曲质量。

满意后选择“保存并选定此 Score”。应用把这一份 ABC 存为新的不可覆盖 Score 与 Asset,不会为了保存乐谱创建推理 Job、Candidate 或 Version。“供下一次生成使用的 Score”可展开查看实际已保存 ABC;选择“打开已保存 Score”后刷新,仍能读到这一份。

只想选定未改动的已有乐谱时,选择“选定已保存 Score”,不会重复保存文件。继续修改会让选择提示变为草稿已修改;再次生成前需要检查并保存选定。保存进行中可以继续写草稿,最终保存的仍是点击时的内容。

未保存文本只保留在本次页面会话,切换工作区可继续编辑;刷新会重新读取所打开 Score 的已保存原文。独立保存乐谱与保存音频 Candidate 为 Version 是两次不同的创作决定。

  1. 在“从选定 Score 重新生成”保留 Morning song 的歌词与 seed,只把“音乐风格”改成更轻的钢琴编曲。片段长度沿用上一步的 35 秒上限。
  2. 确认“已保存 Score 对应当前有效草稿”与生成准备状态,再选择“从选定 Score 生成”。任务区域的“提交时的输入”保留实际 ABC、选定来源 Score 和来源父版本。
  3. 等待任务时可以继续改草稿。新修改不会替换已经提交的乐谱;再次生成前须重新检查、保存选定。取消要等任务确认,失败后明确创建新的重试任务;重试沿用失败任务的输入。
  4. 新结果是 Candidate。选择“试听这段音乐”,用底部播放器检查人声、旋律、节奏和结尾。MIDI 简单音色与这段生成歌曲用途不同;转到歌词或版本时,同一播放器继续。
  5. 满意后给它起名,例如“Morning · 高一些的开头”,再选择“保存为版本”。打开新版本,核对提交 ABC 与父版本;再打开原版本确认原乐谱和音频仍在。没有满意的结果也可以暂不保存。

想以某个已保存 Version 为新方向的起点时,在“版本”中打开它,选择“从此版本继续创作”。页面显示这一个起点;现有 ABC、风格、歌词与 seed 草稿仍保留。需要原版本的风格、歌词与 seed 时,再明确选择“使用此版本输入”,然后检查并保存选定当前乐谱。新 GFS 任务和显式保存的子 Version 使用这个起点;原 Score 和此前的来源记录不会改变。

普通乐谱入口沿用它已有的来源。尤其是 Cover 输出乐谱,可能仍保存更早的参考音频来源;要从已保存的 Cover Version 派生,使用上述明确的版本入口。独立示例或没有所属 Version 的乐谱可以没有父版本。完成任务不会自动增加版本历史。

无效输入或中断后,从原文继续

Section titled “无效输入或中断后,从原文继续”

可以在旋律中加入 ?,观察定位错误与保留的文本。当前草稿不能试听、导出或保存选定;若仍显示旧谱面,会明确说明它不是当前草稿。删掉 ?,选择“更新谱面”恢复。

谱面或检查服务失败时也保留文本;恢复连接后更新谱面。试听、导出失败可重试。保存连接中断后用错误区的重试恢复同一份提交快照;重复意图读回同一 Score,不会覆盖旧文件。再保存新修改则使用新的保存意图。

  • 生成提交确认中断:已捕获的输入保留。先选择“读取项目任务”,打开对应任务检查实际 ABC 与来源;不会自动再次生成。重新加载同一标签页仍会提示核对这份未确认的提交。只在核对后明确决定是否发起另一尝试。
  • 推理失败或已取消:修正原因,再在原任务上选择“创建新的重试任务”。它创建新的 Job,沿用原提交快照;当前草稿和旧结果保留。
  • 版本保存确认中断:先“重新读取已保存版本”。需要重试时选择“再次保存同一版本”;它保留首次点击的名称与 Candidate。后续名称文本修改不会改变这次恢复,重复保存不增加另一 Version。

任务链接可以重新读取已经提交的输入与结果。未保存乐谱草稿只属于当前页面会话;刷新仍会读回所打开 Score 的已保存原文。再次使用它生成时,须重新检查并明确选定。

下一种玩法:改变方向,保留节奏

Section titled “下一种玩法:改变方向,保留节奏”
想研究什么只改什么重点听什么
更明亮的开头第一小节的音高高音区是否更符合情绪。
更长的停顿在同一小节中用等长 z 替换一个音空白是否让下一句更明显。保持整小节总时长。
同一旋律的不同速度Q:1/4=96 改为另一个整数 BPM节奏的推进感;先保留音高和音长。

这些是可以试听的探索方向,不承诺音乐效果。每次先只改一处,再从明确选定的 Score 生成并记录试听判断。需要脚本操作时查阅 GenerateFromScore API;也可以继续尝试风格、歌词与 seed。新音频始终先为 Candidate,由你决定是否保存 Version。

源码版本: 1ce3268正文来源: docs/learn/edit-score.md