Struct AdvancedSettings

Source
pub struct AdvancedSettings {
Show 26 fields pub max_MPEG_codecs: i32, pub max_ADPCM_codecs: i32, pub max_XMA_codecs: i32, pub max_CELT_codecs: i32, pub max_VORBIS_codecs: i32, pub max_AT9_codecs: i32, pub max_PCM_codecs: i32, pub ASIO_num_channels: i32, pub ASIO_channel_list: Vec<String>, pub ASIO_speaker_list: Vec<Speaker>, pub max_3D_reverb_DSPs: i32, pub HRTF_min_angle: f32, pub HRTF_max_angle: f32, pub HRTF_freq: f32, pub vol0_virtual_vol: f32, pub event_queue_size: i32, pub default_decode_buffer_size: u32, pub debug_log_filename: String, pub profile_port: u16, pub geometry_max_fade_time: u32, pub max_spectrum_wave_data_buffers: u32, pub music_system_cache_delay: u32, pub distance_filter_center_freq: f32, pub stack_size_stream: u32, pub stack_size_non_blocking: u32, pub stack_size_mixer: u32,
}
Expand description

Settings for advanced features like configuring memory and cpu usage for the FMOD_CREATECOMPRESSEDSAMPLE feature.

Fields§

§max_MPEG_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. Mpeg codecs consume 21,684 bytes per instance and this number will determine how many mpeg channels can be played simultaneously. Default = 32.

§max_ADPCM_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. ADPCM codecs consume 2,136 bytes per instance and this number will determine how many ADPCM channels can be played simultaneously. Default = 32.

§max_XMA_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. XMA codecs consume 14,836 bytes per instance and this number will determine how many XMA channels can be played simultaneously. Default = 32.

§max_CELT_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. CELT codecs consume 11,500 bytes per instance and this number will determine how many CELT channels can be played simultaneously. Default = 32.

§max_VORBIS_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. Vorbis codecs consume 12,000 bytes per instance and this number will determine how many Vorbis channels can be played simultaneously. Default = 32.

§max_AT9_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_CREATECOMPRESSEDSAMPLE only. AT9 codecs consume 8,720 bytes per instance and this number will determine how many AT9 channels can be played simultaneously. Default = 32.

§max_PCM_codecs: i32

[r/w] Optional. Specify 0 to ignore. For use with PS3 only. PCM codecs consume 12,672 bytes per instance and this number will determine how many streams and PCM voices can be played simultaneously. Default = 16.

§ASIO_num_channels: i32

[r/w] Optional. Specify 0 to ignore. Number of channels available on the ASIO device.

§ASIO_channel_list: Vec<String>

[r/w] Optional. Specify 0 to ignore. Pointer to an array of strings (number of entries defined by ASIONumChannels) with ASIO channel names.

§ASIO_speaker_list: Vec<Speaker>

[r/w] Optional. Specify 0 to ignore. Pointer to a list of speakers that the ASIO channels map to. This can be called after Sys::init to remap ASIO output.

§max_3D_reverb_DSPs: i32

[r/w] Optional. Specify 0 to ignore. The max number of 3d reverb DSP’s in the system. (NOTE: CURRENTLY DISABLED / UNUSED)

§HRTF_min_angle: f32

[r/w] Optional. For use with FMOD_INIT_HRTF_LOWPASS. The angle range (0-360) of a 3D sound in relation to the listener, at which the HRTF function begins to have an effect. 0 = in front of the listener. 180 = from 90 degrees to the left of the listener to 90 degrees to the right. 360 = behind the listener. Default = 180.0.

§HRTF_max_angle: f32

[r/w] Optional. For use with FMOD_INIT_HRTF_LOWPASS. The angle range (0-360) of a 3D sound in relation to the listener, at which the HRTF function has maximum effect. 0 = front of the listener. 180 = from 90 degrees to the left of the listener to 90 degrees to the right. 360 = behind the listener. Default = 360.0.

§HRTF_freq: f32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_INIT_HRTF_LOWPASS. The cutoff frequency of the HRTF’s lowpass filter function when at maximum effect. (i.e. at HRTFMaxAngle). Default = 4000.0.

§vol0_virtual_vol: f32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_INIT_VOL0_BECOMES_VIRTUAL. If this flag is used, and the volume is 0.0, then the sound will become virtual. Use this value to raise the threshold to a different point where a sound goes virtual.

§event_queue_size: i32

[r/w] Optional. Specify 0 to ignore. For use with FMOD Event system only. Specifies the number of slots available for simultaneous non blocking loads, across all threads. Default = 32.

§default_decode_buffer_size: u32

[r/w] Optional. Specify 0 to ignore. For streams. This determines the default size of the double buffer (in milliseconds) that a stream uses. Default = 400ms

§debug_log_filename: String

[r/w] Optional. Specify 0 to ignore. Gives fmod’s logging system a path/filename. Normally the log is placed in the same directory as the executable and called fmod.log. When using Sys::get_advanced_settings, provide at least 256 bytes of memory to copy into.

§profile_port: u16

[r/w] Optional. Specify 0 to ignore. For use with FMOD_INIT_ENABLE_PROFILE. Specify the port to listen on for connections by the profiler application.

§geometry_max_fade_time: u32

[r/w] Optional. Specify 0 to ignore. The maximum time in miliseconds it takes for a channel to fade to the new level when its occlusion changes.

§max_spectrum_wave_data_buffers: u32

[r/w] Optional. Specify 0 to ignore. Tells Sys::init to allocate a pool of wavedata/spectrum buffers to prevent memory fragmentation, any additional buffers will be allocated normally.

§music_system_cache_delay: u32

[r/w] Optional. Specify 0 to ignore. The delay the music system should allow for loading a sample from disk (in milliseconds). Default = 400 ms.

§distance_filter_center_freq: f32

[r/w] Optional. Specify 0 to ignore. For use with FMOD_INIT_DISTANCE_FILTERING. The default center frequency in Hz for the distance filtering effect. Default = 1500.0.

§stack_size_stream: u32

[r/w] Optional. Specify 0 to ignore. Specify the stack size for the FMOD Stream thread in bytes. Useful for custom codecs that use excess stack. Default 49,152 (48kb)

§stack_size_non_blocking: u32

[r/w] Optional. Specify 0 to ignore. Specify the stack size for the FMOD_NONBLOCKING loading thread. Useful for custom codecs that use excess stack. Default 65,536 (64kb)

§stack_size_mixer: u32

[r/w] Optional. Specify 0 to ignore. Specify the stack size for the FMOD mixer thread. Useful for custom dsps that use excess stack. Default 49,152 (48kb)

Trait Implementations§

Source§

impl Default for AdvancedSettings

Source§

fn default() -> AdvancedSettings

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.