Skip to content

Releases: lanselanlanxi-wq/HarmonicaPlayer

v0.5.0 · MIDI 尽力转换与播放列表

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 17 Oct 11:23

HarmonicaPlayer v0.5.0

本次加入TXT播放列表、可自定义的上/下一首快捷键,并将MIDI导入改为尽力转换。TXT语法、已有曲谱、MIDI导出和内置口琴采样保持兼容。

MIDI尽力转换

MIDI 将尽力转换,效果可能与原曲不同,请先试听确认。

  • 先选择轨道/通道;同时起音的和弦默认保留最高音,可改为最低音。这不是智能主旋律识别。
  • 保留起音时间;重叠或留白不足时截短音尾,末音也在轨道结尾前留出gap。调整后不足52ms的音跳过,后续音符不提前。
  • 整体移调由用户主动设置;仍超出音域的音折叠八度。弯音、踏板、音色和SysEx效果忽略并提示。
  • 显示截短、舍弃、八度调整数量及整体移调量,详情可展开。结构损坏、不支持的格式、容量/时值超限和没有可演奏音符仍报错。
  • 导入后作为未保存的TXT进入编辑器,不自动播放、不覆盖源MIDI,请先试听再保存。

播放列表与快捷键

  • 批量添加TXT,显示曲名、BPM、间隔和路径;支持上移、下移、移除、保存及打开.hpl列表,兼容旧谱。
  • 单击只预选;双击先停止,再处理未保存提示并加载,不自动播放。取消后保持停止。
  • 开始优先使用预选,没有预选则使用编辑器;当前曲使用最新编辑内容。上一首/下一首以当前曲为基准,停止状态也会切换并开始。
  • 正常演奏结束自动下一首,最后一首结束即停,不循环。每首演奏前都有3秒倒计时,包括手动切歌、自动下一首和快捷键触发。
  • 手动切歌提示保存;自动切歌遇未保存修改停止,遇文件丢失或曲谱错误则跳过并显示原因。运行异常或手动停止不继续下一首。
  • 四个全局操作均可自定义:默认开始F6、停止F8,上/下一首未设置。保留快捷键冲突检查与紧急停止。
  • 本地试听仍只试听编辑器当前曲谱,无倒计时,结束即停。列表保存路径和顺序,不包含TXT正文或未保存草稿。

下载与升级

下载HarmonicaPlayer-v0.5.0-win-x64.zip,完整解压后运行HarmonicaPlayer.exe,无需另装.NET。GitHub的Source code是源码,不是可运行发行包。

升级前自行退出旧播放器;不同目录的播放器仍共享单实例锁。保留自己的曲谱和列表,迁移列表时保留其与TXT的相对路径。发布包包含三个格式/试听示例、说明、模板、音色对比WAV及授权,不包含简谱文件夹。

每次启动默认游戏演奏模式,默认F6开始、F8停止;“仅测试”不操作游戏也不发声,本地试听独立使用声音设备。维护者反馈“大致功能已测试,可以发布”;后台检查与验证边界见VALIDATION-0.5.0.md。

本次后台核心检查:817项通过;主程序与WindowsSmoke编译均0警告、0错误。WindowsSmoke仅编译,未启动播放器、窗口测试、声音或游戏输入。

源码提交:2832001f35a27936eac5027ba3959c4891545e64

ZIP SHA256:a96892f986a6f657d836cef325ef34bf80fa53dfb8ec9748681deffc37228221

HarmonicaPlayer v0.4.0

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 04 Oct 11:45

HarmonicaPlayer v0.4.0

