[cc-community] Net Band "Packet-In" releases CC BY-SA licensed album

Kevin Phillips (home) tacet at qmpublishing.com
Thu Mar 20 21:11:02 EDT 2008


----- Original Message ----- 
From: "Terry Hancock" <hancock at anansispaceworks.com>
To: <cc-community at lists.ibiblio.org>
Sent: Thursday, March 20, 2008 3:18 AM
Subject: Re: [cc-community] Net Band "Packet-In" releases CC BY-SA licensed 
album


> Kevin Phillips (home) wrote:
>> Secondly, some chip'ins on Terry's observations......
>
> Thanks. I appreciate all the commentary. As I say, I'm not a musician,
> so it's hard to make policy decisions about music data.
>
> I have to say though that your observations do sound a little like
> overkill for my application (which is music for a graphic adventure
> game). I mean, the competition is stuff like "King's Quest" and "Monkey
> Island", which used cheap FM-synth sound. ;-)

I hear where you're coming from, sorry if I overdid it, I just wanted to be 
clear.

> Yes, I hope we can do a *lot* better than those, but there is a definite
> "good enough" factor from my PoV.

Sure thing.  There's an expectation I suppose, things move on.  Most mobile 
phones now have general MIDI synth engines which use wavetable technology, 
all be it with tiny wavetables.

> The hard part is convincing *musicians* that "good enough" is good
> enough. One of the major obstacles I've encountered is perfectionism
> (although, arguably my own perfectionism is part of why the project has
> been stalled for so long -- I'm not happy with existing game engines. So
> maybe I'm being a little hypocritical here).

I understand.  I've noticed a lot of audio on PC games (and consoles for 
that matter) simply use audio streams rather than synth-driven music.  I 
suppose memory and storage aren't a major concern these days.  An mp3 
decoder probably uses less CPU cycles than a decent 16 channel wavetable 
synth, it certainly requires less development time.  Oh, and of course the 
musicians get to use whatever equipment they like, outboard, software etc.

>> Speaking from experience, sheet music is only a guide.
>
> Yes, I had thought to treat sheet music as "documentation" rather than
> "source". I'd still like to have it, though.
>
>> A large part of the
>> interpretation is down to the conductors understanding of the piece.
>> [...]
>> Surprising eh?
>
> Not really. Even I know this much. :-)

Cool.  You'd be surprised.

>> Now listen to the same
>> piece played back by a computer notation system like Finale or
>> Sibelius....even with an expensive sound module it sounds soulless and,
>> well, bloody awful!
>
> I haven't actually tried this, but I can imagine.

No, don't do it, your head will e'splode :)

>> I do agree notation provides a useful guide, and where possible it should 
>> be
>> provided in open projects.
>
> Like documentation.

Yup.  Though there's sheet music and there's sheet music.  I think most 
people would be willing to accept a "general guide" caveat and not be overly 
picky about it.

>> Actually, it's possible to capture a very reasonable MIDI recording of 
>> even
>> the most virtuoso performance using appropriate hardware and software.
>
> Hmm. I think you may not be getting what I said -- unless you can
> reverse an audio recording to extract a MIDI data file from it?

Actually you can sample audio and turn it into MIDI events.  It's not so 
great with polyphonic audio, but certainly a voice singing or a solo 
instrument are do-able.  However, I was actually referring more to a 
keyboard player who records a performance from a MIDI controller keyboard, 
with piano weighted keys, velocity and pressure sensitivity.  With just a 
few reasonably accurate performance parameters the reproduction is improved 
dramatically, along with a high-resolution timing accuracy.

> Some instruments (or "instruments") don't easily produce MIDI data.
> Think didgeridoo.

Yes you can record and convert the pitch and duration.  You'd be right about 
the timbral changes and harmonic shifts of that instrument though.

> Or even a violin, for that matter.

Most string instruments can be fitted with MIDI pickups.

> And of course, human singing.

Similar to the didgeridon't.

