琵琶行论坛

 找回密码
 注册

你所不知道的游戏音乐

热度 17已有 3728 次阅读2009-10-20 16:04 |

你所不知道的游戏音乐

文:PPXClub Masaki


对于每一位游戏爱好者来说,游戏的配乐也是追求的对象之一。因此也有了大多数游戏在发售后或发售前便会发行游戏原声集,也就是我们常说的"OST",也有一些作品还会发行编曲集(AST)。而仍然有一部分游戏配乐十分优秀,但是没有发行过任何的音乐CD,这也便使得很多的爱好者开始通过各种方式去制作这类游戏的音乐。

而收集到了的这些游戏的原声之后的爱好者们,也会有时会去有意无意地比较不同平台间的音乐是否好听——而这通常是说音质如何。笔者在前段时间,就在网络上与几位不相识的网友,对于部分同款游戏在不同的平台上的音质孰优孰劣的问题辩论了很长的时间,抛开音色的个人喜好问题之外,我也在想一个问题,到底是什么原因造成一些游戏换了平台之后,声音效果就变了呢?而这种造成这种问题的原因,多数是游戏的移植所带来的。那么,我觉得就应该从游戏音乐文件在游戏ROM(或光盘)中的格式存在方式进行反向追究其根源。为什么是反向追究呢?这就好比类似于在编辑文档时的"撤消"的动作,虽然在这里不能说是100%能够得到所有的工作步骤,但是可以获得一些数据格式相关的技术上的信息,而这又类似于"反编译"的"逆向制造",而接下来的事情就是能不能正确地看懂的问题了。

要从游戏ROM或光盘中,找到游戏音乐文件的存放,这就不得不谈到游戏音乐抓取的概念了。比如从现在具有最广泛游戏媒体支持的主机——PS2来说,或许有很多人用过如Cube Media Player之类的软件去分析过PS2、Xbox360的游戏光盘中的一些如ADX格式的音乐文件,并且还进行了导出,这就是一种最简单的游戏音乐抓取。另外,还有一种音乐格式是叫做.PSF2的,也就是所谓"PlayStation 2 Sound Format"的模拟音乐部分的格式。不过可能会有人问,为什么刚才说的主机机种是PS2,而为什么不是Wii或者是Xbox360?问题是在于现在的Wii、Xbox360的游戏有比PS2现存多吗?(当然是指你能立即买到,而不一定指你收藏的或能下到的ISO)而他们的音乐格式或者说能够模拟出主机的音乐播放的模拟器出现了吗?都没有。不过,其间的一些通用性的问题是所有机种共通的,那就是一种是所谓的流媒体格式音乐,还有一种是以极小的文件空间占用来保存音乐回放数据的,在电脑上是叫做模拟音乐的一种音乐格式数据。下面就先说说"模拟音乐"的这一类别的音乐数据,之后再来介绍说明流媒体格式的。

模拟音乐——不一样的MIDI