本次新增严格单旋律 MIDI 导入,修复短休止可能误报调度延迟的问题,并完善游戏模式提示与升半音支持。

  • MIDI 导入:支持 .mid/.midi、SMF Format 0/1 和 PPQ,选择轨道/通道后转为可编辑、未保存的 TXT。提供整体移调建议和覆盖率,由用户主动应用;重叠、超音域、短音或留白不足时指出具体位置并阻止导入,不自动删音、截短、量化或猜主旋律。原 MIDI 保持不变。
  • 调度报错:短休止使用独立 50ms 容差,保留发声音符的严重迟到保护。真正超时后先清理输入,再显示行列、音符/休止序号、片段、曲内时间、实际迟到和阈值,并给出针对性建议。
  • 权限和模式:每次启动默认不勾选“仅测试(不会操作游戏)”。正常模式为“开始演奏”,仅测试为“开始测试”;主界面显示权限与模式。非管理员正常演奏优先提醒权限问题,允许继续。
  • 音域补全:支持最高do升半音 【【#1】】,兼容全角 #。中音、低音、高音1~7都可升半音,包含#3、#7;双层仅支持1和#1,不支持双层2~7及其升半音。试听和MIDI固定音域为C3~C#6(48~85)。
  • 回归与说明:游戏/试听/MIDI时间对照、重复开始与停止再开始、音区输入计划及MIDI边界检查随源码保留;README、使用说明、制谱说明与AI模板同步。

本次保留原BPM、gap、时值、试听采样和输入释放规则。暂停、播放列表、管理员重启和自动调整MIDI不在本版范围内。

下载 HarmonicaPlayer-v0.4.0-win-x64.zip,解压后运行 HarmonicaPlayer.exe,无需另装.NET。包内有格式示例和音色对比示例,不包含简谱文件夹;GitHub的Source code为源码,不是可运行的发行包。升级前自行退出旧播放器,保留自己的曲谱。

维护者于2026-10-04确认测试完毕并授权发布;后台检查及发布产物核对见 VALIDATION-0.4.0.md。本地试听不发送游戏输入;仅测试不操作游戏,也不发声。采样来自VCSL(CC0),授权与贡献记录随包附带。

发布前752项核心检查通过;WindowsSmoke本轮仅编译,实机完成以维护者确认记录为准。

源码提交:a24e6565ef01ba3fdad7ae21afd2b442c0df29d3。

ZIP SHA256:ca4938e7483fb16596710fac17f9f39deff8eb43afb9ffd60dfd053085b68170。另附.sha256校验文件。

HarmonicaPlayer v0.3.3

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 25 Sep 13:38

HarmonicaPlayer v0.3.3

本次正式发布包含 v0.3.0~v0.3.3 的更新。

  • 新增本地声音试听,支持从头或从光标位置开始。
  • 新增当前音符高亮、播放进度、剩余时间和独立试听音量。
  • 新增标准单轨 MIDI 导出,保留音高、BPM、音长、间隔和休止。
  • 内置 Special 20 真实口琴采样,离线可用,无需额外安装音源。
  • 优化持续音循环、尾音衔接和连续短音的起止效果。
  • 保留 TXT 曲名、BPM、间隔自动读取与保存,兼容旧版纯音符 TXT。
  • 更新使用说明、制谱说明、AI 转谱模板,并附音色对比示例。

408 项核心自动检查通过,主程序及窗口测试项目编译通过;用户已确认实机测试无问题。

下载请选择 HarmonicaPlayer-v0.3.3-win-x64.zip,解压后运行 HarmonicaPlayer.exe。GitHub 自动提供的 Source code 是源码,不含可直接运行的 EXE。

本地试听不会发送游戏按键;实际游戏演奏前仍需取消“仅日志测试”。MIDI 不包含口琴录音,外部播放器的音色由其音源决定。

采样来自 VCSL(CC0),完整来源与授权随包附带。感谢此前贡献者 daailiuying 和 izumikonata10,采纳范围见 CONTRIBUTIONS.md。

HarmonicaPlayer v0.2.1

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 19 Sep 11:49

