2014-01-02 3 views
2

Я очень новичок в звуковом анализе, на самом деле делая это в первый раз, все, что мне нужно сделать, - это проанализировать mp3-файл или любой другой формат и определить, как меняется высота тона. просто я хочу обрезать аудиофайл, где встречаются высокие ноты.Анализ звукового тона

sound wave

Я попытался NAudio и несколько статей, но не помогло, так что если кто-то ведет меня в правильном направлении для некоторого урока и что API для использования.

ответ

4
  1. Первое, что вы должны знать - how the pitch is related to waveform.
  2. Примечание: простой одноканальный сигнал представлен простым массивом byte. Он состоит из RIFF header с некоторыми необходимыми параметрами и самой волновой последовательностью. Более сложные формы сигналов (многоканальные, высокие битовые скорости) представлены каким-то другим способом (int вместо byte массив, помехи и т. Д.).
  3. SO: Чтобы управлять звуковым шагом, вам нужно узнать, как формируется волна (, шаг 2) и написать (или Google) определенный алгоритм, который будет работать с шагом сигнала таким образом, как указано в шаге .

Если вы очень новичок в создании аудиопрограмм, есть большой учебник начинающих: generating constant waveforms with C#.

+2

Конечно, глядя на него. но, похоже, очень теоретически я искал учебник по началу перехода. спасибо, хотя –

+0

@ user2987214 Добавил некоторую информацию, чтобы ответить, проверьте ее –

3

Вы можете использовать FFT, чтобы получить спектр записи. Проверяя спектр на определенные частоты, вы можете решить, какие части аудио содержат высокие тона.

Немного теории:

Некоторые ресурсы:

0

Попытка C# связывание с Aubio

aubio это инструмент, предназначенный для извлечения аннотаций из звуковых сигналов. Его функции включают сегментирование звукового файла перед каждым из его атак, определение высоты тона, прослушивание ритма и создание миди-потоков из живого звука.

http://aubio.org/

Смежные вопросы