模拟音乐,英文一般写成"Emu Music"。很多玩家应该都知道有游戏模拟器,当年在GBA的时代,可以说是以VBA(GBA的模拟器之一,但市场占有率最大)为代表的模拟器盛行于市,而在进入了NDS之后,则相对开始减少。虽然这模拟器的用的人是多是少与模拟音乐有时没有关系,但是现在只要有模拟器的机种,一般都有着属于这一机种的模拟音乐格式。比如,Game Boy有着GBS(Game Boy Sound System)的模拟音乐格式,FC(Family Computer)也就是所谓的NES(Nintendo Entertainment System)也有着NSF/NSFe(NES Sound Format)的模拟音乐格式,包括其他还有SPC(SFC的)、QSF(CAPCOM街机系统的Q-Sound的)、PSF(PS的)、SSF(SS的)一直到PSF2(PS2的)。而模拟音乐只能使用如WINAMP加上相对应的插件,或者直接拿一款软件叫做"Audio Overload"(官方网站:http://www.bannister.org/software/ao.htm,英文)来播放。

而如果你找到这些模拟音乐的文件,你会发现这些文件与我们通常看到的就算如MP3这类大家都知道的有损压缩音乐格式的大小还要小,而少部分格式——或者说是有一些游戏,虽然只有一个文件,但是里面包含了整个游戏中的所有音乐(这部分格式如NSF、以RAR压缩的SPC音乐等)。而这些音乐之中,也有着很多是已经发行过OST的,而这部分音乐一般全曲加起来,最大却不到100MB。而这还是指PS2上的大部分游戏,其他更早的机种的文件则更小了。举几个不算太远的例子。很多比较老的玩家对于《最终幻想8》的音乐应该算是很喜欢的吧?10年前王菲的《Eyes on me》可是红遍全世界呢,直到前几天我在查阅某品牌的耳机的评测时,还发现了发布日期是2008年10月17日的稿子,上面赫然写着320kbps的《Eyes on me》……这款游戏是一套4CD的共74曲的原声集(后期的那些咱先不算),而PSF模拟音乐只有12.4M,共84曲,有13首在OST里没有收录,当然也不含王菲的那首到现在也还没有没人听的《Eyes on me》。而12.4M要用MP3 320kbps编码,只能存下5分钟左右的音乐。而在PS2上的《最终幻想12》,全部PSF2音乐只有68M的RAR包。

那么有人可能会问了,文件大小差这么老大大的,音乐效果会一样吗?好吧,但是,我们有一个前提是,不能与MP3的音质去比,要比只能对比CD或者无损的格式。因为MP3的有损压缩的损失实在是太大了,并且是改变音色的压缩(可以参见下文的ATRAC的说明)。但是,我可以这么说,不管是从GB还是FC,到PSF、SSF,这音乐是不会有什么差别的——主要可以看波形。而PSF2由于在制作上,可以在配置文件中加入不同"反响"音效的问题,就可能会与原始的游戏声音就不同——更别说与OST比了(虽然其他一些格式也可以这样,但多数需要其他的后期去改变)。虽然说OST也是一种"录制于"游戏声音的一种"音乐格式",注意,我在这里加了引号。至于要再详细的,那只能是专业地比较数据了,但过于繁琐,就此放过吧——因为有涉及到很多的问题,比如采样率不同等等的。最方便的就是拿到CD与模拟音乐主观试听了——但这同样带有主观印象的问题。好,一般来说,到这里模拟音乐与游戏机或者说是OST里的音乐是完全一样的——也就是与游戏机的音频输出的波形是相等的。如果OST的CD灌制没有进行特别音效处理,那也应该是一样的。

为什么这么小的文件可以出来如此的效果呢?不知道有没有读者对于这一章节的节标题是否有过注意?有人可能会问,是"MIDI"吗?不错,就是MIDI。但有人可能会继续问了,这个MIDI好像一般听起来,没这样好听吧?不错,咱们一般的使用的是标准的MIDI格式文件,这种文件也可以用于一些支持和弦彩铃的手机。但是,我不知道有没有人在不同和弦音数的手机上去试同一个MIDI文件,或者不同品牌间的尝试。这时会有一些MIDI在手机演奏的过程中,音色会有所不同。而这是为什么,就是在于手机间的音色库的不同,而就是这音色库的不同,就能够以同一个MIDI文件演奏出来不同的效果。那么"MIDI"又是什么?或许有人知道,但是为了本文的阅读方便,我将来自于维基百科的"MIDI"的一些说明抄编录如下(相比较原文有改动):   
乐器数码接口 (Musical Instrument Digital Interface, 简称 MIDI) 是一个工业标准的电子通讯协定,为电子乐器等演奏设备 (如合成器) 定义各种音符或弹奏码,允许电子乐器、电脑或其它的演奏设备彼此连接,调节和同步等即时交换演奏数据。
MIDI本身并不传送声音数据,只传送如音调和音乐强度的数字数据,音量,颤音和相位(指左边声道的空间定位)等参数的控制信号,还有设定节奏的时钟信号。在不同的电脑声卡上,输出的声音也有所不同。
现在,几乎所有的音乐录音将MIDI作为一项关键开放技术来记录音乐。除此之外,MIDI已经渗入移动电话领域。MIDI用来播放支持MIDI移动电话的铃声。MIDI还可为某些视频游戏提供背景音乐。

在文中,我们可以清楚地看到MIDI还可以为某些视频游戏提供背景音乐的说明了。但是,这里仍然有一个问题不能解决,就是为什么有些游戏明明是同一平台,但是声音的音色会不同?按照上面所说的,这应该有可能是相等的呀?因为游戏机虽然没有电脑上的那专门的声卡——准确地说都是"集成声卡",但为什么仍然有不同呢?同样是上面那段文字,不知道是否有人注意过不同的电脑声卡的声音不同?当然,其实从Windows XP开始,不同声卡出的MIDI音也是一样的,这其实是由于"合成器"的原因。硬件合成器自然会因为硬件不同而不同,而能否使用软件呢?只要硬件上可行的,就能够用软件的方式去实现,这可以说是计算机中的一种基础知识吧。硬件环境可以由软件去模拟,所以软件合成器当然可以。而这合成器里所带的最主要的数据就是"音色库"。

在了解了一般定义下的"MIDI"之后,就可以来谈谈这部分游戏音乐的格式了。但是,一般说来,这些游戏音乐的数据其实与上面我们谈到的没什么区别。只不过,不管是早期的GB、FC,还是中期的PS、SS、N64,或者还是现在的Xbox360、PS3、Wii。他们的声音芯片其实并不会去带在PC上所说的合成器音色库。而游戏的音色库由游戏厂商自己制作,并存入游戏的ROM或光盘之中。一般说来,游戏中的一首曲子能够正常播放需要有:曲目本身的MIDI文件,音色库头文件(用于说明哪段是什么乐器的声音),音色库自身数据。当然这里的MIDI文件各机种所使用的MIDI标准会不一样,比如PS的MIDI文件就有些是SEQ、SEP(Generic PSF Driver说明文件),而PS2时又是SCEI MIDI。这些都与一般的MIDI数据不完全相同,当然可以使用一些工具转成电脑上的MIDI格式,这是另外的问题了。只不过,在游戏的数据中,这些数据的使用方式是各机种相同的。那就是通过游戏的指令,比较换一个场景,然后读取上述的三种文件(或数据)进入内存。只不过有些游戏或机种是共通一个音色库,也有的是一个文件使用一个其专有的音色库,也有是几个音乐使用一个。而就是由于这些不同的音色库,才使得游戏音乐变得不一样。但这种技术性的说明对于一般的玩家来说并不重要,如果要想简章地搞清楚的话,可以形象一点说——MIDI就是乐团使用的乐谱,而音色库头文件就是在乐谱中指明使用的乐器在乐团中的位置是哪儿,而音色本身就是那乐器自己。

下面我想大概说一下"模拟音乐"。在上文中,我谈到了模拟器,而播放"模拟音乐"的播放器或者插件的本身其实就是一个用于模拟主机中的CPU以及"SPU"的模拟器。"SPU"是指"声音处理单元"——而这声音处理单元就是一块芯片,因此,"模拟音乐"也便有了"芯片音乐"的称呼,不过准确地说应该还是得叫模拟音乐,因为并实机也并不是完全通过那块声音芯片完成播放的。而在模拟音乐文件中,其实除了需要有在上面所说的MIDI、音色库头文件、音色库,这三个文件以外,还需要有游戏的引导程序(或者是音频驱动文件)以及其他相关设定的文件。比如说FC、GBA、NDS这些游戏的存档(不是游戏进度的那个哦)是ROM,一般而言,这类游戏音乐一般是把ROM中的不相关的程序、图像等等数据都不要,只留下可以用的音乐数据和相关的程序代码,当然有些则可能将音乐数据抓取出来成单个文件。还有一类是从光盘中取得的数据,这类主要是以PSF为代表的"可移植音乐格式"中的大部分机种,如PS、PS2、SS等等,它们则是从某个文件中,分别抓取三个主要相关数据,然后使用游戏中的程序或者是经改造后的程序,将他们放在一起。我个人也抓取并发布过一些游戏音乐,觉得有些机种的音乐抓取虽然简单,但文件并不一定是最简化的,比如GBA的,最简化的则需要很细心地去分化原数据,很累,也很需要时间。由于在制作模拟音乐的过程中,如果把原有的除去最大的音色库以外的几个部分损坏(指使用非原始工具编辑后的生成,而一般这种工具除了在开发包中存在以外,其他很难能够完美完成MIDI格式转换)了,那么,这个音乐文件将会无法播放。而如果是音色库的文件与原始的不一致,那么播放的声音则会变声、变调。因此,也可以看出模拟音乐的一个特性是——原始的无法改变。在另外一方面,模拟音乐自身发展到现在,有些音乐抓取出来后,可以进行声音效果的设置——但这原始是为了还原最接近于原游戏而用的,不过原始使用的是什么音效并无法得知,所以也只能去听,然后选一项类似地去应用,这就是有部分模拟音乐虽然听着没什么,但和游戏机本身比起来,或者是OST相比,却发现有很大的不同,原因就是在于可能原来游戏使用了反响,结果模拟音乐的文件中没有使用,或者使用了其他的了。应该说,只要硬件支持了多种声音实时特效的,那么模拟音乐就有可能与实机效果不同。

谁都能轻松抓取的音乐——流媒体格式

其实说到抓取游戏音乐,或许有很多人都用过WINAMP的插件或者如"CubeMediaPlayer"之类的软件去对一种格式叫做"ADX"的文件尝试过。比如用WINAMP直接打开在DC、XBOX或360游戏光盘上的这种文件进行播放,或者用某些软件将这些音乐转成WAV,然后再压成MP3。但是这类文件的实际大小也并不小。拿Neill Corlett(PSF格式的制定者)在"PSF常见问题"中的说明来说,这类格式就像是WAV、MP3、WMA、OGG、RM等音乐格式,而如果游戏使用的是这类流媒体的话,在游戏进行中将光盘退出,不过多久,声音就会停止,而序列格式(模拟音乐那部分)则不会停止播放(某些游戏可能会出现拖慢现象)。

我们知道,像WAV之类的音乐文件可以记录下实际乐器演奏,特别是对于交响乐团的演奏效果,在使用MIDI仍然使用原来的谱子进行演奏是无法得到那样的效果的。比如光荣的《三国志》系列在后期也都是采用了交响乐团的录音。在一些游戏中也使用过序列的方式去演奏一些古典乐,但多多少少声音比较单薄。另外,在我们的计算机上,有着很多的工具可以对如WAV、MP3之类的音频文件进行效果的制作,或者将录制好的一些音乐进行美化——当然,要做得好是需要很大的功夫的。也正是由于有着这样的优点,所以也有很大部分游戏的音乐是先在作曲者的工作室中完成创作并录制,然后再使用音频软件进行适当地修改,最后成为在游戏中的音乐。当然也有一些将早期版本的游戏移植后,将原来的序列格式的音乐转录成流媒体格式的例子。

从PC-Engine开始第一次将CD-ROM作为游戏的载体开始,流媒体的游戏音乐格式就开始真正出现在了家用游戏机上。在PCE上使用的这种格式是被称为一种叫"ADPCM"的音频流,ADPCM的全称是叫做"自适应差分脉冲编码调制(Adaptive Differential Pulse Code Modulation)"是一种可以不降低PCM(也就是常用的WAV、CD采用的编码格式)品质,而对数据进行压缩的格式,但是根据微软的DirectX的开发资料显示,ADPCM其实是一种有损压缩格式。微软的DirectX不仅用于PC,在Xbox360上也是被使用的。不过,ADPCM是通过给定一个"噪讯比值"(有些地方称之为"插值"),以节省量化密度的方式,来达到节省音频所使用的带宽——节省使用的空间。但是,如果根据工具导出的ADPCM的文件大小和播放时间来判断,ADPCM应该准确地说是一种最大限度地保证声音品质不变的一种压缩格式,在PS2上的一段2分钟不到的ADPCM文件的大小可以达到近5MB,这已经与使用压缩格式的如APE、FLAC的压缩后的WAV(PCM)大小相近了。在PS3的主机的情况上,鉴于开发资料无法查阅,加上游戏的光盘内容暂时无法介入分析,但估计这种格式也在PS3上"存活"着——因为在PS2上也是大量被使用的,自然不应该排除它仍在使用的可能性,并且这种格式的播放非常不占用CPU。顺便说一句,其实用于序列音乐格式的那个音色库的文件集,就是由ADPCM制成的。另外再带一句,也正是由于CD-ROM的导入,也使得有些游戏作品的音乐直接使用了CD-Audio,比如《DDR2》。

到了PS与SS的时代,虽然ADPCM在SS的主机上仍作为主力使用,但是在PS的阵营中,应该有很多玩家,特别是老玩家,都知道PS上的主要两大音频与视频的扩展名分别是XA与STR。不过,有时候这个STR其实也被只用于保存声音信息。对于SONY的这个"XA"格式,到底是什么编码现在似乎已经搞不清楚了,但是只有一点可以明白的,那就是它的采样率一般为33.75kHz,并没有达到使用序列格式的采样率——44.1kHz。并且,这一格式应该说是只在PS这一代上存在。进入PS2之后,所使用的SONY自主格式的是被称为"SONY SOUND 2"的一种格式。当然这"索尼声音2"准确地说只是来自于外界的称呼,至于开发资料上如何写的,不得而知。而对于我们玩家而言,能够将声音文件无损地导出为电脑可以播放的文件就可以了。

回过头来说SS方面。在1996年,株式会社CSK综合研究所(简称为CRI)开始向SS提供中间件(Middle Ware),而这中间件中间就包含了CRI ADX。应该有很多人对这个图标很熟悉吧?只不过现在换了一个图标而已。在1998年,CRI开始向DC提供这一系列的中间件,在2001年成立了现在的株式会社 CRI·Middle Ware,并与同年开始向PS2、NGC、XBOX提供,之后分别在02年、05年、06年、07年向PC、PS3、Xbox360、PSP、Wii和NDS提供这一套的解决方案。我们现在可以在这些机种中找到CRIWARE(06年定下的品牌名称)的LOGO图标。这个ADX具体有什么好的技术,不是我们所关心的了,但是,我们应该关心的是他的这个音质或者压缩后的码率如何了。根据CRI官方的信息,CRI ADX在48kHz的WAV或AIFF(苹果开发的一种无损格式音频文件,类似于WAV)的情况下,比特率为400kbps,压缩率为1/4。这种音质一般而言,应该算是声音质量98了。如果我们使用Windows Media Audio 9.2的CQ98去可变比特率去压缩,一般绝大多数的音频文件比特率也就是240kbps~355kbps,在这里为什么要选用WMA的呢?首先,MP4、AAC不支持可变比特率,而MP3并不是全频域压缩,压缩后的声音相比原始WAV就声音偏暖,这不符合不改变品质的要求。而由SONY开发的用于Walkman的音频格式ATRAC3Plus(AA3,支持在PSP中的音乐文件夹直接播放)的最高CBR码率也只有352kbps,所以这个400kbps虽然是有损压缩,但是不会基本破坏掉原始的声音品质。

在到了PSP上,由SONY主推的AT3——ATRAC3格式也被应用在游戏之中。但是说起这个AT3格式,虽然不能和之后的一些如WMA、AAC去比,也不能与高码率的MP3相比较,但是AT3自身的开发目的就是在当时把MP3格式比下去——要知道那时候,网上流传最多的MP3码率也只不过是128kbps。而根据SONY负责开发ATRAC的工学博士西口正之在说明音频压缩技术ATRAC的开发方针中就说到,"ATRAC提供的是不以意图改变音色的,自然的声音。不仅仅是改善声音的细节、解析度和听感上的SN,并努力将音乐全体以最干净的,原音的细微之处与不改变制作者的意图地进行再现。"所以,虽然AT3最高比特率虽然少,但是,相比较来说,细节的还原以及不改变音色等方面确实胜过了MP3。虽然这个AT3与ATRAC3Plus(并不是单纯的所谓加强版,而这是另一种技术。)相比又是更不能抬头的一种格式了。

当然,还很多游戏使用的流式音乐中的其他格式也是存在的,但要论于技术上面也无外乎都与上述提到的一些格式相同。其实所有的流式音乐格式的原理都一样,就是编码与解码的事。不同的编码器得到的结果自然会不同,即便都是无损压缩格式,或者采用不同的压缩级别,在一些有损压缩上面的不同音质等级等等因素都会产生不同的结果。不过,也就是因为是编码与解码的问题,所以现在已经有很多玩家不仅可以将一些游戏中的音频格式转成WAV,还可以将WAV转成游戏中使用的格式,比如PS2最初的也用于PSS视频格式的SS2音频部分,以及后来的ADX的编码,均可以在网上找得到压缩工具。只不过这些工具与开发商手中不同的是,网上能够找出来的工具多数是一些玩家研究者自行编写的程序,而开发商手中的则是功能完备的图形工具。

游戏音乐取得方法——正版OST?山寨OST?

怎么取得这些游戏音乐?这不开玩笑吗?当然搞OST的×××(至于是CD,还是其他什么,各位心中自明吧)了啊。不过,你的"山寨OST"是什么玩意?难道说……

不错,在本文中说了那么多,模拟音乐如果自己不会做,那能下到文件也可以转成WAV呀,搞成WAV格式之后,什么格式的都不好办吗?APE、MP3格式已不在话下,如果要制成Audio-CD都没问题。不过好像国内会做PSF、PSF2的比较少,其他格式也差不多,总共全世界也就这么些人嘛,会制作单种模拟格式的人保守估计也大概不超过1000人吧。毕竟做模拟音乐很累,很需要时间。但是,要将已经做好的模拟音乐转成声音文件却是一件很方便的事儿。一般只要一个WINAMP(因为绝大多数的模拟音乐的插件原生就是给WINAMP的),然后将所有的声音输出特效禁用,关闭图形均衡器的效果之后,就可以使用"Nullsoft 磁盘写入程序"就能得到原始的游戏声音了。至于为什么要关闭那些?呵呵,咱能不能不讨论这个?因为这个自己试了就知道了。接下来的转成MP3什么的,已经没有什么难题了啦。这种其实就是最完美的"山寨OST"的制作手法了。至于如果还有人拿着游戏机接着声卡录音的,这种过时的手法已经不值得说啦,除非他用光纤和千元级工作室级声卡来录才差不多。因为这里毕竟还有一个"音质"的问题嘛。

而对于正版的OST等CD光盘的质量当然不用说了。作为收藏来说,当然是自己购买原版CD了,退而求其次也是无损格式。但是,对于没有官方OST的,似乎也只能退而求其次——找"山寨OST"?不过,现在的"山寨OST"也已经是逐渐有了市场。大多数都可以从网上下载得到,不过BT方式的居多。但是,对于山寨OST的音质、曲名的标记等方面做得如何,那只能看制作者而定啦。
2

路过

雷人
14

握手

鸡蛋

鲜花

发表评论 评论 (12 个评论)

回复 阿电 2009-10-20 16:46
正树真水
回复 誾闇 2009-10-20 17:04
这属于教育贴...满好,满好
回复 加油ai加油 2009-10-20 19:10
回复 sephrothtj 2009-10-20 23:02
树妖比较专业。。。记得当时FF8的四CD我也买了,记得国内还是长春哪个出的。。。
回复 LordDinosaur 2009-10-21 00:05
寫的好詳細,不過太長了~
回复 MICROSTAR 2009-10-21 06:21
回复 0dragon 2009-10-21 09:47
我支持正版
回复 LordDinosaur 2009-10-22 00:30
MICROSTAR:
水神
回复 MICROSTAR 2009-10-22 07:40
回复 莫问....不答 2009-10-23 12:25
masaki是正樹??
回复 天龍 2009-12-23 15:36
回复 aq1 2010-8-8 08:32

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

小黑屋|手机版|Archiver|琵琶行论坛 ( 赣ICP备12000882号 )

GMT+8, 2024-4-20 09:54 , Processed in 0.025574 second(s), 6 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部