[Flac-dev] FlacPak
Josh Green
jgreen at users.sourceforge.net
Wed Nov 19 21:56:06 PST 2003
Curt Sampson wrote:
> > > > I've thought of doing lossy compression before on instruments,
> but I'd
> > > > much rather stick to lossless, at least for now.
>
> Honestly, stick to lossless. I mean, to the point where you can get
> your exact samples back. Sure, an S900 sample is not so great quality,
> but having come from the era where I did the 13-bit Ensonique stuff,
> you know, even then we were saying that the Jupiter-8 had a sound all
> it's own. The stuff you ripped in on your Ensonique (or, God help me,
> older sampler) will never sound the same played back on something
> else,
> but the point is, if you ever want to go back to that sound, you can
> probably buy a used sampler at some point, cheaply or not, and load
> this
> stuff into it, but if you do a lossful compression, you're going to
> lose
> the character, without a doubt. This is not even about sound quality
> any
> more: this is about history, and the way that crappy sampler actually
> recorded whatever piece of metal you happened to be banging on at the
> time...
>
> cjs
>
My thoughts exactly :) I am curious though how one would get around the
problems of looping with a lossy algorithm. When decoding a vorbis
stream would one have the same number of samples as you encoded? The
problem with looping arises if the loop points aren't the same sample
values, resulting in a click. Some sort of algorithm could be run around
the loop points to get them to align again, but I wouldn't know the best
way to do that, yet.
The purpose of FlacPak is to be able to compress existing sampler
formats that contain binary and audio data. Many of these formats also
contain stereo samples, but separated into individual mono samples. The
encoder will have knowledge of the format it is compressing and will be
able to exploit split stereo samples, etc. The encoder on the other hand
will be generic. The FlacPak encoder class is almost ready. Just need to
come up with a good way to MD5 sum the whole mess to ensure data
integrity. Cheers.
Josh Green
More information about the Flac-dev
mailing list