Nebula

连线(Patches)

一条连线把音乐正在做的某件事(低音、节拍、铺垫、一个缓慢的时钟,甚至另一个图层)拿来转动一个旋钮。你在 Patches 窗口中把它们连起来。Pro

创建连线

窗口左边是来源,中间是一条走线区,右边是每个图层的每个旋钮(还有场景的颜色)。每个来源和每个旋钮都有一个小圆圈,也就是它的端口。

  1. 从来源的圆圈拖到旋钮的圆圈。它们之间会出现一条连线,颜色与来源相同。
  2. 点按连线(或点按某一行的名称)打开它的设置:它让旋钮动多少、多平滑,以及信号的形状。
  3. 拖动连线的一端到另一个圆圈上,即可移动它。
  4. 要移除连线,打开它并点按垃圾桶,再点一次确认。在 Mac 上,选中它然后按 Backspace。

一个旋钮可以接多条连线;它们的效果会相加。按住(或将鼠标悬停在)任何名称上,可看到简短的帮助文字。只有在元素页面上标为“Cable: yes”的旋钮才能作为目标。

提示。元素本身已经会随音乐变化,所以很少需要给每个旋钮都接连线。每个图层一两条有目的的连线,胜过十条。

连线的作用

点按一条连线,可以看到它的小图表(淡色是来源,亮色是结果,显示最近 3 秒)以及以下设置:

设置作用
Amount(幅度)连线让旋钮移动多远,以旋钮整个范围的比例表示,从 -1 到 1。负值让它向下移动。旋钮自己的滑块是起点;连线在此基础上叠加。(Numbers 和 Time 来源不显示此项,因为它们直接设定旋钮的值。)
Smooth(平滑)旋钮跟随得有多慢,单位为秒(0 到 3)。0 会跟随每一次跳变。大约 0.05 到 0.15 适合打击,0.2 到 0.6 适合低音和脉冲,1 到 3 适合缓慢漂移。
Curve(曲线)在 0 到 1 的信号到达旋钮之前改变它的形状。见下文。
In from, In to(输入起点、输入终点)来源中起作用的那一部分。小于等于 In from 的值变成 0;大于等于 In to 的值变成 1。调高 In from 可以忽略安静的段落。
Threshold(阈值)用于 Threshold 和 Gate 曲线:信号必须超过的电平(0 到 1)。

曲线

曲线形状
Linear(线性)信号原样不变。
Invert(反转)翻转(1 减去信号):响的变安静。
Ease(缓动)柔和的 S 形;两端更平缓。
Exp(指数)安静的部分更安静:先等待,然后跃起。
Log(对数)安静的部分变响:先跃起,然后平稳。
Threshold(阈值)柔和的阶跃:低于阈值时关,高于时开。
Gate(门限)低于阈值时为 0;高于时就是信号本身。

颜色旋钮的工作方式稍有不同。数值来源会让它沿着一个颜色列表移动:图层自己的调色板,没有的话用场景颜色,再没有就绕色环。信号满值时,Amount 为 1 会把列表走一整圈;0.25 走四分之一。颜色来源(见颜色)会按 Amount 把旋钮向那个颜色混合。开关在连线信号高于一半时打开。

所有来源

来源按组排列,在窗口中的顺序如下。除非另有说明,所有值都在 0 到 1 之间。

组包含内容
Music低音、中音、高音、电平、能量、起音、节拍、节拍相位、小节相位、过渡、稀疏度(bass、mid、treble、level、energy、onset、beat、beatPhase、barPhase、transition、thin)。
Bands频谱的切片,从最深的低音到最高的高音。
Song structure段落、铺垫、drop、强拍、进度、和声、张力、和弦根音、旋律。
Random平滑或分级跳变的随机值。
Colors流动的调色板颜色、某个场景颜色、某个图层下方的颜色。
Layer outputs其他图层发出的信号,例如一次爆发(burst)。
Layers below下方图层看起来有多亮、多鲜艳或多繁忙。
Numbers按节拍或小节步进的数值,使用旋钮自己的单位。需要你自己输入。
Time按歌曲秒数变化的门、渐变、锯齿波、三角波和正弦波。需要你自己输入。

实时音乐(Music)

这些来源适用于所有情况:歌曲、电台、麦克风和 This Mac。

来源值
bass低频有多响(底鼓、贝斯)。反应快。
mid中频有多响(人声、吉他、键盘)。
treble高频有多响(镲片、踩镲、空气感)。
level此刻的整体响度,在约十分之一秒内平滑。
energy约 3 秒内的缓慢响度:副歌和 drop 时高,安静段落时低。最适合做大幅而柔和的变化。
onset在突然的打击(鼓、拨弦、起音)时出现尖峰。适合闪光和冲击。
beat节拍落下的瞬间为 1,其余为 0。给连线加一点 Smooth(0.1 到 0.3),就能得到脉冲而不是一下咔哒。
beatPhase在每一拍内从 0 升到 1,然后重新开始。稳定的脉动。
barPhase在每个四拍的小节内从 0 升到 1。缓慢、与节奏同步的转动。
transition一首歌交叉淡入下一首时,从 0 升到 1。
thin完整编曲时为 0,音乐变稀疏时最高到 1:鼓或贝斯退出、间奏,或者只剩人声和铺底音色。缓慢而平滑。歌曲变得稀疏时,可以用它让场景舒展开来。分析完成后它会读取整首歌(能预见安静段落的到来);在此之前,以及电台在分析赶上之前,它根据最近半分钟的声音判断,只在音乐变稀疏之后才反应。它看的是低频、响度以及有多少频段在亮,所以如果持续的贝斯还在,单独去掉底鼓它是察觉不到的。

