Точная фраза предполагает, что вас спрашивают синтезировать, т. Е. Создавать новый сигнал, а не фильтровать или изменять существующий сигнал. Кроме того, он спрашивает об fundamental frequency из 150 Гц (он использует слово шаг, а не частота. Я предполагаю, что основная частота достаточно хороша и/или что они имели в виду :).
Итак, позвольте мне попробовать перефразировать вопрос для вас:
Do the following for each vowel sound (A, E, I, O, U, etc):
Create a 5 second sound with a fundamental frequency of 150 Hz.
Я могу думать о двух способов решения этой проблемы: 1. суммируют некоторые синусоидальные волны (все из которых будет кратен 150 Гц) при разных интенсивностях. Знать об интенсивности - вот трюк. или 2. Начните с импульса 150 Гц и отфильтруйте его. Знание точного фильтра для использования - вот трюк здесь, хотя использование правильного импульса, вероятно, также окажет некоторое влияние. В любом случае, вам не нужен или нужен БПФ на стадии генерации. Если вы не можете или не хотите искать неизвестные выше, вы можете использовать FFT для анализа реального человека, говорящего эти звуки, и использовать результаты анализа, чтобы заполнить пробелы. Это было бы не так уж сложно сделать, но, вероятно, оно было охвачено в передовом учебнике по фонетике и/или акустике.
Если вам нужен более подробный ответ, возможно, вам следует создать новый вопрос и связать его здесь, чтобы помочь ответить на это. Предлагаю следующие теги, если они существуют:
- синтеза речи
- Фильтрация
- аудио
- фонетику
Да, это намного больше смысла - я уверен, что основная частота - это то, что они означают. ОК, я уже записал и сгладил звуковые образцы, которые я произнес, чтобы звуки, поэтому я предполагаю, что работа с ними будет самым простым способом синтеза звуков, которые я ищу. Я разместил новый вопрос по адресу: http://stackoverflow.com/questions/19910606/synthesizing-vowel-from-existing-audio-sample-jin-matlab –