make sound rates platform dependent
authorkub <derkub@gmail.com>
Sat, 17 Feb 2024 18:32:30 +0000 (19:32 +0100)
committerkub <derkub@gmail.com>
Sat, 17 Feb 2024 18:32:30 +0000 (19:32 +0100)
gp2x/plat.c
linux/plat.c
pandora/plat.c
plat.h

index e80b0fb..2e06e41 100644 (file)
@@ -45,7 +45,8 @@ static const char * const caanoo_keys[KEY_MAX + 1] = {
 };
 
 /* to be filled by mmsp2/pollux _init */
-struct plat_target plat_target;
+static int sound_rates[] = { 8000, 11025, 16000, 22050, 32000, 44100, 53000, -1 };
+struct plat_target plat_target = { .sound_rates = sound_rates };
 
 int plat_target_init(void)
 {
index 707d5f7..9ed3637 100644 (file)
@@ -116,7 +116,7 @@ unsigned int plat_get_ticks_ms(void)
 
        ret = (unsigned)tv.tv_sec * 1000;
        /* approximate /= 1000 */
-       ret += ((unsigned)tv.tv_usec * 4195) >> 22;
+       ret += ((unsigned)tv.tv_usec * 4194) >> 22;
 
        return ret;
 }
index fbb670c..d292f01 100644 (file)
@@ -239,6 +239,7 @@ static int switch_layer(int which, int enable)
        return ret;
 }
 
+static int sound_rates[] = { 8000, 11025, 16000, 22050, 32000, 44100, 53000, -1 };
 struct plat_target plat_target = {
        cpu_clock_get,
        cpu_clock_set,
@@ -247,6 +248,7 @@ struct plat_target plat_target = {
        lcdrate_set,
        gamma_set,
        .switch_layer = switch_layer,
+       .sound_rates = sound_rates,
 };
 
 int plat_target_init(void)
diff --git a/plat.h b/plat.h
index ba4e0eb..a5dfc79 100644 (file)
--- a/plat.h
+++ b/plat.h
@@ -46,6 +46,8 @@ struct plat_target {
        int vout_fullscreen;
        const char **hwfilters;
        int hwfilter;
+       const int *sound_rates;
+       int sound_rate;
 };
 
 extern struct plat_target plat_target;