I have written a FLAC frame decoder, it doesn't know anything about stream or metadata blocks, only frames. It is a C library (well, one C file with one public function) and it aims to be a high performance decoder with minimum memory usage for slow CPUs (e.g. old Pentium w/o MMX), but that doesn't mean it isn't fast on a fast CPU :). In the package there is also a example decoder/recovery tool for native FLAC files using affd. It has passed test_stream.sh from the extensive FLAC testing suite, therefore i think affd is able to manage every frame. Ok, don't expect too much, it's first version, it has almost no documentation, no reasonable build system, etc... download: http://phoenix.inf.upol.cz/~lichvarm/affd/affd-0.1.0.tar.gz I hope someone find it useful, at least the recovery tool. Thanks for any comments, -- Miroslav Lichvar