最新消息:微信号:upumusic 开通会员 | ¥68月会员 ¥98季度会员 ¥198年会员 ¥298终生会员 | 网站资讯均来自互联网索引,信息如有侵权请联系删除

MIDI Jar和弦显示软件 MIDI键盘链接显示音符和弦 和弦五度圈工具

其他软件 音频吧 174浏览

MIDI Jar是一个工具箱,适用于音乐家、学习者、流媒体,他们希望在设备之间路由MIDI消息,并在演奏时显示钢琴或监视器和弦,并将其集成到视频或带有OBS的Twitch流中。

出版

在Github上查看发布:

由于代码签名证书有点昂贵,MIDI Jar没有签名(还没有?)。如果您愿意在经济上帮助我签署这个应用程序,请随时与我联系。

因此,要在Windows上安装它,Windows Defender可能会阻止它,并警告您这可能很危险。无论如何,你仍然可以执行它。

然而,在MacOS上,.dmg或任何下载的未签名文件将被阻止,就像“应用程序已损坏且无法打开”一样。

下载后,您需要通过在终端中执行来取消对文件的隔离:

xattr -dr com.apple.quarantine <Your Downloaded File Name>

为什么是这个应用程序?

当我演奏时,我需要一种方法来显示钢琴和监控和弦,但没有找到正确操作的解决方案。因此,我创建了一个名为和弦显示的先前工具,在Web浏览器中进行操作,但由于Windows具有独家MIDI(一次只有一个软件可以使用相同的MIDI设备),我需要一个新的解决方案。此外,OBS BrowserSource无法使用MIDI设备,因此无法将其集成到Twitch流中。

MIDI Jar作为使用Electron制作的独立桌面应用程序修复了所有这些问题。

精选

MIDI Jar包括:

  • 设备和内部模块之间的MIDI路由
  • 和弦显示模块,用于显示钢琴和监看正在演奏的和弦
  • 高度可定制的五分之一
  • 和弦测验模块,具有不同的模式和设置进行训练
  • 外部包含模块的HTTP/Websocket服务器(例如在OBS浏览器源中)
  • 在启动时运行
  • 在后台运行(没有窗口,只有托盘图标)

路由

您可以在设备之间或MIDI Jar的内部和外部模块之间路由MIDI,MIDI消息将在应用程序运行时被路由。

如果您只是想将消息从一个设备路由到另一个设备,这可以成为取代MIDI-OX等复杂软件的简单替代方案。

WINDOWS用户的注意事项:

Windows标准MIDI驱动程序是独一无二的,只能同时将一个软件连接到设备。

如果您想将MIDI Jar与DAW等其他软件或独立VST一起使用,您应该安装Tobias Erichsen的loopMIDI

您将能够创建多个虚拟MIDI设备(环回)并将MIDI消息路由到它。此外,这些虚拟设备是非独家的,因此多个软件可以使用它们。

潜伏期

MIDI Jar可能会引入MIDI消息的延迟。我尽了最大努力将其保持在尽可能低的水平,在路由设置页面中,您可以看到配置引入的延迟:这只是添加到现有延迟的延迟,从MIDI Jar收到消息并将其转发到其他设备和模块时。

任何其他延迟(由于USB、您的设备驱动程序或LoopMidi环回)都不会被考虑在内。

我的测试average additional latency < 0.2ms,但这可能因PC配置、路由和CPU使用率而有很大差异,并且可能会发生一些冻结。

和弦显示

和弦显示是MIDI Jar的一个模块,用于显示钢琴键盘和演奏的和弦。

它基于音调,但具有自定义和弦字典和修改后的和弦检测功能,允许省略间隔(取决于字典)。

要使用它,请将您的MIDI设备路由到内部chord-display输出。

音乐符号

您可以在和弦显示中启用标准乐谱显示。

它使用VexFlow实现,并支持在任何主要键中显示注释。

