Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Pixelgrabber equivalent for Music(MIDI/MP3)



On 7/8/03 3:21 PM, "Scott Palmer" <email@hidden> wrote:

> MP3 files are fancy compressed frequency domain representation of the
> audio time domain waveform (periodic amplitude measurements of the
> sound waves). The good thing is that because it is based in the
> frequency domain it would possible to get approximate 'notes' without
> too much processing.. although that would still be a complex task.

This is a whole big messy problem in-an-of-itself.

Conversion of a single, relatively isolated and discreet audio source to
frequency values (a "note") is pretty straightforward (but still difficult)
using FFT. That's the direction to head if you're doing this yourself.

But conversion of a fully mixed audio source (an MP3 song) into all the note
values for each instrument in that song is incredibly difficult. Which is
why, I suppose, it's never been done and probably will not be done in the
near future. This is a holy grail of sorts, and various people are seeking
it. Or, better put, most have given up and now simply seek little pieces of
it. :-)

If the original poster wants a tool (as opposed to writing a program for
himself), he should go look at Melodyne (http://www.celemony.com/melodyne/).
It's one of the best audio-to-note conversion applications available.
The program will analyze audio input and can kick out a midi-stream of the
results. But even it assumes the incoming audio is a single instrument (not
a whole band of instruments all playing at once). To my knowledge, this is
state-of-the-art with regard to audio-to-MIDI conversion.

> I don't know enough about MIDI, but I was under the impression that it
> stored 'note' information in a much more direct manner.

MIDI stores terse instructions about which notes to play and how to play
them (volume, pitch bend, etc.). MIDI can also store device-specific
commands and sysex data. MIDI cannot store audio data (with the exception
of Sysex being used to pass audio-samples to sample-based devices I
suppose).

It's up to the synthesizer to interpret a MIDI instruction (such as "start
playing middle C at maximum volume") and turn it into an actual sound (such
as a Grand Piano playing middle C).

If the original poster is looking to analyze song structures, MIDI is a good
start. Just go do a Google search for "<song name> midi" to find someone's
re-creation of the song as MIDI source. Then open that file in a program
that supports SMF (the standard MIDI file format, of which there are several
flavors) like Cubase, DP, Logic, etc. You'll see the "song" as re-created
by the MIDI-file's author and can start looking at the notes, chords, bpm,
drums, etc.

If you don't have Cubase, DP, Logic or whatever, you can probably go get a
free MIDI-based notation editor or sequence that will open the file and give
you a nice graphical representation of the MIDI notes.

And, if you're really into pain, you could always write a little program
that read the MIDI file, interpreted the MIDI instructions and show them as
"notes" in some sort of nice graphical representation.

- Gary

Server Side Software
5614 8th Ave NE
Seattle, WA 98105
Voice: (206) 525-4786
Fax: (413) 683-2973
Email: email@hidden
_______________________________________________
java-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/java-dev
Be sure to read the FAQ http://developer.apple.com/java/faq/ before posting
Do not post admin requests to the list. They will be ignored.

References: 
 >Re: Pixelgrabber equivalent for Music(MIDI/MP3) (From: Scott Palmer <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.