Exemplo n.º 1
0
        private static void PlayNotes(List <int> notes)
        {
            List <List <MidiEvent> > musicNotes = new List <List <MidiEvent> >();

            foreach (var note in notes)
            {
                OutputDevice.GetAll().FirstOrDefault().SendEvent(new NoteOffEvent(SevenBitNumber.Parse(note.ToString()), SevenBitNumber.MaxValue));
                //List<MidiEvent> events = new List<MidiEvent>();
                //events.Add(new NoteOnEvent(SevenBitNumber.Parse(note.ToString()), SevenBitNumber.MaxValue));
                //Playback playback = new Playback(events, TempoMap.Default);
                //playback.OutputDevice = OutputDevice.GetAll().FirstOrDefault();
                //playback.Play();
                //playback.Stop();
            }

            //var midiFile = new MidiFile();
            //var tempoMap = midiFile.GetTempoMap();

            //var trackChunk = new TrackChunk();
            //using (var notesManager = trackChunk.ManageNotes())
            //{
            //    var length = LengthConverter.ConvertFrom(2 * MusicalTimeSpan.Eighth.Triplet(),
            //                                             0,
            //                                             tempoMap);
            //    foreach (var note in notes)
            //    {
            //        notesManager.Notes.Add(new Note(SevenBitNumber.Parse(note.ToString())));
            //    }
            //}

            //midiFile.Chunks.Add(trackChunk);
            //midiFile.Write("Single note great song.mid");
            //midiFile.Play();
        }
Exemplo n.º 2
0
        public static MidiMessage Parse(string message)
        {
            var arr = message.Split(',');

            return(new MidiMessage((MidiCommand)Enum.Parse(typeof(MidiCommand), arr[0]),
                                   SevenBitNumber.Parse(arr[1]),
                                   SevenBitNumber.Parse(arr[2])));
        }
Exemplo n.º 3
0
        private static void PlayNotes(List <int> notes)
        {
            List <List <MidiEvent> > musicNotes = new List <List <MidiEvent> >();
            var playbackDevice = OutputDevice.GetAll().FirstOrDefault();

            foreach (var note in notes)
            {
                Note n = new Note(SevenBitNumber.Parse(note.ToString()));
                Console.Write(n + " ");
                //playbackDevice.SendEvent(new NoteOnEvent(SevenBitNumber.Parse(note.ToString()), SevenBitNumber.MaxValue));
            }
        }
Exemplo n.º 4
0
 public void Parse()
 {
     Assert.AreEqual((SevenBitNumber)12, SevenBitNumber.Parse("12"));
     Assert.AreEqual((SevenBitNumber)0, SevenBitNumber.Parse("0"));
     Assert.AreEqual((SevenBitNumber)127, SevenBitNumber.Parse("127"));
 }
Exemplo n.º 5
0
 public void Parse_OutOfRange()
 {
     Assert.Throws <FormatException>(() => SevenBitNumber.Parse("200"));
     Assert.Throws <FormatException>(() => SevenBitNumber.Parse("128"));
 }
Exemplo n.º 6
0
 public void Parse_InvalidFormat()
 {
     Assert.Throws <FormatException>(() => SevenBitNumber.Parse("sdsd"));
 }