}
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,
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"
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){
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 );
}
}
- vg_profile_begin( &_vg_prof_dsp );
-
- for( int i=0; i<frame_count; i++ )
- vg_dsp_process( pOut32F + i*2, pOut32F + i*2 );
-
- vg_profile_end( &_vg_prof_dsp );
+ if( use_dsp ){
+ vg_profile_begin( &_vg_prof_dsp );
+ for( int i=0; i<frame_count; i++ )
+ vg_dsp_process( pOut32F + i*2, pOut32F + i*2 );
+ vg_profile_end( &_vg_prof_dsp );
+ }
audio_lock();