uint8_t buffer[BUFFER_SIZE]; /**< output packet buffer */
int buffer_index; /**< current buffer position */
int eof; /**< end-of-file flag */
+ int dsp_initialized; /**< vd has been initialized */
vorbis_comment vc; /**< VorbisComment info */
ogg_packet op; /**< ogg packet */
double iblock; /**< impulse block bias option */
OggVorbisContext *s = avctx->priv_data;
/* notify vorbisenc this is EOF */
- vorbis_analysis_wrote(&s->vd, 0);
+ if (s->dsp_initialized)
+ vorbis_analysis_wrote(&s->vd, 0);
vorbis_block_clear(&s->vb);
vorbis_dsp_clear(&s->vd);
ret = vorbis_error_to_averror(ret);
goto error;
}
+ s->dsp_initialized = 1;
if ((ret = vorbis_block_init(&s->vd, &s->vb))) {
ret = vorbis_error_to_averror(ret);
goto error;