>> In order to share and re-produce a project across various platforms you'd
>> need  :
>> 1) A MIDI file (hi-res)
>> 2) Soft-synth patches (making sure they're public domain and/or
>> re-distributable)
>> 3) Audio tracks (dry)
>> 4) Effect plugins (environment and production effects)
>
> That sounds like a reasonable policy to me.
>
> I'm intrigued by the term "hi res" applied to MIDI. Isn't MIDI
> continuum-based? (I think of it as an audio analog to a vector graphic
> format with note positions described by something like floating point
> numbers).
>
> Are there MIDI parameters here that can be specified as requirements?

Firstly, the hi-res I mentioned is a reference to the timing accuracy 
embedded in the MIDI file.  The MIDI file spec allows you to define a 
quarter note (the number of ticks - tpq) and also the number of quarter 
notes per minute (qpm/bpm).  So there's an in-build granularity, which can 
actually allow for very accurate timing.

Unfortunately.....remember me mentioning that most software transcodes into 
it's own format and then re-encodes on export?  Usually the conversion 
process is a function of the sequencer's own internal timer granularity. 
Being a programmer, I'm sure you can imagine the rest, it's not pretty when 
you export on some sequencers and your 512 tpq original file is quantized 
into 64tpq or worse.

There are numerous MIDI controller codes for all kinds of wonderful things, 
from individual channel volume and pan, to breath controller level, reverb 
and chorus, filter Q and filter resonance to name but a few of 127 possible 
(some of which are user/manufacturer definable) on a byte-based system (some 
keyboards only use LSB though there's also an MSB for controllers - lots 
more! ;)

>> In order to share verbatim (guaranteed) :
>
> Skipping this. I don't pretend we're going to get there. :-)

No problem.

>> Your biggest problem is my current nightmare, persuading folks to use a
>> common set of tools.  Musicans are notoriously clingy when it comes to 
>> music
>> kit.  They love what they love, that's it.
>
> Oh yeah. I can relate. The contributor who I was discussing this issue
> with was very attached to a certain proprietary sequencer software. One
> of the problems was that all of the instrument patches were proprietary
> as well.

That's a great shame.

> I would've been okay with that if we had the source so we could, if
> necessary regenerate with free music patches.
>
> But I think that really bothered the contributor (the end of this story
> is that he wanted to go with a By-NC-SA license, and I said "no", and
> that's the last I heard from him). I think his real concern was for his
> artistic integrity.

Well it's his loss.  So put out a spec and maybe some of us moody muso types 
can offer you some assistance ;)

>>> One question we were not able to answer, but I'd like to is: can you
>>> generate "sheet music" from #1. I.e. is there a program I can use to
>>> construct readable sheet music from a MIDI file?  And of course, can you
>>> do the reverse -- convert a sheet music format to a MIDI automatically?
>>
>> No.
>
> I guess you mean only that you cannot recover the original MIDI from
> sheet music, since it's already been noted that you can technically
> inter-convert.

You can generate something close to sheet music, but it's only a poor 
estimate.  Even programs like Sibelius make a hash of notating MIDI files, 
you really need to have a little human intervention to fix the mistakes. 
Reasonably sane people throw objects and shout a lot as a direct result of 
automated notation.  In my years of studying this I've noticed part of the 
problem is that these scholarly people can't even agree with each other 
which is the correct way to notate certain things, and that's without 
introducing instrument-specific peculiarities.

> I'm more interested in the recovery of the sheet music from the MIDI.
> I'm thinking of this being analogous to automatically-generated
> documentation -- something we can derive from the source code to make it
> more understandable to humans. For that you don't need perfect fidelity.

I know it looks simple on paper, right?  Notation is based around 
mathematics, and computers are good at counting things.  Honestly, I wish it 
were so simple.  Sibelius is one of the most popular music transcription 
applications available, it specialises in music notation and it's been in 
development for well over 10 years.  Sibelius can do lots of wonderful 
things, things that save musicians hours upon hours of work.  It can export 
parts for instruments from a main score which is in concert pitch and each 
part will be in the instrument's pitch, horns in F for instance.  One of my 
friends is a Sibelius customer and fan, he uses it all the time to compose 
lengthy pieces.  MIDI file import drives him crazy, he has to correct almost 
everything other than the basic pitch and duration of the notes.   There are 
no special markers which musicians expect, tempo change markers are often 
displaced, time signature, key signature, rests, so many basic things are 
randomly represented incorrectly.


