Отобразите аудио форму сигнала с помощью C#

Я уже искал в Stackoverflow и Google, но не нашел то, что я ищу.
До сих пор я получил аудио необработанные данные (Файл WAV), и я хочу визуализировать его.

        private void Form1_Load(object sender, EventArgs e)
    {
        FileStream fs = new FileStream("D:\\tada.wav", FileMode.Open);
        BinaryReader reader = new BinaryReader(fs);
        char[] data = new char[4];
        long fsize;
        long wfxSize;
        long dataSize;
        WaveFormatEx wfx;

        //RIFF
        reader.Read(data, 0, 4);

        fsize = reader.ReadInt32();

        //WAVE
        reader.Read(data, 0, 4);

        //FMT
        reader.Read(data, 0, 4);
        wfxSize = reader.ReadInt32();

        byte[] wfxBuffer = new byte[wfxSize];
        reader.Read(wfxBuffer, 0, (int)wfxSize);
        wfx = new WaveFormatEx(wfxBuffer);

        //DATA
        reader.Read(data, 0, 4);
        dataSize = reader.ReadInt32();
        byte[] dataBuff = new byte[dataSize];
        reader.Read(dataBuff, 0, (int)dataSize);
        reader.Close();

        //Visualize the data...
    }

Я знаю, что должен преобразовать необработанные данные в образцы и затем проверить на пик для каждого образца и провести линии, но я действительно не знаю, как сделать это (за исключением рисунка).

6
задан Adir 6 August 2010 в 16:43
поделиться

1 ответ

Визуализируйте данные .. . Вау! Вам следует ознакомиться со спецификацией WAV файла здесь и , возможно, здесь , а затем еще раз подумать, действительно ли вы хотите решить эту проблему. (Вторая ссылка на самом деле представляет собой лучший, более понятный обзор. Взгляните на раздел данных, чтобы узнать, хотите ли вы с этим работать.)

Не поймите меня неправильно. Может быть, это именно то, чем вы хотите заниматься, и это может быть весело. Вы должны просто знать, во что ввязываетесь!

Кроме того, вот компонент Code Project , который вы можете сразу использовать или посмотреть в поисках идей.

7
ответ дан 8 December 2019 в 12:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: