changeset 1933:16a795cababd

Make requested sample format configurable
author Michael Pavone <pavone@retrodev.com>
date Sat, 18 Apr 2020 22:44:17 -0700
parents b387f1c5a1d0
children 253c62b7144e
files default.cfg render_sdl.c
diffstat 2 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/default.cfg	Sat Apr 18 22:36:13 2020 -0700
+++ b/default.cfg	Sat Apr 18 22:44:17 2020 -0700
@@ -335,6 +335,8 @@
 	rate 48000
 	buffer 512
 	lowpass_cutoff 3390
+	#Use f32 for 32-bit floating point, s16 for signed 16-bit integer
+	format f32
 }
 
 clocks {
--- a/render_sdl.c	Sat Apr 18 22:36:13 2020 -0700
+++ b/render_sdl.c	Sat Apr 18 22:44:17 2020 -0700
@@ -903,7 +903,8 @@
    		rate = 48000;
    	}
     desired.freq = rate;
-	desired.format = AUDIO_F32SYS;
+	char *config_format = tern_find_path_default(config, "audio\0format\0", (tern_val){.ptrval="f32"}, TVAL_PTR).ptrval;
+	desired.format = !strcmp(config_format, "s16") ? AUDIO_S16SYS : AUDIO_F32SYS;
 	desired.channels = 2;
     char * samples_str = tern_find_path(config, "audio\0buffer\0", TVAL_PTR).ptrval;
    	int samples = samples_str ? atoi(samples_str) : 0;