gpt4 book ai didi

c# - 使用NAudio混合两个音频文件

转载 作者:行者123 更新时间:2023-12-03 00:26:49 24 4
gpt4 key购买 nike

我需要在一个音频文件上发出噪音。我有第一个音频(数据)和第二个音频(噪声)。如何在第一个音频上放置噪声以使其循环播放。或者,如果第一个音频比音频噪声短,那么结果就是第一个音频的持续时间。

我举了一个他们的教程的例子。但是,只有一个文件覆盖另一个文件。没有循环和长度优化的可能性

using(var reader1 = new AudioFileReader("file1.wav"))
using(var reader2 = new AudioFileReader("file2.wav"))
{
var mixer = new MixingSampleProvider(new[] { reader1, reader2 });
WaveFileWriter.CreateWaveFile16("mixed.wav", mixer);
}

最佳答案

您可以使用一种类似于I describe here的循环技术来循环较短的文件(然后需要在其后加上ToSampleProvider)。
然后,在Take上使用MixingSampleProvider扩展方法,以确保您只读取较长文件的持续时间,因此不会创建无限大的WAV文件。

关于c# - 使用NAudio混合两个音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57789551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com