gamecore app logo
本文系用户投稿,不代表机核网观点
近日托《集合啦!动物森友会》、重轻老师和少多老师的福,让游戏内的语音合成火了一把。借着这股东风,想和大家介绍一下与其相关的一些背后故事:动森的制作人员是如何想到这样来处理声音的?语音、音乐又如何与科技发生联系?程序员懂了乐理以后能做出什么脑洞大开的玩意?
作为一个研一的新人,笔者在此恬不知耻地斗胆为大家介绍一下这一音乐、信号处理和机器学习的交叉学科:音乐信息提取 (Music Information Retrieval,简称MIR)。
其实在两年前重轻老师和少多老师作为嘉宾录制的声音工程节目中, 两位已经为大家介绍了科技与音乐创作的结合能创造出怎样的神奇体验。而作为音乐的另一面,当聆听和理解音乐的过程与科技相结合,便是本文想为大家介绍的“音乐信息提取”领域了。因为是从聆听与理解的角度出发,因此MIR也被称为音乐信息学(Music Informatics)或机器听觉(Machine Listening)。
那么让机器能“听懂”音乐后我们能做到什么呢?我们来听一段不太一样的“劲歌金曲”:
这是Deezer出品的声源分离工具Spleeter的一小段demo。在一首完整的歌曲里,如果我们能让机器分辨出那些声音是由歌手演唱,哪些是伴奏,就能像视频里这样把歌曲的演唱和伴奏分离开来。
做菜和混音,以及它们的反过程
听过声音工程节目的朋友应该知道,我们在制作歌曲的时候通常是会将不同乐器用不同的麦克风,分成不同的音轨来录制后,再经过混音这一过程制作成一条合成的音频的。如果用料理来类比,这个过程就好比与将不同的原材料混合、烘焙,制作出食物的成品。然而如果我们将这个过程反过来,从做好的番茄炒蛋里把鸡蛋、番茄、油分离出来,并且得到完整的原材料,这就是声源分离所能做到的(也可以使用疯狂钻石)。
然而了解过高中物理的热力学定律或者学过信息论的同学应该知道,这样的熵减过程是违反熵增定律的:不可能从一杯50度的温水中分离出半杯0度的冰水和半杯100度的开水。那么我们如何能做到将声音的番茄炒蛋分解成声音的番茄和声音的蛋呢?这就要讲到声音知识的重要性了。
我们知道声音,或者说声波,本质上是空气或其他介质产生的规律性的震动,而不同的发声物体的震动规律也有所不同。比如架子鼓的敲击声是短促有力的,并且几乎没有音调(当然学鼓的朋友知道鼓皮也是要调音的);而小提琴的声音则悠长均匀,音调十分明显。
基于这样的现象,我们可以让算法学习不同乐器的频谱特征,从而分离出不同乐器,或者伴奏与人声。
接下来再为大家介绍一个很多人想要拥有的技能:扒谱。
很多学吉他的朋友都会有一首梦想自己能够演奏出来的曲子(一定不是海阔天空)。但包括我在内,许多人初学吉他的时候也经常会有一个困扰:上哪找谱子呢?这时如果能让算法帮我从这首歌的音频里面分析出来每个小节用的是什么和弦,那我成为吉他大师不就指日可待了吗!(并不
是的!现在扒谱也能让机器帮你做!请看一个我自己做的demo:
妈妈再也不用担心我扒不出谱啦
弹一个简单的C大调1645,算法就能识别出我所弹的BPM,节奏型,以及每一拍所弹的是什么和弦!是不是非常的炫酷呢!(并不)当然在这背后所需要的是信号处理知识和音乐知识的高度结合,如果大家有兴趣的话,笔者之后可以为大家继续讲解。
除了声源分离和和弦识别之外,MIR还有十分多的应用:听歌识曲、抄袭识别、旋律提取、甚至也能进行音乐创作;而当这一切和人工智能(神经网络)结合以后,又能创造出更多脑洞大开的成果!这里再和大家分享一个8bit音乐自动生成算法LakhNES
这里展示的所有音乐都是用神经网络学习8bit音乐样本后自动生成出来的。也许再过一段时间,甚至连8bit游戏都能自动生成了。
想到这里不禁又想起另一位朋友丑客在机核所连载的GEB系列读书笔记:侯世达当时所探讨的看似风马牛不相及的音乐、人工智能和艺术,正在发生着可能连他也未曾设想到的奇妙融合。
最后感谢您的阅读,由于笔者的水平所限只能为各位先介绍到这里。第一次投稿,如果各位感兴趣或者想拍砖的话请在评论区给我留言,非常感谢!
I
亚瑟
亚瑟

17 人关注

知识挖掘机
知识挖掘机

32881 人关注

评论区

31评论热门最新