Esempio n. 1
0
        private void SetupOutputStream(int dataFileSize)
        {
            SaveFileDialog dlg = new SaveFileDialog();

            dlg.AddExtension = true;
            dlg.DefaultExt   = ".flac";
            dlg.Filter       = "FLAC files (*.flac)|*.flac";
            dlg.ShowDialog();
            AudioFileOutStream = new FileOutEncodingStream(dlg.FileName);
            PinnedMetaData     = new meta.Prototype[1];
            var fileSizeComment = new meta.VorbisComment();

            fileSizeComment.AppendComment(new meta.VorbisComment.Entry("LEN", "" + dataFileSize));
            PinnedMetaData[0] = fileSizeComment;
            AudioFileOutStream.SetMetadata(PinnedMetaData);
            //AudioFileOutStream.SetCompressionLevel(8);
            AudioFileOutStream.InfoFileWriter = InfoFileWriter;
            AudioFileOutStream.InitializeStream(
                AudioFileInStream.GetChannels(),
                AudioFileInStream.GetBitsPerSample(),
                AudioFileInStream.GetSampleRate(),
                (uint)AudioFileInStream.GetTotalSamples(),
                false
                );
        }
Esempio n. 2
0
 private void CleanupEncoder()
 {
     dataFileStream.Close();
     AudioFileInStream.Close();
     AudioFileOutStream.Close();
     AudioFileInStream  = null;
     AudioFileOutStream = null;
     dataFileStream     = null;
     AudioFileName      = null;
     DataFileName       = null;
     DisplayAudioFileBox.Invoke((Action <object>)(unused => DisplayAudioFileBox.Text = ""), 0);
     DisplayDataFileBox.Invoke((Action <object>)(unused => DisplayDataFileBox.Text   = ""), 0);
     Encoder.Clear();
     Encoder = null;
 }