频段(Bands)

频谱被分成 64 个频段:频段 0 是最深的低音(约 30 Hz),频段 63 是最高的高音(约 16 kHz)。一个频段来源会取一段连续频段的平均值,每个频段都按自己最近的范围缩放,所以安静的频段也会动。窗口提供 12 个现成的;要用其他范围,可以在场景文件中指定(bands:A-B)。

来源覆盖范围
bands:0-7深沉的低音
bands:0-3, bands:0-15最深的四个频段,以及频谱最低的四分之一
bands:16-39中频
bands:40-63高频
bands:8-15, 16-23, 24-31, 32-39, 40-47, 48-55, 56-63八个均匀的切片,从低到高

歌曲结构(Song structure)

这些来源需要 Nebula 知道歌曲是怎样构成的:你自己的歌曲在 Nebula 分析之后(请参阅Nebula 如何聆听一首歌),以及它提前听过或记住的电台歌曲。在那之前,以及使用麦克风时,它们保持为 0。

来源值
section歌曲当前部分有多强烈,接近下一部分时会逐渐过渡过去。歌曲进入主歌、副歌或桥段时会变化。
build音乐向一个高潮时刻铺垫时逐渐升高。
drop铺垫释放成 drop(高潮)或大副歌时跳起,然后逐渐消退。
downbeat每个小节的第一拍为 1。
sectionProgress在当前部分中从 0 走到 1。
songProgress歌曲开始时为 0,结束时为 1。
harmony明亮、听起来像大调的和弦读数高;暗淡、小调的读数低。
tension和弦离歌曲的主调越远越高:音乐听起来没有解决。
chordRoot正在演奏哪个和弦,以其根音表示,在十二个音上从 0 到 1 绕一圈。
melody演唱或主奏旋律有多高,0 为低,1 为高。
melodyConfidence分析有多确定有人在唱或有主奏乐器在演奏。

随机(Random)

来源值
random:smooth每拍平滑滑向一个新的随机值,从不跳变。同一首歌给出相同的值。
random:smooth/bar同上,每小节一个新值。
random:smooth:7同上,种子为 7。换一个数字就换一种模式。默认种子为 1。
random每拍跳到旋钮范围内的一个随机值。用 Smooth 让跳变柔和一些。
random/bar同上,每小节一次。

没有速度信息时(例如使用麦克风),random:smooth 会以每秒两个值的速度继续变化。

Numbers(按节拍步进)

Numbers 来源会按你选的数字逐个计数,每拍一个,并直接把旋钮设为这个数字,使用旋钮自己的单位。不使用 Amount。在窗口的 Numbers 框中输入来源(例如 1-5:1),它就会作为一行出现,可以接线。

写法

你输入作用
1-5:1依次为 1、2、3、4、5,然后回到 1,每拍一个。
0-1:0.250、0.25、0.5、0.75、1,然后再来一遍。
1-5:1/bar同上,每小节(四拍)一步,而不是每拍一步。
0-1:random每拍取 0 到 1 之间的一个随机值(中间的任何值)。
1-5:1:random每拍随机取一步:只会是 1、2、3、4 或 5。
0-1:random:7, 1-5:1:random:7, random:7同上,种子为 7:换一个种子,就换一种模式。相同的种子总是重复相同的模式。
random每拍取旋钮整个范围内的一个随机值。
0-1:random/bar每小节一个随机值。任何一种都可以加上 /bar。

细节:格式为 low-high:step,后面可以跟 :random(随机步进)、:seed(一个整数)以及 /bar 或 /beat。如果范围写反了(5-1:1),Nebula 会把它倒过来。步长必须大于 0,且最多产生 1000 个值。一个来源最多 64 个字符,空格会被忽略。

在窗口中,你创建的 Numbers 会显示 Edit(编辑)和 ×。Edit 会修改来源,同时保持它的连线接在原来的旋钮上;删除则会移除来源及其连线。

提示。Numbers 很适合按整数步进的旋钮,例如发射器的数量,也适合每小节切换一种外观。

Time(歌曲的秒数)

Time 来源随歌曲时间的秒数变化,而不是随节拍。它们同样直接设定旋钮(不使用 Amount)。在 Time 框中输入。窗口一开始提供 0-1:gate/4s,4s、0-1:tri/30s 和 0-1:ramp/30s。

