Exemplo n.º 1
0
 private static void PlayTabAsRequired(string tabName, PlayableSequence playableSequence)
 {
     if (!string.IsNullOrEmpty(tabName))
     {
         var result = playableSequence.LoadFromFile(tabName, "Tabs", out string errorString, out Tablature tabs);
         if (!result)
         {
             WriteMessage(errorString, ConsoleColor.Red);
         }
         else
         {
             tabs.FixUp();
             IStringInstrument guitar = new Guitar(tabs.Tuning, 21);
             playableSequence.ConvertTabsToNoteSequence(guitar, tabs);
             playableSequence.Repeat = tabs.Repeat;
             playableSequence.Prepare();
             playableSequence.Play();
         }
     }
 }
Exemplo n.º 2
0
        private static void PlaySongAsRequired(string key, string fileName, PlayableSequence playableSequence)
        {
            if (!string.IsNullOrEmpty(fileName))
            {
                var result = playableSequence.LoadFromFile(fileName, "Songs", out string errorString, out Song song);
                if (!result)
                {
                    WriteMessage(errorString, ConsoleColor.Red);
                }
                else
                {
                    var currentSong = GetTheSongByKeyAsRequired(key, song);
                    playableSequence.ConvertSongNotesToNoteSequence(currentSong);
                    playableSequence.Prepare();
                    playableSequence.Play();

                    if (song.Reverse)
                    {
                        playableSequence.ReverseSequence();
                        playableSequence.Play();
                    }
                }
            }
        }