AI识谱——将乐曲转化为五线谱

news2024/11/26 17:24:16

导言:

会乐曲的小伙伴在听到一首好听的乐曲的时候,肯定想过将这首歌曲转换为谱子给弹出来。除了上网找乐谱、请大神帮忙扒谱或者自己扒谱外,小伙伴也可以尝试一下本文介绍的AI识谱流程,让我们开始吧!

注意了,本文扒出来的谱子或者方法有可能不能使用,读者可以参考该文的方法进行改进或调整,或者只是简单图一乐,哈哈~

step1:获取音频源

我们一般会通过视频或者音乐播放器软件听到好听的歌曲,我们最终需要获得MP3格式的文件,因此对于音乐播放器

  • 我们要下载MP3格式的原始音频;
  • 或者下载其他格式的音频,再转换为MP3格式

对于网络上的视频,我们则需要首先将视频下载到本地,再将视频中音频提取出来,导出为MP3文件,这里,我们推荐一个好用的微信小程序——实用去水印软件

如图,只需要将视频链接粘贴到小程序中,解析完成后点击保存到手机,或者复制无水印链接到浏览器中打开,就可以将原始视频MP4格式下载到本地了。得到本地视频后,我们可以使用pr软件导出音频为MP3,这里我们再推荐一个好用的软件(不过该软件需要收费)——闪电音频格式转换器

官网地址:闪电音频格式转换器-全面覆盖常见音乐格式_音频合并分割_音频压缩 (callmysoft.com)

该软件支持将各种类型格式的音频,以及视频转换为MP3音频输出。

step2:MP3转MIDI

这里,我们使用了pianotrans项目:

pianotransicon-default.png?t=O83Ahttps://github.com/azuwis/pianotrans

利用此系统,我们可以将MP3转录为带有踏板信息的MIDI文件。这是一个为Windows和Linux/macOS上的用户提供的简易图形用户界面和打包工具。

需求条件:
操作系统:Windows 7或以上版本(64位)、Linux、macOS(Intel/M1)
内存:至少4GB

Windows使用说明
下载并安装Visual Studio 2015、2017和2019的Microsoft Visual C++ Redistributable(vc_redist_x64.exe)
下载并解压PianoTrans-v1.0.7z(1.5GB下载量,使用7-Zip解压)

PianoTrans默认使用GPU进行推理,如遇到问题,可尝试运行PianoTrans-CPU.bat以强制使用CPU。

解压并打开文件夹,双击PianoTrans.exe即可打开PianoTrans:

此时我们点击Add files to queue,将刚才处理或者下载好的MP3文件导入,然后等待,结束后即可在MP3相同的文件夹中得到转换好的mid文件。

此时我们可以试听一下mid音乐文件来听听效果~

 step3:MIDI转五线谱

这里我们需要将MIDI转换为五线谱。我们可以使用Sibelius软件。

Experience the Power of Sibelius Music Software - Avid

Sibelius是一款功能强大、备受业界推崇的音乐制谱软件,广泛应用于音乐教育、电影配乐、管弦乐团、合唱团等领域:

  • Sibelius软件来自芬兰音乐巨匠西贝柳斯的故乡,由就读于剑桥和牛津的一对双胞兄弟Ben和Jonathan Finn所创。
  • Sibelius软件在全球拥有众多用户,是音乐制谱领域的佼佼者。
  • 强大的乐谱制作和编辑功能:Sibelius支持多种乐器和音符输入方式,可以创建和编辑各种类型的乐谱,包括交响乐、室内乐、合唱曲等。它还支持复杂的和声符号、特殊技巧标记和各种音符变化,让用户能够准确地表达音乐创意。
  • 丰富的音乐字体和符号库:Sibelius提供了丰富的音乐字体和符号库,用户可以自定义乐谱的样式和排版,以满足不同的需求。
  • 音频处理与虚拟乐器库:Sibelius不仅支持基本的乐谱制作和编辑功能,还提供了高级的音频处理和虚拟乐器库,让用户能够为乐谱添加逼真的音色,进行即时演奏和录制。

