wpf 音频波形图_C# NAudio录音和播放音频文件及实时绘制音频波形图(从音频流数据获取,而非设备获取)...

本文介绍了使用NAudio库在C#中进行录音、播放和实时绘制音频波形图的方法。通过WaveIn类进行录音,AudioFileReader类读取音频文件,WaveOut类实现播放,DataAvailable事件用于获取录音数据并更新波形图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下午写了一篇关于NAudio的录音、播放和波形图的博客,不太满意,感觉写的太乱,又总结了下

NAudio是个相对成熟、开源的C#音频开发工具,它包含录音、播放录音、格式转换、混音调整等功能。本次介绍主要功能有音频、录音文件播放、实时音频流波形图显示等。具体如下:

1. 录音

NAudio录音主要使用WaveIn和WaveFileWriter两个类

1.1   WaveIn

WaveIn的功能是对录音的音频参数进行设置以及对数据的采集,参数如通道数、采样率、平均数据传输速率(WaveFormat)、数据回调事件、录音停止回调函数等参数

其中,DataAvailable为数据回调参数,是在录音时实时将录音数据传递出来,有需要使用录音数据的可以订阅该事件进行接收业务和相关处理。

1.2   WaveFileWriter

该类是创建相对应格式的音频文件,并提供想对应的写入数据方法、保存方法等,具体如下:

public classWaveFileWriter : Stream

{publicWaveFileWriter(Stream outStream, WaveFormat format);public WaveFileWriter(stringfilename, WaveFormat format);~WaveFileWriter();public override long Position { get; set; }public override bool CanWrite { get; }public override bool CanRead { get; }public WaveFormat WaveFormat { get; }public TimeSpan TotalTime { get; }public override long Length

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值