summaryrefslogtreecommitdiff
path: root/apps/main.c
diff options
context:
space:
mode:
authorPeter D'Hoye <peter.dhoye@gmail.com>2006-05-01 12:54:21 +0000
committerPeter D'Hoye <peter.dhoye@gmail.com>2006-05-01 12:54:21 +0000
commit6488177d057ae5151174b2e4261de0796fb9c9c6 (patch)
treeaa788e3f8c3224162736e63be2613f792e7ed96b /apps/main.c
parentd5e1157cf7a59f98c23ed9116b32e660b8111550 (diff)
Init voice before audio because audio needs to know the voice buffer size. Seems to fix the occasional freeze at startup (if voice is used), and also seems to fix voice eating itself after playback.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9849 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/main.c')
-rw-r--r--apps/main.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/apps/main.c b/apps/main.c
index c25098f89c..5966208771 100644
--- a/apps/main.c
+++ b/apps/main.c
@@ -224,14 +224,18 @@ void init(void)
global_settings.mdb_shape,
global_settings.mdb_enable,
global_settings.superbass);
+
#if CONFIG_CODEC == SWCODEC
audio_preinit();
#endif
- audio_init();
- button_clear_queue(); /* Empty the keyboard buffer */
+
+ /* audio_init must to know the size of voice buffer so init voice first */
#if CONFIG_CODEC == SWCODEC
talk_init();
#endif
+
+ audio_init();
+ button_clear_queue(); /* Empty the keyboard buffer */
}
#else
@@ -419,11 +423,15 @@ void init(void)
global_settings.mdb_shape,
global_settings.mdb_enable,
global_settings.superbass);
+
+ /* audio_init must to know the size of voice buffer so init voice first */
+ talk_init();
+
audio_init();
#if (defined(IRIVER_H100_SERIES) || defined(IRIVER_H300_SERIES)) && !defined(SIMULATOR)
pcm_rec_init();
#endif
- talk_init();
+
/* runtime database has to be initialized after audio_init() */
cpu_boost(false);