注意:具有7次以上更改的密钥签名将自动更改为等效的主要密钥(例如G#将产生Ab的关键签名)。

免责声明:由于我不太喜欢阅读和写音乐,和弦显示符号可能是错误的……如果是这样,请毫不犹豫地发布问题。

在设置中自定义

和弦显示渲染可在设置中自定义:

  • 键盘:
    • 键盘长度:开始和结束音符
    • 包装:用不同的颜色在键盘外显示笔记
    • 主题:
      • classic– 一架看起来很古典的钢琴
      • flat– 单行上的简化版本
    • 尺寸:更改特定皮肤的显示尺寸。
    • 颜色:黑色和白色,播放&持续&包装音符。
    • 启用钢琴上的一些信息:
      • key names– 键上显示的名称(无,只有C,音高类或音符)
      • key info-键上的附加信息显示(无,音点,和弦间隔)
      • label-播放键上方的附加信息显示(无,音高类,音符,和弦间隔)
    • 淡出持续时间:密钥在发布时延迟消失
    • 持续笔记:可以在展示中禁用
  • 自定义元素:
    • chord– 检测到的和弦
    • alternative chords-其他检测到的和弦名称列表(如果有的话)
    • chord name-和弦的全名
    • chord notation– 选择和弦的标注方式
      • long– maj, min, dom, dim, aug
      • short– M,m,昏暗,8月
      • symbol– Δ,-,°,+
    • allow omissions-检测省略间隔的和弦(如5P、9M和11P)
    • use sustain-是否应该使用持续音符进行检测(也禁用持续音符的显示)
    • highlight chord alterations-更清晰地显示和弦部分
    • notation– 演奏笔记的五线谱符号
    • piano– 显示你播放的音符的键盘
    • intervals– 构成和弦的间隔列表

通过CSS自定义

OBS浏览器源允许您在页面中注入任何CSS,因此您可以向现有布局添加任何样式,例如:

禁用背景图像:

body { background: none !important; color: white; }

删除检测到的和弦:

#chord {
  display: none;
}

删除低音音符/斜线和弦符号:

.chord-root {
  display: none;
}

删除播放的笔记:

#notes {
  display: none;
}

移除钢琴键盘:

#keyboard {
  display: none;
}

更改显示顺序:

#keyboard {
  order: 1;
}
#container {
  order: 2;
}
#notes {
  order: 3;
}
#intervals {
  order: 4;
}

更改文本颜色:

body {
  color: #fff;
  background: transparent;
}

更改和弦大小和位置:

#chordDisplay {
  align-items: flex-end;
  justify-content: flex-end;
  padding: 2vh;
  flex-direction: column-reverse;
}

#container {
  align-items: flex-start;
  justify-content: space-between;
}

#chord {
  flex-grow: 0;
  font-size: 10vh;
}

#notes {
  display: none;
}

#alternativeChords {
  display: none;
}

#intervals {
  font-size: 2vh;
}

#notation {
  color: black;
  width: 300px;
  height: 300px;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 32px;
  margin-top: 16px;
}

和弦词典

Chord Dictionary是MIDI Jar的一个模块,用于浏览软件中所有可用的和弦,这是一个定制的词典。

您可以从MIDI Jar的主视图访问它,或通过单击chord-display模块中的和弦名称来访问它。

它还允许您自定义和使用preferred和弦符号的所有其他模块中的和弦显示方式:

  • 您可以选择要显示的和弦别名(而不仅仅是longshortsymbol味道)
  • 您可以禁用chord-display模块检测到的和弦类型。

此模块也可以是交互式的,因此您需要将MIDI设备路由到chord-dictionary输出,以使字典在两种可能的模式下工作:

  • 检测:播放时自动浏览检测到的和弦页面。不是检测到的和弦部分的音符将以红色显示,正确的间隔将以绿色显示。
  • 播放:禁用自动浏览,但仍对当前显示的和弦显示正确和不正确的间隔。

第五圈

The Circle of Fifths是一个音乐理论工具,可以帮助理解和写作音乐。