形状你输入作用
Gategate/3s,7s(门)开 3 秒,关 7 秒,循环。两个时长:先开,后关。
Rampramp/20s(渐变)在 20 秒内从低值滑到高值,然后保持。ramp/0s 是瞬间跳变。
Sawsaw/20s(锯齿波)在 20 秒内从低升到高,猛地回落,然后重复。
Triangletri/30s(三角波)每 30 秒以直线上升再下降一次。
Sinesine/45s(正弦波)同样的上升下降循环,两端平滑。

选项

时钟怎么走

音乐暂停时,歌曲时间静止不动;在歌曲中跳转时,它跟着你走;每首新歌开始时,它从 0 重新开始。切换场景不会让它重新开始。

提示。Time 来源适合节奏缓慢的场景:用 ramp/60s 让一个图层在一分钟内淡入,用 tri/90s 让颜色慢慢漂移,或者用 gate 让一个图层每半分钟闪亮几秒。

颜色(Colors)

来源值
colour:scene流动的调色板颜色:所有调色板模式的视觉效果此刻所处的颜色。
colour:scene:3场景颜色 3(编号从 1 开始,最多到 12),包括接在它上面的任何连线的影响。
below:2:rgb图层 2 下方所有内容的平均颜色。

接到颜色旋钮时,颜色来源会按 Amount 把旋钮向那个颜色混合。接到其他任何旋钮时,它给出的是颜色的亮度。

图层输出和下方图层

Layer outputs(图层输出)。有些元素会发出信号,例如 Fireflies 的 burst。它列在元素页面上该元素的下面。在场景文件中写作 layer:<number>:<output>,图层从上往下数,从 0 开始。把 layer:1:burst 接到另一个图层的亮度上,它就会随着萤火虫群一起闪烁。

Layers below(下方图层)。这些来源观察某个图层下方的图层产生了什么:

来源值
below:<n>:brightness图层 n 下方的图层看起来有多亮。
below:<n>:colour它们的色彩有多鲜艳。
below:<n>:motion它们变化得有多厉害。
below:<n>:0.5,0.5画面中某一点的亮度(先 x 后 y,0 到 1;0,0 是左上角)。窗口提供的是中心点。

最底层下面什么都没有,所以它没有 Layers below 来源。

计算方式

对于数值旋钮:

knob = base + amount × shaped value × (knob max − knob min)

结果会被限制在旋钮的范围内。Base(基值)是你设置的旋钮自身滑块的位置,shaped value(整形后的值)是来源经过 In from / In to 和曲线处理后的值。所以一个要随音乐升高的旋钮,基值需要足够低,留出空间:Pin height 的范围是 0 到 2,所以基值 0.6、幅度 0.4 最高能升到 1.4。一个旋钮上的多条连线会相加。

Numbers 和 Time 来源跳过这一步:它们直接把旋钮设为自己的值。

配方

这些只是起点,请按喜好调整。“接线”指从来源拖到旋钮。

目标来源 → 旋钮设置
低音膨胀bass → 一个大小或高度旋钮Amount 0.15 到 0.3,Smooth 0.25
打击时闪光onset → 辉光或亮度Amount 0.2,Smooth 0.1,Curve 选 Gate,Threshold 0.3
副歌提升energy(或 section)→ 亮度或密度Amount 0.3,Smooth 2,In from 0.3,In to 0.9
铺垫和 dropbuild → 一个速度或旋涡旋钮;drop → 一个爆发或涟漪旋钮Build:Amount 0.4,Smooth 0.5。Drop:Amount 0.5,Smooth 0.2
情绪色彩harmony → 场景的 Color shiftAmount 0.3,Smooth 3。小调和弦让调色板往一个方向滑,大调往另一个方向。
让安静的歌曲有缓慢的生气random:smooth/bar → 一个漂移或旋涡旋钮Amount 0.15,Smooth 2
每小节换一种外观1-4:1/bar → 一个按整数步进的旋钮不使用 Amount
让图层在一分钟内淡入0-1:ramp/60s → 图层上类似不透明度的旋钮,例如亮度不使用 Amount
每 30 秒发光 3 秒0-1:gate/3s,27s → 辉光Smooth 0.5,让边缘柔和一些

在场景文件中

场景保存为 .nebula 文件,连线以文本形式写在其中。如果你让 AI 助手为你写场景,或者手动编辑场景,这会很有用。一条连线看起来是这样的:

{ "source": "bass", "target": { "layer": 0, "key": "height" },
  "amount": 0.25, "smooth": 0.2, "curve": "ease", "range": [0.1, 0.8], "threshold": 0.5 }

target.layer 从上往下数图层(0 是最上面的图层),或者为 "scene",表示场景颜色(shift、speed、colour1 等)。range 等同于 In from 和 In to。来源名称就是本页列出的那些。如果连线的来源无法读取,或者它的图层或旋钮不存在,就会被跳过,不显示任何消息。请参阅场景 › .nebula 文件。