Are there any methods to doing this on Ubuntu 14.04? What kind of quality should I expect from the midi file?
Indirectly, Sonic Visualizer is able to at least help, but won't do it automatically, and you will have to be patient with the job it will requires.
Install Sonic Visualizer (
sonic-visualiser from Synaptic or the Software Center).
Open Sonic Visualizer (use the Dash for this).
Open any sound file (AAC, WAV, MP3, …).
You should see a classical waveform graph appearing.
Click the “Pane” menu, then click the “Add Melodic Range Spectrogram” item, then select “All Channels Mixed” sub‑menu (that's typically what you want, but you may work on separated left and right channels).
You should see a new view below the waveform view (which, the latter, you can close if you wish). This view shows the pitch (something close to classical spectrogram).
On the left of the pitch spectrogram, you can see a keyboard‑like ruler. It will be useful, as you will see later.
Now click the “Layer” menu, and then click the “Add New Notes Layer” item.
The mouse cursor now should look like a cross, which will allow you to draw lines, just like in a piano‑roll view.
Take a look especially at what's red in the pitch spectrogram… this is typically the notes of the melody. Draw horizontal lines above it, like in a piano‑roll editor.
You may play/pause as you want, to hear both the original audio file, with the notes playing above it, as MIDI notes (it uses an embedded DSSI plug‑in as the MIDI synthesizer, so you don't have to bother to install and configure one).
When you are done, you may export your job as a MIDI file: click the “File” menu, then click the “Export Annotation Layer” item, then in the dialog box, choose the file type “MIDI Files (*.mid)”.
Save the MIDI files, and voilà!