Я пытаюсь реализовать простой аудиоплеер, и я начинаю с примера SoundTouchPitchAndTempo (https://github.com/filoe/cscore). При воспроизведении MP3 звук искажается до неузнаваемости. Если я комментирую ссылку SoundTouch из GetCodecфункция (MainWindowViewModel.cs - строка 129), вывод в порядке. Но, конечно, элементы управления высотой и темпом ничего не делают. Так как это образец, скорее всего, он обычно работает, и я упускаю что-то основное.используя предварительно скомпилированный SoundTouch.dll с сайта Олли. Очевидно, я очень новичок в CSCore, и я немного озадачен. Если кто-то может указать мне правильное направление, чтобы начать поиск, я был бы признателен.
Соответствующий код (из примера проекта:
private void OpenHandler()
{
var fileName = OpenFileDialog("MP3 Files|*.mp3");
if(string.IsNullOrEmpty(fileName))
{
return;
}
var waveSource = CodecFactory.Instance.GetCodec(fileName)
//.AppendSource(x => new SoundTouchSource(x), out _soundTouchSource)
.ToSampleSource()
.ToWaveSource();
_soundOut = new WasapiOut();
_soundOut.Initialize(waveSource);
TempoSliderValue = 0;
PitchSliderValue = 0;
}
Если я включу SoundTouch, не комментируя строку .AppendSource, вывод будет очень искажен.