Struct audio_processor_utility::noise::WhiteNoiseProcessor
source · [−]pub struct WhiteNoiseProcessor<SampleType> { /* private fields */ }Expand description
White-noise generator, returns random numbers between -1 and 1 using rand::rngs::SmallRng.
Float type for samples is generic, requires implementations of [num::Float] and
rand::distributions::uniform::SampleUniform
Example
Generating sample by sample see audio_processor_traits::SimpleAudioProcessor:
use audio_processor_traits::SimpleAudioProcessor;
use audio_processor_utility::noise::WhiteNoiseProcessor;
let mut processor = WhiteNoiseProcessor::<f32>::default();
let noise1 = processor.s_process(0.0);
let noise2 = processor.s_process(0.0);
let noise3 = processor.s_process(0.0);Generating buffer by buffer see audio_processor_traits::simple_processor::process_buffer:
use audio_processor_traits::simple_processor::process_buffer;
use audio_processor_traits::VecAudioBuffer;
use audio_processor_utility::noise::WhiteNoiseProcessor;
let mut buffer = VecAudioBuffer::empty_with(2, 1000, 0.0);
let mut processor = WhiteNoiseProcessor::<f32>::default();
process_buffer(&mut processor, &mut buffer);Using as a standalone processor see [audio_processor_standalone]:
use audio_processor_standalone::StandaloneAudioOnlyProcessor;
use audio_processor_traits::BufferProcessor;
use audio_processor_utility::noise::WhiteNoiseProcessor;
let processor = BufferProcessor(WhiteNoiseProcessor::<f32>::default());
let _standalone = StandaloneAudioOnlyProcessor::new(processor, Default::default());
// now call standalone_startTrait Implementations
sourceimpl<SampleType> Default for WhiteNoiseProcessor<SampleType>
impl<SampleType> Default for WhiteNoiseProcessor<SampleType>
sourceimpl<SampleType: Float + SampleUniform> SimpleAudioProcessor for WhiteNoiseProcessor<SampleType>
impl<SampleType: Float + SampleUniform> SimpleAudioProcessor for WhiteNoiseProcessor<SampleType>
type SampleType = SampleType
sourcefn s_process(&mut self, _sample: Self::SampleType) -> Self::SampleType
fn s_process(&mut self, _sample: Self::SampleType) -> Self::SampleType
Process a single sample. If the input is mult-channel, will run for each channel by default.
If the processor is multi-channel, implement s_process_frame instead. Read more
sourcefn s_prepare(&mut self, _settings: AudioProcessorSettings)
fn s_prepare(&mut self, _settings: AudioProcessorSettings)
Prepare for playback based on current audio settings
sourcefn s_process_frame(&mut self, frame: &mut [Self::SampleType])
fn s_process_frame(&mut self, frame: &mut [Self::SampleType])
Process a multi-channel frame. Read more
Auto Trait Implementations
impl<SampleType> RefUnwindSafe for WhiteNoiseProcessor<SampleType>where
SampleType: RefUnwindSafe,
impl<SampleType> Send for WhiteNoiseProcessor<SampleType>where
SampleType: Send,
impl<SampleType> Sync for WhiteNoiseProcessor<SampleType>where
SampleType: Sync,
impl<SampleType> Unpin for WhiteNoiseProcessor<SampleType>where
SampleType: Unpin,
impl<SampleType> UnwindSafe for WhiteNoiseProcessor<SampleType>where
SampleType: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more