--- illiminable <ogg@illiminable.com> wrote:> I'm just trying to wrap the flac decoder into a push model class...
> as i'm
> having a few threading problems in corner cases.
>
> One thing i need to fnid out is... if i call process_single() and let
> the
> read callback give the decoder exactly one packet/frame.
>
> Is the write_callback garaunteed to only be fired once ?
yes
> Also one other thing... this where is always crashes...
>
> Line 374 in bitbuffer.c, at bit_buffer_clear(...) the state is
> ABORTED, and
> blurbs and bits are both ~2^32 and it tries to do a memset.
>
> I know the issue is primarily a threading one... is it normal for
> this to be
> called in the ABORTED state ? How does the blurbs and bits get so
> high ? (is
> it subtracting from 0 ?)
yes, it's probably underflow.
FLAC__bitbuffer_clear() is only called in the decoder from
FLAC__stream_decoder_flush(). is it you calling flush or
reset from somewhere that triggers it, or is it indirectly
through a seek/init/...?
the problem is probably before that anyway though, the blubs/
bits should not underflow.
Josh
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com