gpt4 book ai didi

c# waveform - 如何显示麦克风数据

转载 作者:太空宇宙 更新时间:2023-11-03 15:33:20 25 4
gpt4 key购买 nike

我正在尝试显示一个波形(我用麦克风录制了自己的声音)。

将数据保存在一个字节数组中。

此外,我的采样率为 44100,样本大小为 16bit

我的数组只包含正值,但在某些示例中我看到这些值介于 -1.0 到 1.0 之间。这是为什么?此外,如果我的样本大小是 16 位并且我使用的是字节数组 - 我需要进行转换。 这是我到目前为止尝试做的:

    double[] x = new double[Arc.Buffer.Count / 2];
byte[] y = new byte[2];

for (i = 0; i < Arc.Buffer.Count; i++)
{
Array.Copy(Arc.Buffer.ToArray(), 2*i, y, 0, 2);
x[i] = (double)((y[1] << 8) | (y[0] & 0x00FF));
}

但在这段代码之后,我的 x 数组包含巨大的值(而不是 -1.0 到 1.0)。

我是这个主题的新手,我将不胜感激任何帮助! (:

最佳答案

假设这是 PCM 数据,则有许多可能的 WAV/RIFF 格式。如果您的样本大小是 16 位,则您读取的值将带符号,介于 -32,768 和 32,767 之间。

快速搜索“wav riff 格式”出现了 a resource关于解析数字音频数据。

关于c# waveform - 如何显示麦克风数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32910358/

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