XNA | C #: запись и изменение голоса - PullRequest
1 голос
/ 05 октября 2011

Моя цель - написать код проекта, который записывает человеческий звук и изменяет его (с эффектами).Например: человек записывает звук через микрофон (говорит некоторое время), а затем программа издает звук, похожий на звук ребенка.

Это должно работать эффективно и быстро (во время записи также должна выполняться операция изменения)

Каков оптимальный способ сделать это?

Спасибо

Ответы [ 2 ]

2 голосов
/ 11 октября 2011

Если вы ищете XNA или DirectX, чтобы сделать это для вас, я почти уверен, что вам не повезет (у меня нет большого опыта работы с DirectSound; возможно, кто-то может исправить меня) , То, что вы хотите сделать, это цифровая обработка сигналов в реальном времени , что означает, что вам нужно будет либо написать свой собственный код для управления необработанным сигналом, либо найти кого-то еще, кто уже написал код для тебя.

Если у вас нет опыта написания подобных вещей, вероятно, лучше использовать чужую библиотеку обработки сигналов, потому что такие вещи могут быстро усложниться. Поскольку вы разрабатываете для ПК, вам повезло; Вы можете использовать любую понравившуюся вам библиотеку, используя P / Invoke. Вы можете попробовать некоторые из предложенных решений здесь и здесь .

0 голосов
/ 11 октября 2011

MSDN содержит некоторую информацию о пространстве имен Audio из XNA и аудиозаписи, представленной в версии 4:

Имейте в виду, что записанные данные возвращаются в формате PCM.

...