Использование Vorbis и NAudio для воспроизведения файлов OGG

Я пытаюсь воспроизвести поток файлов OGG с помощью NVorbis и NAudio, как описано в документации. Я безуспешно пытаюсь получить доступ к классу VorbisWaveReader, вот мой код:

using System;
using System.Collections.Generic;
using System.Text;
using NVorbis;
using NAudio;

namespace Paradise
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var vorbis = new NVorbis.NAudioSupport.VorbisWaveReader(@"C:\PATH\TO\OGG\FILE.ogg"))
            using (var waveOut = new NAudio.Wave.WaveOut())
            {
            waveOut.Init(vorbis);
            waveOut.Play();
            }
        }
    }
}

Я получаю следующую ошибку:

type or namespace name 'VorbisWaveReader' does not exist in the namespace 'NVorbis.NAudioSupport'

Это выглядит очень просто и должно работать, я вижу в исходном коде, что VorbisWaveReader присутствует в коде, вы можете помочь мне разобраться с этим?

Спасибо!


person Shai Katz    schedule 08.07.2014    source источник
comment
Вы использовали библиотеки DLL или исходники?   -  person TaW    schedule 08.07.2014
comment
Убедитесь, что в вашем проекте есть ссылки как на NVorbis.dll, так и на NVorbis.NAudioSupport.dll (и, разумеется, на NAudio.dll). Кроме того, waveOut.Play() является асинхронным, поэтому вы ничего не услышите (кроме, может быть, одного или двух хлопков) с этим кодом. Вам придется как-то отложить, прежде чем выйти из предложения использования.   -  person ioctlLR    schedule 08.07.2014


Ответы (1)


NVorbis.NAudioSupport изменить на NAudio.Vorbis

в консоли диспетчера пакетов введите следующее:

Install-Package NAudio.Vorbis

person Hossein Shahabi    schedule 22.10.2016
comment
Привет @Hossein Можно ли вырезать аудиофайл OGG с помощью библиотеки NVorbis до необходимых временных интервалов? - person Yeni Havu; 23.12.2020