Ejemplo n.º 1
0
        static void Main(string [] args)
        {
            foreach (string midiFilename in args)
            {
                try
                {
                    // Open midi file
                    MidiSequence sequence = MidiSequence.Import(midiFilename);

                    // Spit out format info and ask for new format
                    int oldFormat = sequence.Format;
                    int newFormat = 0;

                    if (oldFormat != newFormat)
                    {
                        // Create the new midi file
                        MidiSequence newSequence = MidiSequence.Convert(
                            sequence, newFormat, MidiSequence.FormatConversionOptions.CopyTrackToChannel);

                        // Write out the new converted file
                        string newFilename = midiFilename + "." + newFormat + ".mid";
                        newSequence.Save(newFilename);

                        // Let the user know
                        Console.WriteLine("Converted {0}\r\n\tFrom type {1}\r\n\tTo type {2}\r\n\tSaved to {3}",
                                          midiFilename, oldFormat, newFormat, newFilename);
                    }
                    else
                    {
                        Console.WriteLine("File {0} is already type {1}.", midiFilename, newFormat);
                    }
                }
                catch (Exception exc)
                {
                    // Let the user know something went wrong
                    Console.WriteLine("Converting {0}\r\n\t{1}", midiFilename, exc.Message);
                }
            }

            Console.WriteLine("");
            Console.WriteLine("Hit enter to exit...");
            Console.ReadLine();
        }