Sibelius软件分为基础版、标准版和旗舰版三个版本,以满足不同用户的需求。基础版适合初学者使用,可以创作包含多达4种乐器分谱的简单乐谱;标准版适合编曲爱好者使用,可以创作包含多达16种乐器分谱的丰富乐谱;旗舰版则适合专业音乐制作人使用,可以创作具有无限分谱和定制布局的丰富乐谱。用户可以根据自己的需求选择合适的版本进行购买。

打开Sibelius,将MIDI文件导入,即可在主页看到五线谱内容:

这里,我们可以利用该软件对音符在五线谱上进行适当的修改或标记,还可以播放进行试听。点击文件—导出即可得到歌曲对应的五线谱了!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2219667.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024 Python3.10 系统入门+进阶(十七):面向对象基础

目录 一、面向对象概述1.1 面向对象简介1.2 对象和类1.3 定义属性和行为1.3.1 用数据描述对象的状态1.3.2 行为就是动作 1.4 隐藏细节并创建公共接口1.5 组合1.6 继承1.6.1 继承提供抽象1.6.2 多重继承 二、封装2.1 Python类定义2.2 创建类的成员2.2.1 创建实例方法并访问2.2.2…

PythonExcel批量pingIP地址

问题: 作为一个电气工程师(PLC),当设备掉线的时候,需要用ping工具来检查网线物理层是否可靠连接,当项目体量过大时,就不能一个手动输入命令了。 解决方案一: 使用CMD命令 for /L %…

机器学习在聚合物及其复合材料中的应用与实践

在当前的工业和科研领域,聚合物及其复合材料因其卓越的物理和化学性能而受到广泛关注。这些材料在航空航天、汽车制造、能源开发和生物医学等多个行业中发挥着至关重要的作用。随着材料科学的发展,传统的实验和理论分析方法已逐渐无法满足新材料研发的需…

【力扣打卡系列】滑动窗口与双指针(无重复字符的最长子串)

坚持按题型打卡&刷&梳理力扣算法题系列,语言为go,Day7 无重复字符的最长子串 题目描述解题思路 不含重复字符——》考虑使用哈希表来存储记录为了提高效率也可以用数组,hash : [128]bool{} (因为存的是字符的ASCLL码&…

【Unity踩坑】无法关闭Unity(Application.Shutdown.CleanupEngine)

安装了Unity 6正式版,在关闭Unity 项目时,会出现下面的提示,一直无法关闭。 一直显示 Application.Shutdown.CleanupEngine。 查了一下。这是一个历史性问题了,看来依然没有解决。 参考:Application.Shutdown.Cleanu…

web API基础

作用和分类 作用: 就是使用 JS 去操作 html 和浏览器 分类: DOM (文档对象模型)、 BOM (浏览器对象模型) 什么是DOM DOM (Document Object Model) 译为文档对象模型,是 HTML 和 XML 文档的编程接口。 HTML DOM 定义了访问和操作 …

权限(补充)

在上一篇Linux权限(想了解的可以点击看看哦)中已经见识了一部分权限,但是少了很重要的一部分: 那就是用户之间的转换,文件读写的关系,这里就简单的介绍一些; 我们在Linux权限知道了目录权限的关…

推荐一款多显示器管理工具:DisplayMagician

DisplayMagician是一款开源工具,专为Windows用户设计,能够通过一个快捷方式轻松自动配置屏幕和声音。它特别适合游戏玩家和应用程序用户,可以实现屏幕配置、声音设备切换以及启动额外程序等功能,最后在游戏或应用程序关闭时&#…

Qml-Item的Id生效范围

Qml-Item的Id生效范围 前置声明 本实例在Qt6.5版本中做的验证同一个qml文件中,id是唯一的,即不同有两个相同id 的Item;当前qml文件中声明的id在当前文件中有效(即如果其它组件中传入的id,与当前qml文件中id 相同,当前…

基于curl和wget命令编写的多文件或大文件批量上传下载

最近需要在windows和服务器linux系统之间传递大量的文件,部分文件非常大(TB以上),并且文件夹中包含文件或文件夹,需要先进行上传再进行组织,因此就想办法结合curl和wget命令编写了命令或脚本工具&#xff0…

三菱PLC伺服-停止位置不正确故障排查

停止位置不正确时,请确认以下项目。 1)请确认伺服放大器(驱动单元)的电子齿轮的设定是否正确。 2)请确认原点位置是否偏移。 1、设计近点信号(DOG)时,请考虑有足够为0N的时间能充分减速到爬行速度。该指令在DOG的前端开始减速到爬行速度&…

