D delphifaq Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-10 #1 卡拉ok时,可能会根据演唱者不同的需求进行音乐音调的改变,例如升调降调,如何实现?
Y yysun Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-10 #2 原理是 播放速度快,音调升高,播放速度慢,音调降低。 大概播放速度可以在解码器上控制。
小 小菜 Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-11 #4 to yysun: 不对吧,那样音调高了,可音乐也快了 应该是直接把整个频率移高,也就是把原有的频率乘上一个倍数。
小 小菜 Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-11 #6 呵呵,对不起罗,原理上是这样,具体的实现我没弄过,可能帮不上你。 还有你的问题本身也不够清楚,比如说你的要控制的是哪种播放设备,声源是什么。。。 从道理上说这应该不是很难,建议你把具体情况说清楚,会有人能帮你的。
呵呵,对不起罗,原理上是这样,具体的实现我没弄过,可能帮不上你。 还有你的问题本身也不够清楚,比如说你的要控制的是哪种播放设备,声源是什么。。。 从道理上说这应该不是很难,建议你把具体情况说清楚,会有人能帮你的。
H houling Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-17 #7 用MEDIAPLAYER无法实现啊,MCI 命令虽然升降调的功能。。但直接用就是不起作用。。 如果是对功放机进行控制,就可以用MCI实现升降调的功能
A asheng Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-18 #8 如果用midi的话比较容易不说了。 如果用wave文件。 1)改变时间。比如5秒的一个声音你用10秒放出来,音调会降低一个八度。也就是再取样。 计算方法为插值。缺点:声音的时间改变。 2)频率域计算。变换到频率域,根据不同的音调的频率平移相应频率,然后反变换即可。 缺点:计算量大。
如果用midi的话比较容易不说了。 如果用wave文件。 1)改变时间。比如5秒的一个声音你用10秒放出来,音调会降低一个八度。也就是再取样。 计算方法为插值。缺点:声音的时间改变。 2)频率域计算。变换到频率域,根据不同的音调的频率平移相应频率,然后反变换即可。 缺点:计算量大。
D delphipig Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-10 #13 [red]天啦,这个问题已经折磨我好多天了:([/red][]