예제 #1
0
        public void LoadMidi(string fileName)
        {
            midiFileName = fileName;

            MainForm pform = (MainForm)this.MdiParent;

            st = pform.sthread;
            AudioSynthesis.Sequencer.MidiFileSequencer mseq = st.mseq;
            mseq.UnMuteAllChannels();
            MidiMessage[] mdata = mseq.mdata;

            nudOffset.Value = 0;
            noteViewer1.Reset();
            noteViewer1.mseq = mseq;
            noteViewer1.Invalidate();

            //double time = 0;

            //if (mdata != null)
            //{
            //    foreach (MidiMessage mm in mdata)
            //    {
            //        time += (double)mm.delta;
            //        //The current event starts at mm.delta microseconds after the previous event.
            //        //textBox1.AppendText(mm.ToString() + " " + mm.AbsTime_ms + "usec\r\n");
            //    }

            //}
        }
예제 #2
0
 private void MainForm_Load(object sender, EventArgs e)
 {
     Synthesizer.InterpolationMode = (InterpolationEnum)Properties.Settings.Default.Interp;
     sthread = new SynthThread();
     sthread.Provider.TimeUpdate += new SynthWaveProvider.UpdateTime(pctrl.updateTime);
     if (File.Exists(Properties.Settings.Default.BankFile))
     {
         sthread.LoadBank(Properties.Settings.Default.BankFile);
         kctrl.updateBankList(sthread.getProgramNames(kctrl.GetBank()));
     }
     playListToolStripMenuItem.Checked     = Properties.Settings.Default.show_plist;
     midiControlsToolStripMenuItem.Checked = Properties.Settings.Default.show_mctrl;
     logToolStripMenuItem.Checked          = Properties.Settings.Default.show_log;
     keyBoardToolStripMenuItem.Checked     = Properties.Settings.Default.show_keyboard;
     updatetoolstripdisplay();
 }
예제 #3
0
        private void optionsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OptionsForm ops = new OptionsForm();

            if (ops.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                plist.clearImages();
                pctrl.updateButtons(SynthWaveProvider.PlayerState.Stopped);
                if (sthread != null)
                {
                    sthread.Close();
                    sthread.Provider.TimeUpdate -= new SynthWaveProvider.UpdateTime(pctrl.updateTime);
                }
                Properties.Settings.Default.Latency     = ops.latency;
                Properties.Settings.Default.SampleRate  = ops.sampleRate;
                Properties.Settings.Default.BufferSize  = ops.bufferSize;
                Properties.Settings.Default.BufferCount = ops.bufferCount;
                Properties.Settings.Default.Interp      = ops.interpolation;
                Properties.Settings.Default.poly        = ops.polyphony;
                Properties.Settings.Default.Save();
                Synthesizer.InterpolationMode = (InterpolationEnum)Properties.Settings.Default.Interp;
                //dispose of event handlers
                sthread.Provider.TimeUpdate -= new SynthWaveProvider.UpdateTime(pctrl.updateTime);
                if (mctrol.Visible == true)
                {
                    sthread.Provider.UpdateMidiControllers -= new SynthWaveProvider.UpdateTrackBars(mctrol.updateMidiControls);
                }
                //create new object with new event handlers
                sthread = new SynthThread();
                sthread.Provider.TimeUpdate += new SynthWaveProvider.UpdateTime(pctrl.updateTime);
                if (mctrol.Visible == true)
                {
                    sthread.Provider.UpdateMidiControllers += new SynthWaveProvider.UpdateTrackBars(mctrol.updateMidiControls);
                }
                if (File.Exists(Properties.Settings.Default.BankFile))
                {
                    sthread.LoadBank(Properties.Settings.Default.BankFile);
                    kctrl.updateBankList(sthread.getProgramNames(kctrl.GetBank()));
                }
            }
        }
 private void optionsToolStripMenuItem_Click(object sender, EventArgs e)
 {
     OptionsForm ops = new OptionsForm();
     if (ops.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
         plist.clearImages();
         pctrl.updateButtons(SynthWaveProvider.PlayerState.Stopped);
         if (sthread != null)
         {
             sthread.Close();
             sthread.Provider.TimeUpdate -= new SynthWaveProvider.UpdateTime(pctrl.updateTime);
         }
         Properties.Settings.Default.Latency = ops.latency;
         Properties.Settings.Default.SampleRate = ops.sampleRate;
         Properties.Settings.Default.BufferSize = ops.bufferSize;
         Properties.Settings.Default.BufferCount = ops.bufferCount;
         Properties.Settings.Default.Interp = ops.interpolation;
         Properties.Settings.Default.poly = ops.polyphony;
         Properties.Settings.Default.Save();
         Synthesizer.InterpolationMode = (InterpolationEnum)Properties.Settings.Default.Interp;
         //dispose of event handlers
         sthread.Provider.TimeUpdate -= new SynthWaveProvider.UpdateTime(pctrl.updateTime);
         if (mctrol.Visible == true)
             sthread.Provider.UpdateMidiControllers -= new SynthWaveProvider.UpdateTrackBars(mctrol.updateMidiControls);
         //create new object with new event handlers
         sthread = new SynthThread();
         sthread.Provider.TimeUpdate += new SynthWaveProvider.UpdateTime(pctrl.updateTime);
         if (mctrol.Visible == true)
             sthread.Provider.UpdateMidiControllers += new SynthWaveProvider.UpdateTrackBars(mctrol.updateMidiControls);
         if (File.Exists(Properties.Settings.Default.BankFile))
         {
             sthread.LoadBank(Properties.Settings.Default.BankFile);
             kctrl.updateBankList(sthread.getProgramNames(kctrl.GetBank()));
         }
     }
 }
 private void MainForm_Load(object sender, EventArgs e)
 {
     Synthesizer.InterpolationMode = (InterpolationEnum)Properties.Settings.Default.Interp;
     sthread = new SynthThread();
     sthread.Provider.TimeUpdate += new SynthWaveProvider.UpdateTime(pctrl.updateTime);
     if (File.Exists(Properties.Settings.Default.BankFile))
     {
         sthread.LoadBank(Properties.Settings.Default.BankFile);
         kctrl.updateBankList(sthread.getProgramNames(kctrl.GetBank()));
     }
     playListToolStripMenuItem.Checked = Properties.Settings.Default.show_plist;
     midiControlsToolStripMenuItem.Checked = Properties.Settings.Default.show_mctrl;
     logToolStripMenuItem.Checked = Properties.Settings.Default.show_log;
     keyBoardToolStripMenuItem.Checked = Properties.Settings.Default.show_keyboard;
     updatetoolstripdisplay();
 }