public void OpenFile(string filename) { if (FAudioFile != null) { FAudioFile.Dispose(); FAudioFile = null; } if (!string.IsNullOrEmpty(filename) && File.Exists(filename)) { FAudioFile = new AudioFileReaderVVVV(filename); SetOutputCount(FAudioFile.WaveFormat.Channels); } else { SetOutputCount(0); } }
void FileName_ValueChanged(string newFilename) { if (FileReader != null) { GranulatorFilePool.RemoveFileReader(FileReader.FileName); } if (File.Exists(newFilename)) { FileReader = GranulatorFilePool.GetOrAddFileReader(newFilename); FileReader.CacheFile = true; FGrain.SampleRate = FileReader.WaveFormat.SampleRate; } }
public void OpenFile(string filename) { if (FAudioFile != null) { FAudioFile.Dispose(); FAudioFile = null; } if (!string.IsNullOrEmpty(filename) && File.Exists(filename)) { FAudioFile = new AudioFileReaderVVVV(filename); SetOutputCount(FAudioFile.WaveFormat.Channels); } else { SetOutputCount(0); } }
public static AudioFileReaderVVVV GetOrAddFileReader(string path) { var file = default(RefCounted <AudioFileReaderVVVV>); if (OpenFiles.ContainsKey(path)) { file = OpenFiles[path]; } else { var reader = new AudioFileReaderVVVV(path); file = new RefCounted <AudioFileReaderVVVV>(reader); } file.Inc(); return(file.Value); }