Sonic Rendering

I’ve had a project in mind for a while, that I may start after I’m done with all my other projects (when I’m 50 years old :-)

I use MIDI to compose all my music, and I frequently am annoyed by its limitations. In fact, the limitations of MIDI may be one of the main reasons I am a piano composer. MIDI’s framework works well for piano, but it fails in the presence of strings, woodwinds, or basically anything that can crescendo in the middle of a note, or change timbre without changing volume.

I want to create a new file format that can handle these things, and a corresponding renderer. Here are some basic things I want:

  • The ability to couple a soundfont with a piece, without including it directly in the file. That is, the music file would include a URL at which the player could find a soundfont to use. Then the player could cache this, and avoid downloading it again for another similar piece. It would also encourage sharing of soundfonts.
  • The ability to move smoothly between two timbres, for example, a violin playing a note fortepiano. You would use the marcato attack sample from the violin, and then interpolate to the piano sample.
  • The ability to glissando between any two notes, not just ones up to a whole step away.

Things like that. I have an idea about the implementation of the soundfonts as well. Each instrument would be a table of state references, each of which a sample and some attributes on that sample. Therefore, an entire instrument could be a single sample referenced from each state (unfilled states would be interpolated in), or it could fill in each state with a different sample (which would likely end up taking a few hundred megs, but has the possibility of sounding extremely realistic).

It would be possible to interpolate between any two states. A glissando would be an interpolation between two different notes; a timbre change would interpolate over the timbre states while keeping the notes the same; a crescendo would interpolate over two volume states. You could even interpolate all three at once.

This is the kind of thing that warrants a lot of experimenting before the real implementation. So, I’ll a-be experimentin’, probably when I’m procrastinating on something else. Watch for updates.


3 thoughts on “Sonic Rendering

  1. When you finish your project, could you give me?
    Thank you so much. New good idea!!!
    I am also feel difficulty in composing symphony,and I know you are too.
    I have one small idea for you. I know you have used Creative-sound card before, me too.
    You could try Sound-max. This card presents a good feature of Strings, but bad for piano.
    However, do not leave piano. your Karlin,… made me scare already :-), I could not have a piece like that.
    I generated an idea somedays ago that I share with you my compositions which means we can compose together on some songs, and I also sent to you a piece. I am honoured If you would like.
    If you would not like, tell me anyway. I will continue it.

  2. Luke, Luke, Luke , give me some ideas about WordPress please, I am impressed your new webpage.
    Thank you, Luke :-)

  3. Hi Luke
    I have just finished your river un-finished-piece and I sent back to your email.
    Enjoy listening !
    Tell me what you think of it.
    Thank you

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s