V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
baojunz
V2EX  ›  程序员

请教一个关于音乐五线谱相关的问题

  •  
  •   baojunz · 6 小时 19 分钟前 · 620 次点击

    各位朋友们好,公司在承接一个项目,这个项目是和五线谱相关,其主要目的是答题环节。

    目前定的技术方案是:uniapp+ webview+abcjs 实现五线谱的展示和编辑,但目前有个技术问题,想请教各位:

    1 、需要实现一个和 KTV 实时评分类似的功能:一个是标准音线,另外一个是获取用户发出的音调音线,通过实时对比两条音线,来评判用户发出的声音是否符合标准音。

    有没有大佬提供思路,或者相关的开源代码供其参考和研究。 另外不知有没有人使用过 abcjs ,这里面存不存在什么坑,可以提前告知一下。

    在此十分感谢大家!

    12 条回复    2024-10-18 16:23:52 +08:00
    baojunz
        1
    baojunz  
    OP
       6 小时 10 分钟前
    另外还有一个问题,就是实现 abcjs 实现在音符的编辑和插入的功能,找到了 abcjs quick editor 相关源码,但是不知道内部是如何实现的。我们想在此添加一些事件
    a67793581
        2
    a67793581  
       6 小时 3 分钟前
    付费咨询了解一下
    jipfqf
        3
    jipfqf  
       5 小时 9 分钟前
    应该参考在线吉他或尤克里里这种的调音器吧,本质都是对比音调
    Davy
        4
    Davy  
       2 小时 4 分钟前
    问过 ai 了吗?
    baojunz
        5
    baojunz  
    OP
       1 小时 46 分钟前
    @Davy 过问 gpt 了,没有找到
    NoDataNoBB
        6
    NoDataNoBB  
       1 小时 35 分钟前
    找个网页版的调音器,看看代码
    maybedk
        7
    maybedk  
       1 小时 29 分钟前
    玩过一些音乐,了解一点乐理。人类唱歌发音是泛音不是单音,KTV 那个非常不准,只能是娱乐。如果想做唱歌音准识别的话感觉会涉及一些非常专业的算法。
    baojunz
        8
    baojunz  
    OP
       1 小时 15 分钟前
    @maybedk 是的,但是目前我无从下手,不知道如何搜索相关的这种关键字或者相关的源码。导致找不到合适的答案。
    p3ngb0
        9
    p3ngb0  
       58 分钟前
    baojunz
        10
    baojunz  
    OP
       48 分钟前
    @p3ngb0 十分感谢,我看一下。
    BBrother
        11
    BBrother  
       14 分钟前
    这跟五线谱有什么关系?然后识别单音还是一段旋律?需不需要时值完全对应?

    如果时值需要完全对应那就:
    1. 根据音符时值截取人声音频
    2. 傅里叶变换
    3. 找出主音频率
    4. 跟音符对应的频率对比

    如果不需要在时值上进行对应只需要识别音高的准确性:
    1. 根据当前音符时值设置时间窗口
    2. 在超时范围内滑动时间窗口获取若干段音频
    3. 傅里叶变换
    4. 找出主音频率跟音符对应的频率对比
    5. 找到匹配的就进行下一个音符的匹配
    6. 否则在超时前重复之前步骤
    7. 超时判定为当前音符不匹配

    以上方法为本人瞎编的,不对结果的准确性负责。
    baojunz
        12
    baojunz  
    OP
       8 分钟前
    @BBrother 十分感谢,我尽可能的理解你提供的解决方案。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5355 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 08:32 · PVG 16:32 · LAX 01:32 · JFK 04:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.