此模块允许您轻松选择正在播放的密钥签名,并显示音符。

它将根据您的选择做出反应(绿色):

  • on Chords:与当前播放的和弦最对应的圆区将被突出显示
  • on Notes:代表演奏音符的所有扇区都将突出显示

您可以通过添加/删除车轮的部分来自定义其渲染:

  • Display Major:显示大五度的圆圈
  • Display Minor:显示小五度的圆圈
  • Display Diminished:显示减小五分之一的圆圈
  • Main Scale:选择大调或小调中哪个在圆圈中首先显示
  • Display Dominant Chords:为每个键添加一个包含相应主和弦(和替换)的部分-V7、bVII7、bII7和III7
  • Display Suspended Chords:在暂停的每个次要键和主要键周围添加扇区。它们的位置对应于它们在相邻五度中的反转(例如:Csus2可以反转为Gsus4,因此它位于C和G之间)。
  • Display Alterations:显示相应密钥签名的♭或♯的数量
  • Display Modes:在相应键上方显示谐波模式(例如,当在C离子时,下一个第五个谐波模式是G mixolydian)
  • Display Degree:为每五分之一添加带有学位和名称的标签
  • Display Degree Label:在关键部门内增加学位。左边是大学位,右边是小学位。
  • Highlight Sectors in the key:以蓝色显示当前选定的关键刻度中的扇区

注意:五度圈通常用于显示音符,而不是和弦。但我发现它也适合和弦,特别是可视化度数之间的分辨率。圆圈中同一角部分的任何和弦都倾向于在音阶中达到第一度。这个模块更像是个人愿景,而不是标准表示。不要犹豫,禁用您不需要的部分。

HTTP/WS服务器-叠加

它允许在外部Web浏览器或OBS浏览器源中集成模块。例如,您可以将MIDI Jar集成到Twitch流中,或将其加载到其他计算机或手机上,以便在干扰时显示和弦,甚至使用Lively Wallpaper将其用作桌面壁纸。

所有MIDI Jar模块都可以从外部访问,例如,如果您想要多个键盘,或在OBS中自定义其排列,您可以创建任意数量的chord-display模块。

目前,不支持外部更新设置,但这是计划好的。

音乐符号

音乐符号可以在和弦显示模块中显示,并通过五度圈进行更改。

您可以在设置中自定义它,这将影响所有模块(包括叠加):

  • Key Signature:用于显示注释的密钥签名,以及用于在五线谱符号中选择密钥。
  • Accidentals (when in C Key):显示flatssharps
  • Staff Clef:用五线谱表示法显示的谱号
  • Staff Transpose (in semitones):转录转放乐器的笔记

和弦测验

您可以使用和弦测验模块来训练钢琴。

每轮游戏,您都会收到一个您必须演奏的和弦,还将看到要演奏的下一个和弦(以预测您的手指动作)。

当您释放所有密钥时,您的答案将承诺,并可能导致本轮的不同分数:

  • different:你没有演奏正确的和弦-你会失去分数
  • subset:你演奏了一些和弦的间隔-你不会获得所有的分数
  • exact:你演奏了被问到的和弦
  • superset:你玩了没有被要求的额外间隔(这被认为是奖金)

和弦的任何添加、重复或反转都会给你额外的分数。

您可以选择要玩的模式(算法):

  • random:所有和弦都将在随机键签名中随机选择
  • random in key:所有和弦将从当前键签名(在符号设置中)中选择,在主要音阶+添加(旋律和和声更改)中。

