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

音频文件生成乐谱的工具有吗?

  •  
  •   junchenghe · 235 天前 · 2314 次点击
    这是一个创建于 235 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在在扒谱的时候,花费了太多时间,所以想有没有一种工具可以直接通过上传音频文件,在选择某种乐器类型,提取出音乐特征,最终生成乐谱,同时可以在线进行编辑的一个工具呢?

    在找了很多工具之后,有的工具是可以提供部分功能,暂未找到可以在一个工具上一键生成的,所以我现在想是不是可以开发这么一套工具。当然我在查阅了很多资料后,发现在提取特征这一步很有难度。我理解大概处理流程如下,如有非常了解的朋友,我们可以聊聊!

    1.音频文件上传,根据选择需要分离的音频类型,分离出其中的音频,如(鼓、人声、吉他、贝斯),当然这一步可能是需要对音频降噪、增强等
    2.根据分离出的音频,提取其中的音乐特征,提取的方式有多种(短时傅里叶变换、离散余弦变换、离散小波变换、梅尔频谱和梅尔倒谱、恒 Q 变换)等算法,当然还有很多的开源库:librosa 、essentia 等
    3.通过提取出的音乐特征与乐谱中需要表示的音乐标记作映射
    4.最后通过这些音乐特征来绘制乐谱,生成乐谱。

    当然这里面最难的肯定是对音乐特征的提取,由于在音频中可能会参杂很多的其他杂音,导致通过人工智能、机器学习也很难去分析出其中的音乐特征值。有兴趣的话,可以邮件联系我,我们一起探讨下吧!

    email:aGVqdW5jaGVuZzk0QGdtYWlsLmNvbQ==
    34 条回复    2023-09-07 10:10:19 +08:00
    wekecher
        1
    wekecher  
       235 天前
    AudioScore Ultimate 、ScoreCloud 呢?
    murmur
        2
    murmur  
       235 天前
    别探讨了,现在最新的 ai 模型已经能扒钢琴、鼓、人声、吉他、贝斯了,然后单一乐器转换 midi 就很好了

    不过依然需要显卡

    我不知道你的理解有什么问题,但是我知道最新的模型总共有 40gb
    cq65617875
        3
    cq65617875  
       235 天前
    @murmur 来个地址 我观摩观摩?
    murmur
        4
    murmur  
       235 天前   ❤️ 1
    @cq65617875 uvrs 还是 uvr5 ,这个因为软件是个图片我也认不清楚,我下载的是 4g 的基本版,群友说下载完整模型是 40g

    实测 5800u 跑一首歌需要 10 分钟,3050 不认卡没法用 gpu 加速
    cnuser002
        5
    cnuser002  
       235 天前
    @murmur 谢谢,很感兴趣,我去试试
    lvtuyukuai
        6
    lvtuyukuai  
       235 天前
    ispinfx
        7
    ispinfx  
       235 天前
    转可用谱还是很难的,出来后离不开一些人工的修改。当然如果你只是随便要具能听的 MIDI ,当我没说。。
    tingyunsay
        8
    tingyunsay  
       235 天前
    转出来了,和弦怎么配更还原,这些都是问题,简单的和弦自己也能听出来,扒谱本身就是根据每个人的思路去定制化的东西,你要通用那就只能给出最基础的和弦音了吧
    murmur
        9
    murmur  
       235 天前
    @lvtuyukuai UVR5 是有二级模型的,先用 1 级模型分离人声和伴奏,然后二级模型再拆解乐器,目前最好的模型 cpu 跑一次要 1 个小时,所以才要显卡加速,建议直接下网友弄好的网盘版系在
    junchenghe
        10
    junchenghe  
    OP
       235 天前
    @murmur 有链接吗?您说的 uvr5 这个是做音频分离,但是分离出的乐器音频到分析其中的音乐特征的生成乐谱的,我暂时还没看到有的,您有知道的吗?
    junchenghe
        11
    junchenghe  
    OP
       235 天前
    @tingyunsay 是的,像吉他这种和声还原是很难的,每个人编排都不一样,但是像鼓,都是标准记谱,应该是可以做的
    junchenghe
        13
    junchenghe  
    OP
       235 天前
    @murmur 好的,感谢
    iX8NEGGn
        14
    iX8NEGGn  
       235 天前 via iPhone
    太难了,钢琴应该是最好处理的了,都无法做到。
    比如 2020 年时字节就发了篇钢琴转录的论文,并提供了代码,准确度有百分之九十五以上,虽然生成的 midi 用来听还不错,但想生成人类友好可读的谱子,感觉很难。
    tingyunsay
        15
    tingyunsay  
       235 天前
    @junchenghe 我倒是真希望有这么个好用的工具出来,现在找一张参考性还不错的谱子太难了,要自己扒谱太耗费时间,mark 一下,楼主加油
    iX8NEGGn
        16
    iX8NEGGn  
       235 天前 via iPhone
    音轨分离和音符转录反倒不是最难的,已经有较为成熟的开源项目,最难的反倒是最后一步,如何将提取到的音符的音高和时值转化为谱子。
    因为人类弹奏时的时值是不标准的,比如同样是四分音符,前一个按下的可能是 0.5 秒,后一个按下的是 0.3 秒,很难确定该把它量化成四分音符还是十六分音符,时值更短的音符就更会出现这种情况了,这会导致音符对不齐,得到的谱子是错乱的。
    murmur
        17
    murmur  
       235 天前
    @tingyunsay 其实可以花钱买,yamaha music data 可以买日语歌,tw 的什么著出版社可以买流行歌的谱子,基本都是 1usd 一张的价格
    murmur
        18
    murmur  
       235 天前
    @iX8NEGGn 这不就是标准的量化么,大概是 15 年前做 midi 的时候还一群人吹牛逼说人的演奏不准确所以 midi 的音符也不应该是固定位置和固定量化,后来这群吹逼的人闭嘴之后所有的乐器都是做了量化的
    murmur
        19
    murmur  
       235 天前
    这里典型的其实就是精忠报国,这首歌你无论机器测速还是自己 tap tempo 都是测不出整数值的,说明鼓手可能是真的手打出来,后面的流行歌随便找个测速软件都能测出整数

    有个例外是锦鲤抄,按 3/4 测速和 6/8 是不一样的,一个是 87.5 一个是 175
    iX8NEGGn
        20
    iX8NEGGn  
       235 天前
    @murmur 你能推荐一个将人类弹奏的 midi 量化得比较好的软件吗,就钢琴流行曲五六级级别的曲子就行,我试了很多,没一个量化后能达到友好可读级别的,更别说古典奏鸣曲哪些难度的了。
    murmur
        21
    murmur  
       235 天前
    @iX8NEGGn 现在的 AI 辅助扒带只能用在抖音级别的口水歌的,我相信 AI 是真的学会了乐理,他能在混音之后根据自己的知识猜出来原来的乐器是哪个套路,再加上口水歌都是套路和弦

    古典乐并不适用
    cjd6568358
        22
    cjd6568358  
       235 天前
    搭车问一个,有没有通过上传钢琴谱生成音频文件的?
    murmur
        23
    murmur  
       235 天前
    @cjd6568358 上传的钢琴谱没有力度也没有踏板,演奏出来难听的要死
    iX8NEGGn
        24
    iX8NEGGn  
       235 天前
    @cjd6568358 你说的钢琴谱如果是指图片形式的谱,那你要找的是 Optical Music Recognition (光学音乐识别)软件,将图片谱转换成数字谱( musicxml ),然后随便一个打谱软件都能生成音频。我用过的 OMR 软件有:

    - 收费
    - [CapellaScan (体验较好)]( https://www.capella-software.com/us/index.cfm/products/capella-scan/info-capella-scan/)
    - [PhotoScore (体验较好)]( https://www.neuratron.com/photoscore.htm)
    -
    - [SmartScore (体验一般)]( https://www.musitek.com/)
    - [ScanScore (体验一般)]( https://scan-score.com/en/)
    -
    - [SharpEye (体验较差)]( http://www.visiv.co.uk/)
    - [PDFtoMusic Pro (体验较差)]( https://www.myriad-online.com/en/products/pdftomusicpro.htm)
    -
    - [PlayScore 2 ( IOS 端)]( https://www.playscore.co/)
    - 开源
    - [Audiveris ( Java )]( https://github.com/Audiveris/audiveris)
    - [Mozart ( Python )]( https://github.com/aashrafh/Mozart)
    - [Oemer ( Python )]( https://github.com/BreezeWhite/oemer)
    - 在线
    - [Soundslice (收费,基于深度学习)]( https://soundslice.com)
    - [Maestria (收费,基于深度学习)]( https://newzik.com/maestria)
    cjd6568358
        25
    cjd6568358  
       235 天前
    @murmur 不是会有重音记号和延音记号吗?虽然大概率没有人弹的专业,但是最起码该有的节奏不会错
    cjd6568358
        26
    cjd6568358  
       235 天前
    @iX8NEGGn 感谢
    hesetiema
        27
    hesetiema  
       235 天前
    之前看到过一个在线工具,地址: https://vocalremover.org/zh/splitter-ai
    hesetiema
        28
    hesetiema  
       235 天前
    还有类似的,地址: https://songdonkey.ai/
    hesetiema
        29
    hesetiema  
       235 天前
    没有深度使用过,但估计复杂的功能还是实现不了
    tingyunsay
        30
    tingyunsay  
       235 天前
    @murmur 我花钱买谱子花了几百块目前为止,而且能买到的谱子都是大众化的,真的听到那种很想要弹的歌只能自己慢慢扒了,找别人太贵了,几百上千一首歌吧
    cnbatch
        31
    cnbatch  
       235 天前
    @iX8NEGGn 古典奏鸣曲就没必要扒谱了吧,找到乐谱的麻烦程度并不高

    如果是指现代作曲家创作的新奏鸣曲,那倒是未必能容易地找到乐谱
    iX8NEGGn
        32
    iX8NEGGn  
       235 天前
    @cnbatch 我并不是想要说扒古典,而是想说难度稍微大点的就量化不来,只有那些单音儿歌或者套路和弦的曲子才能量化好。
    junchenghe
        33
    junchenghe  
    OP
       234 天前
    @iX8NEGGn 是的,就是想问问没有做过这方面的朋友
    junchenghe
        34
    junchenghe  
    OP
       234 天前
    鼓是不是做这方面更简单些啊?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1193 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:09 · PVG 02:09 · LAX 11:09 · JFK 14:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.