>>> I can imagine that this might not be fully roundtrippable. I gather that
>>> the MIDI file can contain more information than the sheet music, in
>>> terms of subtle variations in note timing, duration, and amplitude that
>>> are not fully encoded into sheet music.
>>
>> You can't even do that with a MIDI file.
>
> Not full roundtripping, you mean.

Notation has markers and symbols for everything you just described, but 
they're only indicators to the musician rather than scentific measurements. 
MIDI has such scientific controllers, but they are sometimes left behind by 
the transcoding process of the sequencer.

> The truth is, this is technically true of graphics, too, at a very fine
> level. SVG, AI, SK, PS formats all do basically the same thing, but you
> lose detail when you switch.
>
> A less severe requirement than full roundtrippability, though is
> "round-trip convergence":
>
> A(FMT1) -> B(FMT2) -> ... -> X(FMT2) -> Y(FMT1) -> Z(FMT1)
>
> IOW, A!=B and B!=Y, but X==Y==Z.
>
> Which requires there to be some basic commonality between the formats.
> If, furthermore, X isn't "bloody awful" (as you put it :-)), then I'm
> probably okay with this.

I understand that, however the ear is a very sensitive device and a 
difference of 50ms is very noticable if it's repeatedly introduced by a 
granularity issue (akin to a resolution or mpeg artifact).  Worse still if a 
sequencer loses some of the controller data.

>> Take one can, open it......worms :D
>>
>> It's a noble cause, it's something lots of people have talked about at 
>> great
>> length (myself included) and it probably needs programmers and musicians 
>> to
>> work together and speak to each other an awful lot more.
>
> Yeah. I'm less into the noble cause, though, and more into the practical
> maintainability. Having viable source means you can survive a "bus
> factor" of 1.*
>
> Plus, one of the graphic artists was apparently abducted by aliens, so
> I'm sensitive to the bus factor.**

hehe....I used to enjoy the Krypton Factor :)

>> I agree.  But I warn you, musicians are hard work sometimes :) 
>> .....they're
>> quite capable of improvising and rebuilding a piece of music, instrument 
>> by
>> instrument without the need to change their software or use poor-sounding
>> software synths instead of their favourite Kurzweil keyboard which cost 
>> them
>> $4,000.
>
> Yes.
>
>> MIDI is from the 80s.  It's ok, it works, but there's lots of things
>> missing.  It's like condemning Open Office to use rtf and csv only.
>>
>> I don't mean to be negative, I'm positive about this, honest :)
>
> I hear you. But I am not, repeat NOT, going to get into a conversation
> about new music formats! There has to be SOME self-control, and besides
> I know there are people much better than me for that job. :-D

Why did the chicken cross the road?  He was running away from a new music 
format ;)

I understand.  It's been enjoyable talking this through and airing some of 
these points.  Seriously, if you need any help with your project just shout 
up.  I'm sure a group of us could come up with something, also I have a lot 
of CC music friends who are more than willing to chip in on a worthy cause 
:)   One of my friends did the music for the crayon physics game which 
recently did the rounds on boingboing etc.

http://www.youtube.com/watch?v=hDwAAckxOkc

Hell, you could even run a ccMixter competition to write music for a 
computer game.  Or start a project on Kompoz, as they tend to be more hip 
with the more open SA licenses.

Kev


---
> Cheers,
> Terry
>
>
> *If you haven't heard that one, it means in this case: if your musician
> gets run over by a bus. More likely, though, is "girl trouble" or some
> such thing, with musicians (yes I actually heard this excuse).
>
> **As discussed here: http://www.freesoftwaremagazine.com/node/1402
>
> -- 
> Terry Hancock (hancock at AnansiSpaceworks.com)
> Anansi Spaceworks http://www.AnansiSpaceworks.com
>
> _______________________________________________
> cc-community mailing list
> cc-community at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/cc-community
>
> 



More information about the cc-community mailing list