这里会显示出您选择的修订版和当前版本之间的差别。
information:tutorial:vocaltune02 [2011/12/20 15:24] mi 创建 |
information:tutorial:vocaltune02 [2011/12/20 16:04] (当前版本) mi |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ==== VocalTune软件介绍兼教程 ==== | + | <WRAP round info 50%> |
+ | **作者与出处**\\ | ||
+ | **作者:cmx**\\ | ||
+ | [[http://bbs.ivocaloid.com/thread-52200-1-4.html]]</WRAP> | ||
+ | ====== VocalTune软件介绍兼教程 ====== | ||
- | 介绍 | + | ===== 介绍 ===== |
行 8: | 行 12: | ||
- | 使用VOCALOID的时候,单纯地填写音符可以让 | + | 使用VOCALOID的时候,单纯地填写音符可以让 米库或者其他的 VOCALOID唱出声来,但是声音并不自然。这是因为,人唱歌的时候,声音有很多的细节表现。比如,从一个词唱到另外一个词的时候,并不是从这个音高直接跳到另外一个音高,而是中间有一个过渡过程,而这个过程有时候会比较复杂。VOCALOID只提供了最基本的音高过渡。类似这样的,VOCALOID默认情况下输出的歌声表现力有限。 |
- | 米库或者其他的 | + | |
- | VOCALOID唱出声来,但是声音并不自然。这是因为,人唱歌的时候,声音有很多的细节表现。比如,从一个词唱到另外一个词的时候,并不是从这个音高直接跳到另外一个音高,而是中间有一个过渡过程,而这个过程有时候会比较复杂。VOCALOID只提供了最基本的音高过渡。类似这样的,VOCALOID默认情况下输出的歌声表现力有限。 | + | |
行 21: | 行 23: | ||
VocalTune的原理很简单。读取一个真人演唱(要清唱)的音频文件,分析它的音高和音量变化。然后读取VOCALOID输出的歌声,分析这歌声的音高与音量变化。最后,将两组分析出来的数据进行对比,得到VOCALOID里面的PIT与DYN参数。所以,确切的说,VocalTune的作用不是使VOCALOID的歌声变得自然,而是使VOCALOID的歌声趋近于用于参照用的真人清唱的歌声。 | VocalTune的原理很简单。读取一个真人演唱(要清唱)的音频文件,分析它的音高和音量变化。然后读取VOCALOID输出的歌声,分析这歌声的音高与音量变化。最后,将两组分析出来的数据进行对比,得到VOCALOID里面的PIT与DYN参数。所以,确切的说,VocalTune的作用不是使VOCALOID的歌声变得自然,而是使VOCALOID的歌声趋近于用于参照用的真人清唱的歌声。 | ||
+ | ===== 下载 ===== | ||
+ | [[http://bbs.ivocaloid.com/thread-52186-1-4.html]] | ||
- | 教程 | + | ===== 教程 ===== |
首先需要说明一下MIDI时间的概念。 | 首先需要说明一下MIDI时间的概念。 | ||
- | VOCALOID实际上应该算是一个音序器吧。如果你用电脑做过音乐,可能会明白这个。总之,VOCALOID和MIDI关系 | + | VOCALOID实际上应该算是一个音序器吧。如果你用电脑做过音乐,可能会明白这个。总之,VOCALOID和MIDI关系 慎密。在 VOCALOID的存储文件中,音符的位置啊什么的都是用"MIDI时间"来表示的。VOCALOID中将一个四分音符等分为480份,每一分的长度就是一个单位的MIDI时间。为什么要引入MIDI时间这个概念呢?因为作曲的时候,有时候节拍(Tempo或BPM)会改变,这样一来,在一首歌的不同段,相同的拍子 数经过的实际时间是不同的。这时候如果用实际时间 (比如1.0s啊0.05s)来计时就不方便了。你可以想象,你说“这个C5的音是在5.6s的地方”,而可能在3.0s处的Tempo改变了,这样计算一个音的位置在哪里就会很麻烦。所以才使用“MIDI时间” 来作为时间标志,因为 MIDI时间和节奏没有直接关系,是绝对的时间。 |
- | 慎密。在 | + | |
- | VOCALOID的存储文件中,音符的位置啊什么的都是用"MIDI时间"来表示的。VOCALOID中将一个四分音符等分为480份,每一分的长度就是一个单位的MIDI时间。为什么要引入MIDI时间这个概念呢?因为作曲的时候,有时候节拍(Tempo或BPM)会改变,这样一来,在一首歌的不同段,相同的拍子 | + | |
- | 数经过的实际时间是不同的。这时候如果用实际时间 | + | |
- | (比如1.0s啊0.05s)来计时就不方便了。你可以想象,你说“这个C5的音是在5.6s的地方”,而可能在3.0s处的Tempo改变了,这样计算一个音的位置在哪里就会很麻烦。所以才使用“MIDI时间” | + | |
- | 来作为时间标志,因为 | + | |
- | MIDI时间和节奏没有直接关系,是绝对的时间。 | + | |
- | 打开VOCALOID Editor,你会发现默认情况下左边会有四个小节是深色的(-3、-2、-1、0小节),你不能在上面放置音符。因为默认是4/4拍,所以一个小节有4个四分音符。上面提到了一个四分音符长度为480个单位的MIDI时间,所以这段深色区域的长度为4%%*%%4%%*%%480=7680个单位的MIDI时间。也就是说,如果你放置一个音符在第一小节,那么这个音符开始时候的MIDI时间就是7680。VOCALOID存储时间参数的时候,是把这几个深色小节也考虑在内的。 | + | 打开VOCALOID Editor,你会发现默认情况下左边会有四个小节是深色的(-3、-2、-1、0小节),你不能在上面放置音符。因为默认是4/4拍,所以一个小节有4个四分音符。上面提到了一个四分音符长度为480个单位的MIDI时间,所以这段深色区域的长度为4<nowiki>*</nowiki>4<nowiki>*</nowiki>480=7680个单位的MIDI时间。也就是说,如果你放置一个音符在第一小节,那么这个音符开始时候的MIDI时间就是7680。VOCALOID存储时间参数的时候,是把这几个深色小节也考虑在内的。 |
行 43: | 行 40: | ||
- | 打开VOCALOID Editor...原来怎么填音符怎么填歌词的就怎么填,还可以先小小调教一下,比如调一调DYN和PIT以外的参数。还有很重要一点,你需要精确地设定Tempo,推荐使用MixMeister BPM Analyzer。调教好以后保存并合成输出,得一个wav文件。注意你是输出的哪一段,这一段开始的MIDI时间是多少。 | + | 打开VOCALOID Editor…原来怎么填音符怎么填歌词的就怎么填,还可以先小小调教一下,比如调一调DYN和PIT以外的参数。还有很重要一点,你需要精确地设定Tempo,推荐使用MixMeister BPM Analyzer。调教好以后保存并合成输出,得一个wav文件。注意你是输出的哪一段,这一段开始的MIDI时间是多少。 |
- | 因为VocalTune的作用是使VOCALOID输出的声音逼近原声,所以说这个“原声”是必不可少的。所以第一步是找来清唱的原声。如果是原创曲...自己唱吧 | + | 因为VocalTune的作用是使VOCALOID输出的声音逼近原声,所以说这个“原声”是必不可少的。所以第一步是找来清唱的原声。如果是原创曲…自己唱吧 囧。另外,你是想让初音翻唱的话,如果你手上有带伴奏的 无损 音频,倒是有个方法可以得到原声。打开Cool Edit或者任何一个你顺手的音频编辑软件,把原唱和伴奏都放到音轨上,完全对齐。最好是做到每个采样点都对齐…。然后将伴奏的音频Invert一下,也就是把波形上下颠倒。最后混合音轨,这样的效果就相当于用原唱“减去”了伴奏,剩下的就是清唱了。如果你用的是MP3而不是无损音频,通常来说这个方法就不会奏效了,因为MP3是有损压缩…另外,即使是无损音频也不见得会奏效..||||| |
- | 囧。另外,你是想让初音翻唱的话,如果你手上有带伴奏的 | + | |
- | 无损 音频,倒是有个方法可以得到原声。打开Cool Edit或者任何一个你顺手的音频编辑软件,把原唱和伴奏都放到音轨上,完全对齐。最好是做到每个采样点都对齐...。然后将伴奏的音频Invert一下,也就是把波形上下颠倒。最后混合音轨,这样的效果就相当于用原唱“减去”了伴奏,剩下的就是清唱了。如果你用的是MP3而不是无损音频,通常来说这个方法就不会奏效了,因为MP3是有损压缩...另外,即使是无损音频也不见得会奏效..||||| | + | |
总之得到了人声的清唱。载入刚才VOCALOID输出的wav文件,以VOCALOID输出地wav文件为准,将人声清唱与VOCALOID输出的wav对齐,使得第一个音的位置基本相同。删减或者增加空白来,使音频开始到第一个音的距离相同。 | 总之得到了人声的清唱。载入刚才VOCALOID输出的wav文件,以VOCALOID输出地wav文件为准,将人声清唱与VOCALOID输出的wav对齐,使得第一个音的位置基本相同。删减或者增加空白来,使音频开始到第一个音的距离相同。 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q2.jpg?nolink&356x448}} | ||
不齐 | 不齐 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q4.jpg?nolink&182x336}} | ||
大概对齐一下 | 大概对齐一下 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q6.jpg?nolink&554x282}} | ||
放大继续观察,对齐 | 放大继续观察,对齐 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q8.jpg?nolink&553x272}} | ||
这样就差不多了 | 这样就差不多了 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q10.jpg?nolink&553x552}} | ||
行 73: | 行 83: | ||
修改的是人声清唱的wav。 | 修改的是人声清唱的wav。 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q12.jpg?nolink&437x527}} | ||
行 84: | 行 97: | ||
- | ; VSQ一节中的参数都是全局的 | + | ---- |
+ | |||
+ | <file> | ||
+ | ; VSQ一节中的参数都是全局的 | ||
[VSQ] | [VSQ] | ||
- | + | ; Input指定输入的VSQ文件 | |
- | ; Input指定输入的VSQ文件 | + | |
Input=input.vsq | Input=input.vsq | ||
- | + | ; Ouput指定输出的VSQ文件 | |
- | ; Ouput指定输出的VSQ文件 | + | |
Output=output.vsq | Output=output.vsq | ||
- | + | ; 音量差调节比例 | |
- | ; 音量差调节比例 | + | |
DynamicsScale=20 | DynamicsScale=20 | ||
- | + | ; 开始调节的MIDI时间,7680默认情况下是4个小节 | |
- | ; 开始调节的MIDI时间,7680默认情况下是4个小节 | + | |
Start=7680 | Start=7680 | ||
- | + | ; 结束调节的MIDI时间 | |
- | ; 结束调节的MIDI时间 | + | |
End=56000 | End=56000 | ||
+ | ; 注:MIDI时间——即MIDI里面计时的单位,不受Tempo影响。 | ||
- | ; 注:MIDI时间——即MIDI里面计时的单位,不受Tempo影响。 | + | ; 嘛,搞过MIDI的人恐怕比我这个半路出家的家伙更熟悉 |
+ | ; 默认情况下VOCALOID中的一个四分音符被分成480份,每份长为1单位的MIDI时间 | ||
- | ; 嘛,搞过MIDI的人恐怕比我这个半路出家的家伙更熟悉 | + | ; 调节人声相关参数 |
- | + | ||
- | + | ||
- | ; 默认情况下VOCALOID中的一个四分音符被分成480份,每份长为1单位的MIDI时间 | + | |
- | + | ||
- | + | ||
- | ; 调节人声相关参数 | + | |
[Human] | [Human] | ||
- | + | ; 输入的波形文件 | |
- | ; 输入的波形文件 | + | |
File=orig.wav | File=orig.wav | ||
+ | ; 用于频率检测用的参数——最大频率和最小频率,这个区间至少要能包含你的歌中的所有音符的频率 | ||
- | ; 用于频率检测用的参数——最大频率和最小频率,这个区间至少要能包含你的歌中的所有音符的频率 | + | ; 具体音阶与频率的对应关系可以google之 |
- | + | ||
- | + | ||
- | ; 具体音阶与频率的对应关系可以google之 | + | |
Min_Freq=120 | Min_Freq=120 | ||
- | |||
Max_Freq=700 | Max_Freq=700 | ||
+ | ; Offset确定一个偏移MIDI时间。 | ||
- | ; Offset确定一个偏移MIDI时间。 | + | ; VOCALOID默认留了4个小节的 不可操作部分 (VOCALOID编辑器里面黑色的那些小节) |
+ | ; 音符的位置或者参数的位置是把这4个小节也算进去的,也就是说 | ||
- | ; VOCALOID默认留了4个小节的 | + | ; 即使你的第一个音符紧接着黑色小节后放置,那么它的MIDI时间仍不会是0,而是7680 |
- | 不可操作部分 | + | |
- | (VOCALOID编辑器里面黑色的那些小节) | + | |
+ | ; 通常人声或者VOCALOID输出的波形文件,不会专门留出这么长的空白时间 | ||
- | ; 音符的位置或者参数的位置是把这4个小节也算进去的,也就是说 | + | ; 所以加入这个参数来说明这个音频文件的开始处对应于VSQ中的哪个时间点 |
- | + | ||
- | + | ||
- | ; 即使你的第一个音符紧接着黑色小节后放置,那么它的MIDI时间仍不会是0,而是7680 | + | |
- | + | ||
- | + | ||
- | ; 通常人声或者VOCALOID输出的波形文件,不会专门留出这么长的空白时间 | + | |
- | + | ||
- | + | ||
- | ; 所以加入这个参数来说明这个音频文件的开始处对应于VSQ中的哪个时间点 | + | |
Offset=7680 | Offset=7680 | ||
- | |||
[Vocaloid] | [Vocaloid] | ||
- | |||
File=miku.wav | File=miku.wav | ||
- | |||
Min_Freq=120 | Min_Freq=120 | ||
- | |||
Max_Freq=800 | Max_Freq=800 | ||
+ | Offset=7680 | ||
+ | </file> | ||
- | Offset=7680 | + | |
+ | ---- | ||
行 224: | 行 209: | ||
- | [Human]/[Vocaloid]中的Offset参数。这个之前VOCALOID输出歌声的时候,有说过,记下你输出的是哪一段,这一段的开始的MIDI时间是多少。比如你之前用 设置了从第2小节到末尾(4/4拍),那么这个Offset就应该设置为9600,第二个小节之前有一个白色的小节,和四个系统保留的暗色小节,总共5小节%%*%%每小节4个四分音符%%*%%每个四分音符占480MIDI时间=9600MIDI时间。 | + | [Human]/[Vocaloid]中的Offset参数。这个之前VOCALOID输出歌声的时候,有说过,记下你输出的是哪一段,这一段的开始的MIDI时间是多少。 |
+ | |||
+ | |||
+ | 比如你之前用 {{:information:tutorial:52200q14.jpg?nolink&88x45}}设置了从第2小节到末尾(4/4拍),那么这个Offset就应该设置为9600,第二个小节之前有一个白色的小节,和四个系统保留的暗色小节,总共5小节<nowiki>*</nowiki>每小节4个四分音符<nowiki>*</nowiki>每个四分音符占480MIDI时间=9600MIDI时间。 | ||
参数填完以后,存成后缀名为ini的文件(其实后缀名无所谓),然后拖到VocalTune_CUI.exe上。或者在命令行下输入“VocalTune_CUI option.ini”,其中“option.ini”就是你刚才存的ini文件。然后程序开始执行。 | 参数填完以后,存成后缀名为ini的文件(其实后缀名无所谓),然后拖到VocalTune_CUI.exe上。或者在命令行下输入“VocalTune_CUI option.ini”,其中“option.ini”就是你刚才存的ini文件。然后程序开始执行。 | ||
+ | |||
+ | |||
+ | {{:information:tutorial:52200q16.jpg?nolink&553x359}} | ||