我能够在WasapiLoopbackCapture(naudio)的帮助下捕获由扬声器生成的系统音频。但是问题是它捕获了wav文件,并且wav文件的大小很大(几乎10至15 MB / Min)。我必须捕获2-3小时的音频,这太高了。我正在寻找一种将WasapiLoopbackCapture捕获的wav流转换为MP3并将其保存到磁盘的解决方案。我尝试使用LAME.exe或其他解决方案,但未成功。任何有效的代码。
这是我的代码:
private void button1_Click(object sender, EventArgs e){
LoopbackRecorder obj = new LoopbackRecorder();
string a = textBox1.Text;
obj.StartRecording(@"e:\aman.mp3");
}
public class LoopbackRecorder
{
private IWaveIn _waveIn;
private Mp3WaveFormat _mp3format;
private WaveFormat _wavFormat;
private WaveFileWriter _writer;
private bool _isRecording = false;
/// <summary>
/// Constructor
/// </summary>
public LoopbackRecorder()
{
}
/// <summary>
/// Starts the recording.
/// </summary>
/// <param name="fileName"></param>
public void StartRecording(string fileName)
{
// If we are currently record then go ahead and exit …Run Code Online (Sandbox Code Playgroud)