private void Play(MemoryStream buffer) { if (buffer == null) throw new ArgumentNullException("buffer"); using (var storageFolder = IsolatedStorageFile.GetUserStoreForApplication()) { if (!string.IsNullOrEmpty(_fileName) && storageFolder.FileExists(_fileName)) storageFolder.DeleteFile(_fileName); } Dispatcher.BeginInvoke( () => { using (var storageFolder = IsolatedStorageFile.GetUserStoreForApplication()) { _fileIndex++; _fileName = _fileIndex + ".wav"; var bytes = buffer.GetWavAsByteArray(_micRecorder.SampleRate); using (var stream = storageFolder.CreateFile(_fileName)) { stream.Write(bytes, 0, bytes.Length); } if (!storageFolder.FileExists(_fileName)) return; using (var stream = new IsolatedStorageFileStream(_fileName, FileMode.Open, storageFolder)) { playBack.SetSource(stream); playBack.Play(); } } }); }
private void SaveTempAudio(MemoryStream buffer) { // Be defensive... trust one one & nothing! if (buffer == null) { throw new ArgumentNullException("Attempting a save an empty sound buffer."); } //Clean out the AudioPlayer's hold on our audioStream if (_audioStream != null) { AudioPlayer.Stop(); AudioPlayer.Source = null; _audioStream.Dispose(); } var bytes = buffer.GetWavAsByteArray(_recorder.SampleRate); using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication()) { if (isoStore.FileExists(_tempFileName)) { isoStore.DeleteFile(_tempFileName); } _tempFileName = string.Format("{0}.wav", DateTime.Now.ToFileTime()); _audioStream = isoStore.CreateFile(_tempFileName); _audioStream.Write(bytes, 0, bytes.Length); // Play ... SetSource of a MediaElement AudioPlayer.SetSource(_audioStream); } }
private void SaveTempAudio(MemoryStream buffer) { //Be defensive if (buffer == null) throw new ArgumentNullException("Saving an empty buffer."); //Clear AudioPlayer's hold on audioStream if (_audioStream != null) { AudioPlayer.Stop(); AudioPlayer.Source = null; _audioStream.Dispose(); } var bytes = buffer.GetWavAsByteArray(_recorder.SampleRate); using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForApplication()) { if (isoStore.FileExists(_tempFileName)) isoStore.DeleteFile(_tempFileName); _tempFileName = string.Format("{0}.wav", DateTime.Now.ToFileTime()); _audioStream = isoStore.CreateFile(_tempFileName); _audioStream.Write(bytes, 0, bytes.Length); // Play AudioPlayer.SetSource(_audioStream); } }
private void SaveTempAudio(MemoryStream buffer) { if (_audioStream != null) { AudioPlayer.Stop(); AudioPlayer.Source = null; _audioStream.Dispose(); } if (buffer == null) throw new ArgumentNullException("Attempting to save an empty sound buffer...!!!!"); var bytes = buffer.GetWavAsByteArray(_recorder.SampleRate); using (IsolatedStorageFile isostore = IsolatedStorageFile.GetUserStoreForApplication()) { if (isostore.FileExists(tempfilename)) isostore.DeleteFile(tempfilename); tempfilename = string.Format("{0}.wav", DateTime.Now.ToFileTime()); _audioStream = isostore.CreateFile(tempfilename); _audioStream.Write(bytes, 0, bytes.Length); AudioPlayer.SetSource(_audioStream); } }