Mercurial > mplayer.hg
view libmpcodecs/ad_internal.h @ 29770:db80b9d20406
demuxer.c: Add initialization missing from previous commit
Reimar's previous commit ("Unbreak the demuxer-specific code in
video.c with e.g.") added the new field "non_interleaved" in
demux_stream structs, but this field was not initialized anywhere.
Under suitable circumstances this could cause a "Too many
video/audio packets in the buffer" error and failing playback. Fix
the problem by cleaning up the code that creates new instances of the
struct. Now fields will be initialized to 0 by default.
author | uau |
---|---|
date | Mon, 02 Nov 2009 01:40:09 +0000 |
parents | 4129c8cfa742 |
children | bbb6ebec87a0 |
line wrap: on
line source
#ifndef MPLAYER_AD_INTERNAL_H #define MPLAYER_AD_INTERNAL_H #include "codec-cfg.h" #include "libaf/af_format.h" #include "stream/stream.h" #include "libmpdemux/demuxer.h" #include "libmpdemux/stheader.h" #include "ad.h" extern int audio_output_channels; static int init(sh_audio_t *sh); static int preinit(sh_audio_t *sh); static void uninit(sh_audio_t *sh); static int control(sh_audio_t *sh,int cmd,void* arg, ...); static int decode_audio(sh_audio_t *sh,unsigned char *buffer,int minlen,int maxlen); #define LIBAD_EXTERN(x) ad_functions_t mpcodecs_ad_##x = {\ &info,\ preinit,\ init,\ uninit,\ control,\ decode_audio\ }; #endif /* MPLAYER_AD_INTERNAL_H */