X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=vg_audio.h;h=0290e85fb9777a3151239f8eef38d6896997b01c;hb=fce86711735b15bff37de0f70716808410fcf269;hp=5df5638b0b1660a474df3b450e27b6735e03181f;hpb=5cc37bf42297227603b045317af94952fff07bf3;p=vg.git diff --git a/vg_audio.h b/vg_audio.h index 5df5638..0290e85 100644 --- a/vg_audio.h +++ b/vg_audio.h @@ -193,7 +193,7 @@ struct vg_audio_system{ } channels[ AUDIO_CHANNELS ]; - int debug_ui, debug_ui_3d, debug_dsp; + int debug_ui, debug_ui_3d, debug_dsp, dsp_enabled; v3f internal_listener_pos, internal_listener_ears, @@ -206,7 +206,7 @@ struct vg_audio_system{ float internal_global_volume, external_global_volume; } -static vg_audio = { .external_global_volume = 1.0f }; +static vg_audio = { .external_global_volume = 1.0f, .dsp_enabled = 1 }; #include "vg/vg_audio_dsp.h" @@ -307,6 +307,8 @@ static void vg_audio_register(void){ k_var_dtype_f32, VG_VAR_PERSISTENT ); vg_console_reg_var( "vg_audio_device", &vg_audio.device_choice, k_var_dtype_str, VG_VAR_PERSISTENT ); + vg_console_reg_var( "vg_dsp", &vg_audio.dsp_enabled, + k_var_dtype_i32, VG_VAR_PERSISTENT ); } static void vg_audio_init(void){ @@ -978,12 +980,12 @@ static void audio_channel_mix( audio_channel *ch, float *buffer ) vg_profile_end( &_vg_prof_audio_mix ); } -static void audio_mixer_callback( void *user, u8 *stream, int byte_count ) -{ +static void audio_mixer_callback( void *user, u8 *stream, int byte_count ){ /* * Copy data and move edit flags to commit flags * ------------------------------------------------------------- */ audio_lock(); + int use_dsp = vg_audio.dsp_enabled; v3_copy( vg_audio.external_listener_pos, vg_audio.internal_listener_pos ); v3_copy( vg_audio.external_listener_ears, vg_audio.internal_listener_ears ); @@ -1163,12 +1165,12 @@ static void audio_mixer_callback( void *user, u8 *stream, int byte_count ) } } - vg_profile_begin( &_vg_prof_dsp ); - - for( int i=0; i