N将音频流放入值[-1,1]中
本文关键字:音频流 | 更新日期: 2023-09-27 18:28:34
嗨,我需要把我的音频流放入[-1,1]的值中。
有人能告诉我一个好方法吗。我正在从流中读取字节数组和浮点数组,但我不知道下一步该怎么办。
这是我的代码:
float[] bytes=new float[stream.Length];
float biggest= 0;
for (int i = 0; i < stream.Length; i++)
{
bytes[i] = (byte)stream.ReadByte();
if (bytes[i] > biggest)
{
biggest=bytes[i];
}
}
我不知道如何把价值观放到流中。因为字节只是正值。我需要从[-1,1]
for (int i = 0; i < bytes.Count(); i++)
{
bytes[i] = (byte)(bytes[i] * (1 / biggest));
}
在您的第二个代码片段中,您正在缩放值,但使用整数。您是否尝试过直接使用浮点值:
for (int i = 0; i < bytes.Length; i++)
{
bytes[i] /= biggest; // scale bytes to 0..1
bytes[i] *= 2; // scale bytes to 0..2
bytes[i]--; // scale bytes to -1..1
}
Btwbytes
对于一个浮点数组来说是一个非常令人困惑的变量名。