У меня проблема с генератором волн. Я пытаюсь создать файл .wav со звуком заданной частоты. Код, который я использую:
$freqOfTone = 21000;
$sampleRate = 44100;
$samplesCount = 80000;
$amplitude = 0.25 * 32768;
$w = 2 * pi() * $freqOfTone / $sampleRate;
for ($n = 0; $n < $samplesCount; $n++)
{
$data->samples[1][] = 32768 + (int)($amplitude * sin($n * $w));
}
К сожалению, выходная волна неправильная, я получаю несколько частот вместо одной: http://i49.tinypic.com/ab1nx0.png
Это должно выглядеть так: http://i50.tinypic.com/33zbslk.png
Где я что-то не так делаю? :(
samplesCount
не кратен периоду волны - попробуйте отрегулировать этот параметр. - person moonwave99   schedule 06.10.201280k
в качестве значения - я просто объяснял, как управление окнами влияет на спектр; не то чтобы я утверждаю, что это ответ на проблему, просто попытался дать подсказку в качестве комментария;) - person moonwave99   schedule 06.10.2012