计算 .WAV 文件中的“开始时间”

伪阿卜杜勒

我目前正在编写测距仪程序(想想声纳)。所以我发射一个声音脉冲并测量返回需要多长时间。目前,我只是打开声音文件并手动测量上升时间。为了清楚起见,我链接了一张图片。

波形

我想知道是否有任何 .NET 库可以做这种事情。我已经看过 NAudio 但没有发现任何有用的东西。

看起来我可能必须手动执行此操作,在这种情况下,我如何最好地将 WAV 转换为一系列原始值(例如图像上的每个点)?如果我能做到,我可以编写自己的算法。

TDG

您可以通过将文件读入字节数组,提取有关它的一些信息,然后搜索所需的样本来实现,在您的情况下,我认为这是高于某个阈值的第一个样本。
第一阶段很简单,就像在这个问题中一样
对于第二阶段,您必须对wav文件结构有所了解如此处所示 -它包含有关通道数(在您的情况下看起来您只有一个通道)、采样率每个样本位数的信息wav文件头

知道这些参数后,就可以开始读取音频的数据了——如果每个样本是 8 位,那么每个样本就是一个字节。如果是 16,则必须读取 2 个字节,并计算样本的值,因为它是以小端格式编写的。
当您发现样本编号 X 是您要查找的样本编号时,将该编号除以采样率,您将获得自文件开始以来样本的确切时间。
图像是从这里拍摄的

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WAV文件幅度计算

来自分类Dev

在MATLAB中的WAV文件上计算FFT

来自分类Dev

在计算WAV文件的FFT时遇到的问题

来自分类Dev

计算与源文件相比的wav文件中的噪声量

来自分类Dev

计算批处理文件执行的开始时间和结束时间?

来自分类Dev

在.wav文件的窗口上计算功率谱图

来自分类Dev

如何在 pyaudio 播放 .wav 文件时继续计算

来自分类Dev

angularjs计算开始时间和当前时间之间的时差

来自分类Dev

了解Android RingDroid WAV计算

来自分类Dev

了解Android RingDroid WAV计算

来自分类Dev

从CV中的开始偏移时间播放WAV文件中的声音

来自分类Dev

计算WAV文件和录制的声音的频谱图(针对音量进行标准化)

来自分类Dev

从结束时间和运行时间计算熊猫的开始时间

来自分类Dev

SQL 计算查询开始时间和持续时间以查找结束时间

来自分类Dev

Gsheet 将部分时间添加到开始时间以计算结束时间

来自分类Dev

Rhythmbox 中的 .wav 文件?

来自分类Dev

在 C++ 中使用开始时间和持续时间计算活动任务

来自分类Dev

是否可以计算出卢森堡的“当前半小时”的开始时间?

来自分类Dev

spark如何计算给定窗口间隔下的窗口开始时间?

来自分类Dev

读取.wav文件的标记

来自分类Dev

从WAV文件解码DTMF

来自分类Dev

反转.wav文件

来自分类Dev

生成WAV文件音

来自分类Dev

写入.wav文件

来自分类Dev

.WAV文件上的FFT

来自分类Dev

解码WAV文件头

来自分类Dev

WAV文件的值

来自分类Dev

减少.wav文件大小

来自分类Dev

从数组播放Wav文件