最后,为了适应你的训练,你可以选择难度,每个级别都会在可能的列表中添加新的和弦:

  • Very Easy:maj,min
  • Easy: maj7, majadd2, majadd4, maj6, min7, min6, minadd9, minadd4, minmaj7, dom7, sus4, sus2
  • Medium: maj9, maj11, maj13, majaddb2, majadd#4, majaddb6, maj6/9, maj6add11, maj6/11, maj7add11, maj7add13, majb5, majb9, min9, min11, min13, minaddb2, min6/9, min7add11, minaddb6, min#5, minb9, minmaj9, minmaj11, minmaj13, minmaj7b9, minmaj7add11, dim, dom9, dom11, dom13, dom7add6, dom7add11, dom7b9, sus2sus4, sus2maj7, sus4m7, dom7sus2, dom7sus4, dom
  • Hard: maj6#11, maj7add#11, maj7addb13, maj7b5, maj#9, maj#11, maj11b9, minaddb6addb9, min7#5, minb11, min#11, min7#11, min11b13, minmaj7#5, minmaj7addb13, minmaj7b11, minmaj7#11, dimmmaj7, dim7maj7, min7b5, dom7b5, dom7add#11, dom7addb13, dom7#9, dom11b9, dom13b9, sus2maj11, sus2maj7add13, sus4m13, dom7sus4b9, dom13sus4, augmaj7
  • Very Hard: maj6/9add#11, maj9b5, maj9#9, majb9, maj9#9, maj#11b9, maj11#9, maj13#5, min9#5, min11#5, min13#5, min11b11, minmaj9addb13, minmaj9addb13, minmaj9#11, minmaj11, minmaj11b11, min9b5, min7b5b5, dom9b5, dom11b5, dom13b5, dom9b5, dom9, dom9addb13, dom7b9#9#9, dom7b9#11, dom7b9b13, dom11, dom11, dom11susb2, dom7sus
  • All Chords:字典的其余部分

如果游戏模式太烦人,您可以关闭评分、反应,并选择显示或不显示要求的间隔,但请记住,游戏化只是为了好玩,没有持续的记分牌或高分,它只是一个帮助探索的工具。

希望将来,这个模块将能够有一个“智能”模式,能够生成具有关键变化的随机和弦进行。

MIDI Jar – 和弦测验示例

然后呢?

建筑

该项目使用Electron & Webpack构建:

npm install

npm run start
 -or-
npm run package

计划的功能/想法

  • 简单路由(v1)
  • 和弦显示(v1)
  • OBS的HTTP/WS叠加(v1)
  • 显示标准符号
  • 第五圈
  • 和弦测验
  • 和弦词典
  • Tonnetz图表
  • 更多键盘主题
  • 虚拟键盘(使用PC键盘作为MIDI设备)
  • 可视化/垂直滚动笔记
  • 音板
  • MIDI录音(播放/备份)
  • 铬麻醉
  • 高级路由(拆分键盘、过滤器、速度/值重新映射)
  • 外部更新设置(HTTP/WS)

贡献/错误

该项目完全开放,希望得到一些反馈和新想法。请随时打开问题或打开合并请求。

对于任何UI或UX错误,请打开一个问题

如果您发现意外的和弦检测,请参阅音调/音调问题,并使其完美工作。

信用

  • 音调:Javascript的功能性音乐理论库,用于检测和弦并处理MIDI音符
  • VexFlow:用于渲染乐谱和吉他曲谱的JavaScript库。
  • node-midi @julusian/midi:提供实时MIDI I/O的RtMidi C++库的node.js包装器。
  • React Flow:高度可定制的库,用于构建基于交互式节点的UI、编辑器、流程图和图表。它允许MIDI Jar具有带有节点和可拖动边缘的可理解的MIDI路由。
  • 反应电子锅炉板:电子中可扩展跨平台应用程序的基础,MIDI Jar的基础锅炉板。

这个网站是开源的。改进此页面

资源下载此资源仅限VIP下载,请先
添加微信:upumusic 开通会员 | 『¥68 月』 『¥98季度』『¥198年』『¥298终生』| 链接失效请联系更换。资讯信息均来自互联网索引,版权归原作者所有。信息仅做介绍和学习使用,如有侵权请联系微信号 upumusic 删除

转载请注明:Audioba-音频吧编曲混音资源网 » MIDI Jar和弦显示软件 MIDI键盘链接显示音符和弦 和弦五度圈工具