# HG changeset patch # User Michael Pavone # Date 1587275057 25200 # Node ID 16a795cababdec474c254725aeb743a1dfa5726f # Parent b387f1c5a1d04e04a0f9e8bfae29a1eccbdc20d1 Make requested sample format configurable diff -r b387f1c5a1d0 -r 16a795cababd default.cfg --- 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 { diff -r b387f1c5a1d0 -r 16a795cababd render_sdl.c --- 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;