Well, unless somebody has a brilliant idea, I am giving up on this. I don't see how I can do what I wanted to. The slightly hacky way I thought would work, was by guaranteeing the read_callback could read at least enough data to make process_single() return (ie the buffer should contain at least 1 frame or block). But it seems that even when the maximum frame size is known, that can never be guaranteed (probably due to sync errors). The only solution I can think of is an API change such as proposed here: http://sourceforge.net/tracker/?func=detail&aid=2922254&group_id=13478&atid=363478
In the meantime, my program will have slightly limited FLAC capabilities and use a separate code path when flac decoding is requested. PS.: What is the status of the project by the way? I know FLAC is very widely supported, and I generally really like the library and the format, but the current version is old, and if I'm not mistaken the CVS hasn;t been touched in years. Please tell me the project isn't dead. _______________________________________________ Flac-dev mailing list Flac-dev@xiph.org http://lists.xiph.org/mailman/listinfo/flac-dev