diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2010-06-29 10:07:04 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2010-06-29 10:07:04 +0000 |
commit | 7195f3a30cc73e1540a590c519c9a2ecec137952 (patch) | |
tree | 6c59ec9b8ff5835370cc0831c36cdbe36bfca480 /apps | |
parent | d16467873890e1fbe73fd194b01d9fee90878ad1 (diff) |
r27159 broke mpegplayer but not the mpa codec because its libmad init wasn't also updated to be compatible with the changes. Fix that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27171 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/plugins/mpegplayer/audio_thread.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/apps/plugins/mpegplayer/audio_thread.c b/apps/plugins/mpegplayer/audio_thread.c index d626df6681..84f0229000 100644 --- a/apps/plugins/mpegplayer/audio_thread.c +++ b/apps/plugins/mpegplayer/audio_thread.c @@ -225,20 +225,22 @@ static int audio_buffer(struct stream *str, enum stream_parse_mode type) /* Initialise libmad */ static void init_mad(void) { - /*init the sbsample buffer*/ - frame.sbsample = &sbsample; + /* init the sbsample buffer */ frame.sbsample_prev = &sbsample; - + frame.sbsample = &sbsample; + + /* We do this so libmad doesn't try to call codec_calloc(). This needs to + * be called before mad_stream_init(), mad_frame_inti() and + * mad_synth_init(). */ + frame.overlap = &mad_frame_overlap; + stream.main_data = &mad_main_data; + + /* Call mad initialization. Those will zero the arrays frame.overlap, + * frame.sbsample and frame.sbsample_prev. Therefore there is no need to + * zero them here. */ mad_stream_init(&stream); mad_frame_init(&frame); mad_synth_init(&synth); - - /* We do this so libmad doesn't try to call codec_calloc() */ - rb->memset(mad_frame_overlap, 0, sizeof(mad_frame_overlap)); - frame.overlap = (void *)mad_frame_overlap; - - rb->memset(mad_main_data, 0, sizeof(mad_main_data)); - stream.main_data = &mad_main_data; } /* Sync audio stream to a particular frame - see main decoder loop for |