pfarrell;495433 Wrote: > Making 16/48 out of 24/96 is trivial, any embedded processor can do > that, just throw away every other sample, and truncate them all to 16 > bits using a shift-right by eight instruction. I see you've already responded to the issue that dither should be added when truncating.
There's another issue that makes 24/96 -> 16/48 difficult for an embedded processor (far more difficult than the dithering requirement). You need to lowpass filter the signal before resampling, and that requires more CPU power than a typical embedded system can provide. You can't just throw away every other sample - if the 96kHz data has anything above 24kHz, you'll get aliasing. The SB3 used to do exactly this - throw away every other sample. It got away with it because the overwhelming majority of 96kHz audio files contain little if anything above 24kHz anyway, so the aliasing artefacts were at a very low level. In the context of SqueezeCenter running on a low power CPU (eg. a NAS), I think it was a sensible pragmatic compromise. At some point Sean seems to have decided it wasn't acceptable, and later SB3 firmwares removed the capability, relying instead on SOX on the server. -- cliveb Transporter -> ATC SCM100A ------------------------------------------------------------------------ cliveb's Profile: http://forums.slimdevices.com/member.php?userid=348 View this thread: http://forums.slimdevices.com/showthread.php?t=72414 _______________________________________________ discuss mailing list [email protected] http://lists.slimdevices.com/mailman/listinfo/discuss
