NAudio Как с помощью этой библиотеки работать c mp3 файлами? - C#

Узнай цену своей работы

Формулировка задачи:

Как с помощью этой библиотеки работать c mp3 файлами? получаю фреймы с данными RawData, так
Mp3FileReader reader = new Mp3FileReader("G:\\1.mp3");                
Mp3Frame frame;
while ((frame = reader.ReadNextFrame()) != null)
{}
Каждый фрейм хранит массив байт RawData, как из этих фреймов с массивами байт получить массив частот(или отсчетов)(с плавающей точкой или комплексных чисел - ведь в naudio есть классы для комплексных чисел, ноя не где не нашол как перегнать ацдио файл в массив этих чисел) всего mp3? Может ли ктонибудь поделиться ссылкой - как использовать методы FFT библиотеки NAudio?
А чтобы например сравнить звук с микрофона с темже mp3, какими форматом должен обладать файл? Тоесть какова должна быть его частота, биты, каналов? И нужно ли проводить какую нибудь нормализацию исходных данных и микрофонных? Собираюсь использовать следующюю схему сравнения: 1) для исходника - Массив отсчетов->БПФ->MFCC 2)для микрофонных данных - Массив отсчетов->БПФ->И также MFCC Потом через TDW их стравнить. Правильно ли я понял алгоритм?

Решение задачи: «NAudio Как с помощью этой библиотеки работать c mp3 файлами?»

textual
Листинг программы
byte[] buffer = e.Buffer;           
 
            // now report each sample if necessary
            for (int index = 0; index < e.BytesRecorded; index += 2)
            {
                short sample = (short)((buffer[index + 1] << 8) | buffer[index + 0]);
                /* short sample2 = BitConverter.ToInt16(buffer, index);
                Debug.Assert(sample == sample2, "Oops"); */
                float sample32 = sample / 32768f;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы