From 1e0eac2348343c8a046f7a75d460f087556cf7f6 Mon Sep 17 00:00:00 2001 From: notaz Date: Fri, 6 Feb 2015 01:26:44 +0200 Subject: [PATCH] libretro: always use fixed samples per frame --- frontend/libretro.c | 1 + plugins/dfsound/spu.c | 2 +- plugins/dfsound/spu_config.h | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/frontend/libretro.c b/frontend/libretro.c index 867522d1..acc64a12 100644 --- a/frontend/libretro.c +++ b/frontend/libretro.c @@ -1255,6 +1255,7 @@ void retro_init(void) cycle_multiplier = 200; #endif pl_rearmed_cbs.gpu_peops.iUseDither = 1; + spu_config.iUseFixedUpdates = 1; McdDisable[0] = 0; McdDisable[1] = 1; diff --git a/plugins/dfsound/spu.c b/plugins/dfsound/spu.c index 8e41d50f..c6a1bf5e 100644 --- a/plugins/dfsound/spu.c +++ b/plugins/dfsound/spu.c @@ -1253,7 +1253,7 @@ void schedule_next_irq(void) void CALLBACK SPUasync(unsigned int cycle, unsigned int flags) { - do_samples(cycle, 0); + do_samples(cycle, spu_config.iUseFixedUpdates); if (spu.spuCtrl & CTRL_IRQ) schedule_next_irq(); diff --git a/plugins/dfsound/spu_config.h b/plugins/dfsound/spu_config.h index fce1cdaa..3e88a2c2 100644 --- a/plugins/dfsound/spu_config.h +++ b/plugins/dfsound/spu_config.h @@ -8,6 +8,7 @@ typedef struct int iUseInterpolation; int iTempo; int iUseThread; + int iUseFixedUpdates; // output fixed number of samples/frame // status int iThreadAvail; -- 2.39.2