【云从】六、云存储

文章目录 1、应用架构2、存储设备3、存储方案3.1 直连式存储DAS3.2 网络连接存储NAS3.3 存储区域网络SAN3.4 分布式存储ServerSAN3.5 软件定义存储SDS 4、云存储4.1 云硬盘CBS4.2 文件存储CFS4.3 对象存储COS 1、应用架构 2、存储设备 硬盘性能对比: 硬盘接口对比&…

C语言(函数)—函数栈帧的创建和销毁

目录 前言 补充知识 一、函数线帧是什么? 二、函数线帧的实现(举例说明) 两数之和代码 ​编辑两数之和 汇编代码分析 执行第一条语句 执行第二条语句 执行第三条语句 执行第四、五、六条语句 执行第七条语句 执行第八、九、十条语句 执行第十…

Scroll 生态首个 meme 项目 $Baggor,我们可以有哪些期待?

在最近几个月里,加密市场整体表现平稳,无论是比特币还是山寨币板块,都处于震荡状态,并未显示出突破前高的迹象。然而,在这样的市场背景下,meme币却持续扛起了大旗,令这个看似不太熊的熊市不断引…

递归算法笔记

根据b站视频整理的 **视频地址:**https://www.bilibili.com/video/BV1S24y1p7iH/?spm_id_from333.788.videopod.sections&vd_source6335ddc7b30e1f4510569db5f2506f20 最常见的一个递归例子: 斐波那契数列:1,2,3…

Linux 使用xtrabackup备份MySQL数据

目录 一:xtrabackup 介绍二:实现数据备份1. 实现全备份2. 实现增量备份3. 实现差异备份4. 全备份时压缩数据5. 全备份时排除指定表不备份6. 全备份时排除指定库不备份 三:实现数据还原1. 全备份数据恢复流程2. 全备份压缩后的数据恢复流程3. …

神仙公司名单(长沙)

神仙公司(长沙) 小周末,继续 神仙公司系列。 长沙,湖南省的省会城市,不仅以其深厚的历史文化底蕴著称,同时也是一个充满活力的现代都市。 长沙的经济活力、教育资源、医疗资源、就业机会、居住环境、生活成…

python中堆的用法

Python 堆(Headp) Python中堆是一种基于二叉树存储的数据结构。 主要应用场景: 对一个序列数据的操作基于排序的操作场景,例如序列数据基于最大值最小值进行的操作。 堆的数据结构: Python 中堆是一颗平衡二叉树&am…

15分钟学Go 第2天:安装Go环境

第2天:安装Go环境 1. 引言 在学习Go语言之前,首先需要配置好本地开发环境。本节将详细介绍如何在Windows 11上安装和配置Go语言环境,包括安装步骤、环境变量设置、VS Code配置与测试、以及常见问题解决方案。完成这些步骤后,你将…

Excel:vba实现筛选出有批注的单元格

实现的效果:代码: Sub test() Dim cell As RangeRange("F3:I10000").ClearlastRow Cells(Rows.Count, "f").End(xlUp).Row MsgBox lastrow For Each cell In Range("a1:a21")If Not cell.Comment Is Nothing ThenMsgBox…