我正在做一个项目,包括使用SoundTouch和C#的声音拉伸。
当停止音乐播放时,我想实现一种伸展算法,比如DJ关闭乙烯基,但乙烯基需要几秒钟才能停止旋转,同时音乐仍在播放,声音延伸到较低的节拍,直到降至零。
我的问题是我不知道该从哪里开始。我想用一些轻松的迭代来减少音乐样本块的速度,但对我来说,这似乎有点复杂,而且我在算法的计算上也有问题。
任何一种建议、出发点、榜样或帮助都是值得赞赏的。
谢谢。
发布于 2015-08-26 15:35:15
记录球员放慢速度的效果不需要时间拉伸,因为你不能独立地改变节奏和球场。你只需要通过重采样音频来减缓播放速度。
在下图中,绿色点表示输入音频样本,网格表示输出样本时钟,橙色点表示输出音频样本。

为了生成输出音频样本,需要在输入样本值之间进行插值。在图中,我使用了线性插值,这是最简单的方法。为了提高音频质量,您可以使用一种数学上更精确的插值方法,比如差分插值(搜索样条绘制技术以获得更多信息),但是对于快速慢速效果的特殊情况,线性插值可能足够好。
https://stackoverflow.com/questions/32216990
复制相似问题