Difference between revisions of "Midi"

From Audacity Wiki
Jump to: navigation, search
(Make applications list alphabetical and add Reaper)
(lilling CD link)
 
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{DISPLAYTITLE:MIDI}}
 
{{Intro|[http://en.wikipedia.org/wiki/Midi MIDI] is a compact, notes-based file format widely used for keyboard instruments. It stores ''how to play'' the music - which MIDI keys are pressed, and their strength and duration. It is not an audio file format like [[WAV]] that stores the full sound of the notes actually being played. Currently, Audacity only has limited support for MIDI.|}}  
 
{{Intro|[http://en.wikipedia.org/wiki/Midi MIDI] is a compact, notes-based file format widely used for keyboard instruments. It stores ''how to play'' the music - which MIDI keys are pressed, and their strength and duration. It is not an audio file format like [[WAV]] that stores the full sound of the notes actually being played. Currently, Audacity only has limited support for MIDI.|}}  
  
Line 6: Line 7:
  
 
==MIDI and Audacity==
 
==MIDI and Audacity==
[http://web.audacityteam.org/download/ Current releases of Audacity] are now slowly adding support for MIDI. As of October 2008, MIDI files can be imported, cut-and-paste edited, then exported as MIDI. However this feature is still buggy, and there is no MIDI playback. Conversion from MIDI to audio formats, and from audio formats to MIDI is not supported.
+
MIDI playback was introduced from Audacity 2.2.0. MIDI files can be imported as [http://manual.audacityteam.org/man/note_tracks.html Note Tracks], which support cut-and-paste editing, and exporting in MIDI (.mid) or Allegro (.gro) formats. Conversion from MIDI to audio formats, and from audio formats to MIDI is not yet supported.
  
Audacity cannot record MIDI input, only audio input. Audacity cannot be directly controlled by a MIDI controller, though [http://www.bome.com/products/miditranslator Bome's MIDI Translator] (Windows and Mac OS X) can translate MIDI commands to standard keystrokes which Audacity can then recognise as keyboard shortcuts.  
+
Audacity cannot record MIDI input, only import and play MIDI files. Audacity cannot be directly controlled by a MIDI controller, though [http://www.bome.com/products/miditranslator Bome's MIDI Translator] (Windows and Mac) can translate MIDI commands to standard keystrokes which Audacity can then recognize as keyboard shortcuts.  
  
  
Line 15: Line 16:
 
== Converting from MIDI to audio formats==
 
== Converting from MIDI to audio formats==
  
MIDI files can be converted to [http://www.audacityteam.org/manual/index.php?title=Digital_Audio sampled audio formats] such as [[WAV]] either by recording them as they play, or by rendering them directly to an audio format using a third-party application. Recording or rendering the MIDI file to an audio file is the only way you can edit MIDI in Audacity. It is also the only way you can burn MIDI to an [[Audio CD|audio CD]].  
+
MIDI files can be converted to [http://www.audacityteam.org/manual/index.php?title=Digital_Audio sampled audio formats] such as [[WAV]] either by recording them as they play, or by rendering them directly to an audio format using a third-party application. Recording or rendering the MIDI file to an audio file is the only way you can edit MIDI in Audacity. It is also the only way you can burn MIDI to an audio CD.  
 
WAV is the recommended format to convert to, because it is lossless and won't significantly degrade if you edit it in Audacity. If necessary you can always export it after editing to a lossy, smaller-sized format like [[MP3]].  
 
WAV is the recommended format to convert to, because it is lossless and won't significantly degrade if you edit it in Audacity. If necessary you can always export it after editing to a lossy, smaller-sized format like [[MP3]].  
  
On '''Windows''' or '''Linux''', depending on your soundcard, you can record the MIDI into Audacity in real time simply by playing it on your computer, for example on Windows Media Player. On '''OS X''' you need to use a third-party program recording application such as [http://www.cycling74.com/products/soundflower Soundflower]. For more help, see our [http://manual.audacityteam.org/o/man/tutorial_recording_audio_playing_on_the_computer.html Tutorial on recording streaming audio].  
+
On '''Windows''' or '''Linux''', depending on your soundcard, you can record the MIDI into Audacity in real time simply by playing it on your computer, for example on Windows Media Player. On '''Mac''' you need to use a third-party recording application such as '''Soundflower'''. For more help, see our [https://manual.audacityteam.org/o/man/tutorial_recording_audio_playing_on_the_computer.html Tutorial on recording streaming audio].  
  
As an alternative, [http://en.wikipedia.org/wiki/TiMidity%2B%2B TiMidity++] will render the MIDI to an audio file like WAV in faster than real time. For those on Windows, there are some [http://forum.audacityteam.org/viewtopic.php?p=124407#p124407 instructions on the Forum] to download a Windows TiMidity++ binary, plus the necessary soundfont file. Don't forget to run the interface executable '''timw32g.exe''' to run TiMidity++, not timidity.exe which is only the command line tool. On other platforms, look for an appropriate source package to compile (or a port for your platform) on the [http://timidity.sourceforge.net/ TiMidity++ home page]. Some of the MIDI programs listed at the [[#programs|bottom of this page]] may also be able to render a MIDI file to WAV.
+
As an alternative, [http://en.wikipedia.org/wiki/TiMidity%2B%2B TiMidity++] will render the MIDI to an audio file like WAV in faster than real time. For those on Windows, there are some [https://forum.audacityteam.org/viewtopic.php?p=124407#p124407 instructions on the Forum] to download a Windows TiMidity++ binary, plus the necessary soundfont file. Don't forget to run the interface executable '''timw32g.exe''' to run TiMidity++, not timidity.exe which is only the command line tool. On other platforms, look for an appropriate source package to compile (or a port for your platform) on the [http://timidity.sourceforge.net/ TiMidity++ home page]. Some of the MIDI applications listed at the [[#programs|bottom of this page]] may also be able to render a MIDI file to WAV.
 
{{hint|Audio files recorded or rendered from MIDI no longer contain the notation information that the MIDI had. They become essentially a recording of those notes being played at one given time. How that recording sounds depends on the soundfonts or General MIDI banks that were used in the conversion.}}  
 
{{hint|Audio files recorded or rendered from MIDI no longer contain the notation information that the MIDI had. They become essentially a recording of those notes being played at one given time. How that recording sounds depends on the soundfonts or General MIDI banks that were used in the conversion.}}  
  
Line 27: Line 28:
  
 
== Converting from audio formats to MIDI ==
 
== Converting from audio formats to MIDI ==
{{ednote|'''Gale 18Jan14:''' [[ToDo]] Are the two lists below of MIDI apps in best or most obvious order? Vaughan thinks not, but I don't much like alphabetical (unless in a table) or a header for each type of OS support (unless there are more items in the list).}}
+
Converting in the other direction is a challenging research problem requiring software that can detect the pitch of the notes being played. At present, only single melodic lines can be converted with any degree of accuracy. We'd be very interested in helping a developer who has made progress with such software in helping it reach a wider audience through Audacity. Meantime, here are a few application applications you could try:
Converting in the other direction is a challenging research problem requiring software that can detect the pitch of the notes being played. At present, only single melodic lines can be converted with any degree of accuracy. We'd be very interested in helping a developer who has made progress with such software in helping it reach a wider audience through Audacity. Meantime, here are a few programs you could try:
 
  
 +
* [http://www.pluto.dti.ne.jp/~araki/amazingmidi/ AmazingMIDI] (Windows) ''free''
 +
* [http://www.digital-ear.com/digital-ear/index.asp Digital Ear] (Windows)
 +
* [http://www.intelliscore.net/product.html Intelliscore Polyphonic] (Windows)
 +
* [http://www.ts-audiotomidi.com-about.com TS-AudioToMIDI] (Windows)
 
* [http://sourceforge.net/projects/wavetomidi/ WavetoMidi]  (Cross-platform, Open Source)
 
* [http://sourceforge.net/projects/wavetomidi/ WavetoMidi]  (Cross-platform, Open Source)
* [http://www.mp3towav.org/TS-AudioToMIDI/ AudiotoMidi] (Windows)
+
* [http://www.widisoft.com/english/mp3-midi-products.html WidiSoft] (Windows, Mac) <p>
* [http://www.intelliscore.net/product.html Intelliscore Polyphonic] (Windows)
+
* [http://www.music-notation.info/en/compmus/audio2midi.html Other shareware applications] (old page, but contains some useful hints)</p>
* [http://www.digital-ear.com/digital-ear/index.asp Digital Ear] (Windows)
 
* [http://www.pluto.dti.ne.jp/~araki/amazingmidi/ AmazingMIDI] (Windows) ''free''
 
* [http://www.widisoft.com/english/mp3-midi-products.html WidiSoft] (Windows, OS X)  
 
* [http://www.mp3towav.org/mp3-to-midi.asp Other shareware programs]  
 
 
 
  
 
<div id="programs"></div>
 
<div id="programs"></div>
Line 48: Line 47:
 
* [http://anthem.sourceforge.net/ Anthem] (Linux, Open Source, requires KDE)  
 
* [http://anthem.sourceforge.net/ Anthem] (Linux, Open Source, requires KDE)  
 
* [http://www.anvilstudio.com/ Anvil Studio] (Windows) ''(free version is feature-limited)''
 
* [http://www.anvilstudio.com/ Anvil Studio] (Windows) ''(free version is feature-limited)''
* [http://www.finalemusic.com/products/finale-notepad/ Finale Notepad] (Windows and Mac OS X)
+
* [http://www.finalemusic.com/products/finale-notepad/ Finale Notepad] (Windows and Mac)
* [http://www.myriad-online.com/en/products/melody.htm Melody Assistant] (Windows and Mac OS X) ''(free version is feature-limited)''
+
* [http://www.myriad-online.com/en/products/melody.htm Melody Assistant] (Windows and Mac) ''(free version is feature-limited)''
 
* [http://freepats.zenvoid.org/tools/midicomp/ midicomp] - converts midi to text file and back again (Cross-platform, Open Source)
 
* [http://freepats.zenvoid.org/tools/midicomp/ midicomp] - converts midi to text file and back again (Cross-platform, Open Source)
* [http://www.mutools.com/ MU.LAB] (Windows and Mac OS X) ''(free version is feature-limited)''
+
* [http://www.mutools.com/ MU.LAB] (Windows and Mac) ''(free version is feature-limited)''
 
* [http://musescore.org/ Musescore] (Cross-platform, Open Source)
 
* [http://musescore.org/ Musescore] (Cross-platform, Open Source)
* [http://www.reaper.fm/ Reaper] (Windows and Mac OS X) is a digital audio workstation with MIDI recording and editing ability. The 60 day free trial has no feature restrictions.   
+
* [http://www.reaper.fm/ Reaper] (Windows and Mac) is a digital audio workstation with MIDI recording and editing ability. The 60 day free trial has no feature restrictions.   
* [http://downloads.sourceforge.net/reddot/files Red Dot Forever] - very simple Windows program that just records to a MIDI file
+
* [http://downloads.sourceforge.net/reddot/files Red Dot Forever] - very simple Windows application that just records to a MIDI file
 
* [http://www.rosegardenmusic.com/ Rosegarden] (Linux, Open Source)  
 
* [http://www.rosegardenmusic.com/ Rosegarden] (Linux, Open Source)  
 
* [http://www.tuxguitar.com.ar/ Tuxguitar] (Cross-platform, Open Source)<p>
 
* [http://www.tuxguitar.com.ar/ Tuxguitar] (Cross-platform, Open Source)<p>
* [http://www.freebyte.com/music/#free_notation Other free Windows/Linux programs]</p>
+
* [http://www.freebyte.com/music/#free_notation Other free Windows/Linux applications]</p>

Latest revision as of 14:24, 17 March 2018

MIDI is a compact, notes-based file format widely used for keyboard instruments. It stores how to play the music - which MIDI keys are pressed, and their strength and duration. It is not an audio file format like WAV that stores the full sound of the notes actually being played. Currently, Audacity only has limited support for MIDI.



MIDI and Audacity

MIDI playback was introduced from Audacity 2.2.0. MIDI files can be imported as Note Tracks, which support cut-and-paste editing, and exporting in MIDI (.mid) or Allegro (.gro) formats. Conversion from MIDI to audio formats, and from audio formats to MIDI is not yet supported.

Audacity cannot record MIDI input, only import and play MIDI files. Audacity cannot be directly controlled by a MIDI controller, though Bome's MIDI Translator (Windows and Mac) can translate MIDI commands to standard keystrokes which Audacity can then recognize as keyboard shortcuts.


Converting from MIDI to audio formats

MIDI files can be converted to sampled audio formats such as WAV either by recording them as they play, or by rendering them directly to an audio format using a third-party application. Recording or rendering the MIDI file to an audio file is the only way you can edit MIDI in Audacity. It is also the only way you can burn MIDI to an audio CD. WAV is the recommended format to convert to, because it is lossless and won't significantly degrade if you edit it in Audacity. If necessary you can always export it after editing to a lossy, smaller-sized format like MP3.

On Windows or Linux, depending on your soundcard, you can record the MIDI into Audacity in real time simply by playing it on your computer, for example on Windows Media Player. On Mac you need to use a third-party recording application such as Soundflower. For more help, see our Tutorial on recording streaming audio.

As an alternative, TiMidity++ will render the MIDI to an audio file like WAV in faster than real time. For those on Windows, there are some instructions on the Forum to download a Windows TiMidity++ binary, plus the necessary soundfont file. Don't forget to run the interface executable timw32g.exe to run TiMidity++, not timidity.exe which is only the command line tool. On other platforms, look for an appropriate source package to compile (or a port for your platform) on the TiMidity++ home page. Some of the MIDI applications listed at the bottom of this page may also be able to render a MIDI file to WAV.

Audio files recorded or rendered from MIDI no longer contain the notation information that the MIDI had. They become essentially a recording of those notes being played at one given time. How that recording sounds depends on the soundfonts or General MIDI banks that were used in the conversion.


Converting from audio formats to MIDI

Converting in the other direction is a challenging research problem requiring software that can detect the pitch of the notes being played. At present, only single melodic lines can be converted with any degree of accuracy. We'd be very interested in helping a developer who has made progress with such software in helping it reach a wider audience through Audacity. Meantime, here are a few application applications you could try:

Free or free trial applications for working with MIDI

There are many excellent applications for recording and/or editing MIDI files. Many will display the MIDI notes on a musical staff. Here are some suggestions:

  • abcmidi - abc2midi converts abc notation to midi and midi2abc converts midi to abc notation (Cross-platform, Open Source)
  • Anthem (Linux, Open Source, requires KDE)
  • Anvil Studio (Windows) (free version is feature-limited)
  • Finale Notepad (Windows and Mac)
  • Melody Assistant (Windows and Mac) (free version is feature-limited)
  • midicomp - converts midi to text file and back again (Cross-platform, Open Source)
  • MU.LAB (Windows and Mac) (free version is feature-limited)
  • Musescore (Cross-platform, Open Source)
  • Reaper (Windows and Mac) is a digital audio workstation with MIDI recording and editing ability. The 60 day free trial has no feature restrictions.
  • Red Dot Forever - very simple Windows application that just records to a MIDI file
  • Rosegarden (Linux, Open Source)
  • Tuxguitar (Cross-platform, Open Source)

  • Other free Windows/Linux applications