5 ms·
I got handed a custom mp3 encoder and asked if I could figure out why the output was too quiet. At the time I had essentially no DSP experience. It seems the g
by prutschman 12y ago
I got handed a custom mp3 encoder and asked if I could figure out why the output was too quiet. At the time I had essentially no DSP experience.
It seems the gain had been reduced to cover up another problem: a tonal hissing sound. Once I learned how polyphase filter banks work, I tracked the problem down to a premature optimization, namely the replacement of an integer divide by 2^n with a right shift.
Such a shift of a negative 2's compliment integer rounds toward negative infinity instead of zero. This caused a slight DC bias within each sub band filter. In all but the lowest band, this DC bias gets shifted up to a non-zero frequency.
I call the optimization above premature because fixing it only added one cycle per operation. Granted, this was a real-time MP3 encoder on an ARM7, but the cycles were there.
- prutschman 12y agoOh, and the code comments were in Dutch, which I don't read.
- deleted 12y ago[deleted]
- sitkack 12y agoThat probably helped.
- ragebol 12y agoI'm guessing it was at Philips?
- prutschman 12y agoThis was a small consumer electronics company no longer in existence. The encoder was written by a quite clever dutch hacker, whom I very much enjoyed working with.
- prutschman 12y agoAt a different gig I built a linux x264 batch transcode cluster that accepted, among other formats, Apple ProRes. (Quicktime under wine using xvfb, through avisynth, piping a yuv4mpeg stream out of the wine domain). At a yet another gig I developed a method to differentiate male and female insects at 30m using a beam-steered high speed low res camera.
- sounds 12y agoWould that be the mosquito laser? https://www.youtube.com/watch?v=eYXPqrXZ1eU https://www.youtube.com/watch?v=eYXPqrXZ1eU