v0.2.1 更新内容

  • 新增曲谱新建、保存和另存为
  • 新增曲名编辑及未保存修改提示
  • TXT 支持保存和自动读取曲名、BPM、音符间隔
  • 支持从文件名读取 BPM
  • 支持文件头 @gap 自动设置音符间隔
  • 曲谱未填写 @gap 时默认使用 20ms
  • 关闭、导入或新建前提示保存未保存内容
  • 旧版纯音符 TXT 仍可正常导入
  • 预览、实际播放和保存共用相同的时长校验
  • 修复异步保存结果可能覆盖最新界面提示的问题
  • 更新使用说明、制谱说明、AI 转谱模板和示例曲谱

感谢 daailiuying(PR #3)和 izumikonata10(PR #1)提供的代码及测试思路。具体采纳范围见源码中的 CONTRIBUTIONS.md。

本版仍不包含本地声音试听、MIDI 和播放列表功能。

新格式示例:

@format=HarmonicaPlayer/1
@title=曲名
@bpm=100
@gap=20

1 2_ 3_ 5 — |
0 6. 5_ 1 |

HarmonicaPlayer v0.2.0

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 17 Sep 13:01

更新内容:

  • 统一为节奏模式,移除旧无节奏模式及相关设置。
  • 新增高两个八度的 do,写法:【【1】】。
  • 新增自定义总拍数,例如 5:1.25、0:0.25。
  • 强化错误提示,支持定位曲谱错误。
  • 优化快捷键冲突提示及开始按钮状态。
  • 修复问题解决后错误提示仍残留的情况。
  • 新增制谱说明,更新使用说明和 AI 转谱模板。
  • 保留旧设置中的有效快捷键、BPM 和音符间隔。

验证:
99 项核心测试及 5 项 Windows 界面测试通过。

注意:
本版尚不支持本地声音试听与导出。
下载请选 Assets 中的 win-x64.zip;Source code 是源码,不含可直接运行的 EXE。

HarmonicaPlayer v0.1.5

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 12 Sep 18:09

更新内容:

  • 移除开始演奏前的确认弹窗,使用快捷键后直接进入倒计时。
  • 优化程序关闭流程。
  • 完善使用方法、模式说明和常见问题。
  • 新增 AI 转谱模板及 TXT 测试谱子。
  • 补充超出音域时的八度调整说明。

使用提示:

  • 默认开启“仅日志测试”,实际演奏前请取消勾选。
  • 带长短音、休止符等节奏信息的谱子,请勾选“节奏模式”。
  • 建议以管理员身份运行,游戏使用无边框模式。
  • 演奏期间除停止快捷键外,请勿操作鼠标键盘。

已知问题:

  • 在船上被其他玩家拉走后,可能出现按键无响应,目前尚未修复。

HarmonicaPlayer v0.1.3

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 12 Sep 08:55

v0.1.3 更新内容
新增自定义开始/停止快捷键,支持 Ctrl、Alt、Shift 组合键。
新增快捷键占用提示,分别显示开始键和停止键的注册状态,支持不重启重试注册。
优化启动判断:开始键不可用时仍可点击按钮开始;停止键不可用时禁止真实演奏。
新增设置自动保存,记住快捷键、节奏模式、BPM、留白及分段停顿。
新增防止重复运行,再次打开程序时尝试激活已有窗口。
优化组合键启动,等待按键松开后再开始倒计时,避免修饰键影响演奏。
调整发布包,将原生依赖合并到 EXE,减少需要单独携带的 DLL 文件。

默认仍为 F6 开始、F8 停止。升级前请关闭旧版程序,解压新版后运行。

HarmonicaPlayer v0.1.2

Choose a tag to compare

@lanselanlanxi-wq lanselanlanxi-wq released this 12 Sep 04:21

支持 TXT 简谱导入和时值预览。
支持延长音、休止符、减时符、附点及 BPM 调节。
使用带节奏的谱子时,请勾选“节奏模式”。
解压后运行 HarmonicaPlayer.exe;F6 开始,F8 停止