diff options
author | David Schleef <ds@schleef.org> | 2003-12-02 02:34:37 +0000 |
---|---|---|
committer | David Schleef <ds@schleef.org> | 2003-12-02 02:34:37 +0000 |
commit | eee3e34645c89024dc4d3d22c83f78ed4c70b996 (patch) | |
tree | e49446bf9e202ff96c54644e9269149d7a651531 | |
parent | df41e0a0d7c87f7aec6db18ec5febd6124b2161a (diff) |
Apply patch from jesimon@libertysurf.fr (Jeremy SIMON) in #122368.
Original commit message from CVS:
Apply patch from jesimon@libertysurf.fr (Jeremy SIMON) in #122368.
FLAC io functions should be called every time the encoder is initialized.
-rw-r--r-- | ext/flac/gstflacenc.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/ext/flac/gstflacenc.c b/ext/flac/gstflacenc.c index d8928a0c..a0f9fb91 100644 --- a/ext/flac/gstflacenc.c +++ b/ext/flac/gstflacenc.c @@ -335,14 +335,6 @@ gst_flacenc_init (FlacEnc *flacenc) flacenc->encoder = FLAC__seekable_stream_encoder_new(); - FLAC__seekable_stream_encoder_set_write_callback (flacenc->encoder, - gst_flacenc_write_callback); - FLAC__seekable_stream_encoder_set_seek_callback (flacenc->encoder, - gst_flacenc_seek_callback); - - FLAC__seekable_stream_encoder_set_client_data (flacenc->encoder, - flacenc); - flacenc->negotiated = FALSE; flacenc->first = TRUE; flacenc->first_buf = NULL; @@ -580,6 +572,15 @@ gst_flacenc_chain (GstPad *pad, GstData *_data) FLAC__SEEKABLE_STREAM_ENCODER_UNINITIALIZED) { FLAC__SeekableStreamEncoderState state; + + FLAC__seekable_stream_encoder_set_write_callback (flacenc->encoder, + gst_flacenc_write_callback); + FLAC__seekable_stream_encoder_set_seek_callback (flacenc->encoder, + gst_flacenc_seek_callback); + + FLAC__seekable_stream_encoder_set_client_data (flacenc->encoder, + flacenc); + gst_flacenc_set_metadata (flacenc); state = FLAC__seekable_stream_encoder_init (flacenc->encoder); if (state != FLAC__STREAM_ENCODER_OK) { |