var searchIndex = {}; searchIndex["sample"] = {"doc":"A crate of fundamentals for audio PCM DSP.","items":[[0,"slice","sample","This module provides various helper functions for performing operations on slices of frames.",null,null],[5,"to_frame_slice","sample::slice","Converts the given slice into a slice of `Frame`s.",null,{"inputs":[{"name":"t"}],"output":{"name":"option"}}],[5,"to_frame_slice_mut","","Converts the given mutable slice into a mutable slice of `Frame`s.",null,{"inputs":[{"name":"t"}],"output":{"name":"option"}}],[5,"to_sample_slice","","Converts the given slice into a slice of `Sample`s.",null,null],[5,"to_sample_slice_mut","","Converts the given mutable slice of `Frame`s into a mutable slice of `Sample`s.",null,null],[5,"from_sample_slice","","Converts the given slice of `Sample`s into some slice `T`.",null,null],[5,"from_sample_slice_mut","","Converts the given mutable slice of `Sample`s into some mutable slice `T`.",null,null],[5,"from_frame_slice","","Converts the given slice of `Frame`s into some slice `T`.",null,null],[5,"from_frame_slice_mut","","Converts the given slice of mutable `Frame`s into some mutable slice `T`.",null,null],[5,"map_in_place","","Mutate every element in the slice with the given function.",null,null],[5,"equilibrium","","Sets the slice of frames at the associated `Sample`'s equilibrium value.",null,null],[5,"zip_map_in_place","","Mutate every frame in slice `a` while reading from each frame in slice `b` in lock-step using\nthe given function.",null,null],[5,"write","","Writes every sample in slice `b` to slice `a`.",null,null],[5,"add_in_place","","Adds every sample in slice `b` to every sample in slice `a` respectively.",null,null],[5,"add_in_place_with_amp_per_channel","","Scale the amplitude of each frame in `b` by `amp_per_channel` before summing it onto `a`.",null,null],[0,"conv","sample","Pure functions and traits for converting between i8, i16, I24, i32, I48, i64, u8, u16, U24,\nu32, U48, u64, f32 and f64.",null,null],[0,"i8","sample::conv","",null,null],[5,"to_i16","sample::conv::i8","",null,{"inputs":[{"name":"i8"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i8"}],"output":{"name":"f64"}}],[0,"i16","sample::conv","",null,null],[5,"to_i8","sample::conv::i16","",null,{"inputs":[{"name":"i16"}],"output":{"name":"i8"}}],[5,"to_i24","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i16"}],"output":{"name":"f64"}}],[0,"i24","sample::conv","",null,null],[5,"to_i8","sample::conv::i24","",null,{"inputs":[{"name":"i24"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"i16"}}],[5,"to_i32","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i24"}],"output":{"name":"f64"}}],[0,"i32","sample::conv","",null,null],[5,"to_i8","sample::conv::i32","",null,{"inputs":[{"name":"i32"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"i24"}}],[5,"to_i48","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i32"}],"output":{"name":"f64"}}],[0,"i48","sample::conv","",null,null],[5,"to_i8","sample::conv::i48","",null,{"inputs":[{"name":"i48"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"i32"}}],[5,"to_i64","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i48"}],"output":{"name":"f64"}}],[0,"i64","sample::conv","",null,null],[5,"to_i8","sample::conv::i64","",null,{"inputs":[{"name":"i64"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"i48"}}],[5,"to_u8","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"i64"}],"output":{"name":"f64"}}],[0,"u8","sample::conv","",null,null],[5,"to_i8","sample::conv::u8","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"i64"}}],[5,"to_u16","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u8"}],"output":{"name":"f64"}}],[0,"u16","sample::conv","",null,null],[5,"to_i8","sample::conv::u16","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"u8"}}],[5,"to_u24","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u16"}],"output":{"name":"f64"}}],[0,"u24","sample::conv","",null,null],[5,"to_i8","sample::conv::u24","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"u16"}}],[5,"to_u32","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u24"}],"output":{"name":"f64"}}],[0,"u32","sample::conv","",null,null],[5,"to_i8","sample::conv::u32","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"u24"}}],[5,"to_u48","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u32"}],"output":{"name":"f64"}}],[0,"u48","sample::conv","",null,null],[5,"to_i8","sample::conv::u48","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"u32"}}],[5,"to_u64","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u48"}],"output":{"name":"f64"}}],[0,"u64","sample::conv","",null,null],[5,"to_i8","sample::conv::u64","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"u48"}}],[5,"to_f32","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"f32"}}],[5,"to_f64","","",null,{"inputs":[{"name":"u64"}],"output":{"name":"f64"}}],[0,"f32","sample::conv","",null,null],[5,"to_i8","sample::conv::f32","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"u64"}}],[5,"to_f64","","",null,{"inputs":[{"name":"f32"}],"output":{"name":"f64"}}],[0,"f64","sample::conv","",null,null],[5,"to_i8","sample::conv::f64","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i8"}}],[5,"to_i16","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i16"}}],[5,"to_i24","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i24"}}],[5,"to_i32","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i32"}}],[5,"to_i48","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i48"}}],[5,"to_i64","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"i64"}}],[5,"to_u8","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u8"}}],[5,"to_u16","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u16"}}],[5,"to_u24","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u24"}}],[5,"to_u32","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u32"}}],[5,"to_u48","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u48"}}],[5,"to_u64","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"u64"}}],[5,"to_f32","","",null,{"inputs":[{"name":"f64"}],"output":{"name":"f32"}}],[8,"FromSample","sample::conv","Similar to the std `From` trait, but specifically for converting between sample types.",null,null],[10,"from_sample_","","",0,{"inputs":[{"name":"s"}],"output":{"name":"self"}}],[8,"ToSample","","Similar to the std `Into` trait, but specifically for converting between sample types.",null,null],[10,"to_sample_","","",1,null],[8,"Duplex","","Sample types which may be converted to and from some type `S`.",null,null],[8,"FromSampleSlice","","For converting from a slice of `Sample`s to a slice of `Frame`s.",null,null],[10,"from_sample_slice","","",2,null],[8,"FromSampleSliceMut","","For converting from a mutable slice of `Sample`s to a mutable slice of `Frame`s.",null,null],[10,"from_sample_slice_mut","","",3,null],[8,"FromFrameSlice","","For converting from a slice of `Frame`s to a slice of `Sample`s.",null,null],[10,"from_frame_slice","","",4,null],[8,"FromFrameSliceMut","","For converting from a slice of `Frame`s to a slice of `Sample`s.",null,null],[10,"from_frame_slice_mut","","",5,null],[8,"ToSampleSlice","","For converting from a slice of `Frame`s to a slice of `Sample`s.",null,null],[10,"to_sample_slice","","",6,null],[8,"ToSampleSliceMut","","For converting from a mutable slice of `Frame`s to a mutable slice of `Sample`s.",null,null],[10,"to_sample_slice_mut","","",7,null],[8,"ToFrameSlice","","For converting from a slice of `Sample`s to a slice of `Frame`s.",null,null],[10,"to_frame_slice","","",8,null],[8,"ToFrameSliceMut","","For converting from a mutable slice of `Sample`s to a mutable slice of `Frame`s.",null,null],[10,"to_frame_slice_mut","","",9,null],[8,"DuplexSampleSlice","","",null,null],[8,"DuplexFrameSlice","","",null,null],[8,"DuplexSlice","","",null,null],[8,"DuplexSampleSliceMut","","",null,null],[8,"DuplexFrameSliceMut","","",null,null],[8,"DuplexSliceMut","","",null,null],[0,"frame","sample","Use the [**Frame**](./trait.Frame.html) trait to remain generic over the number of channels at\na single discrete moment in time.",null,null],[3,"Channels","sample::frame","An iterator that yields the sample for each channel in the frame by value.",null,null],[3,"N1","","A typified version of a number of channels.",null,null],[3,"N2","","A typified version of a number of channels.",null,null],[3,"N3","","A typified version of a number of channels.",null,null],[3,"N4","","A typified version of a number of channels.",null,null],[3,"N5","","A typified version of a number of channels.",null,null],[3,"N6","","A typified version of a number of channels.",null,null],[3,"N7","","A typified version of a number of channels.",null,null],[3,"N8","","A typified version of a number of channels.",null,null],[3,"N9","","A typified version of a number of channels.",null,null],[3,"N10","","A typified version of a number of channels.",null,null],[3,"N11","","A typified version of a number of channels.",null,null],[3,"N12","","A typified version of a number of channels.",null,null],[3,"N13","","A typified version of a number of channels.",null,null],[3,"N14","","A typified version of a number of channels.",null,null],[3,"N15","","A typified version of a number of channels.",null,null],[3,"N16","","A typified version of a number of channels.",null,null],[3,"N17","","A typified version of a number of channels.",null,null],[3,"N18","","A typified version of a number of channels.",null,null],[3,"N19","","A typified version of a number of channels.",null,null],[3,"N20","","A typified version of a number of channels.",null,null],[3,"N21","","A typified version of a number of channels.",null,null],[3,"N22","","A typified version of a number of channels.",null,null],[3,"N23","","A typified version of a number of channels.",null,null],[3,"N24","","A typified version of a number of channels.",null,null],[3,"N25","","A typified version of a number of channels.",null,null],[3,"N26","","A typified version of a number of channels.",null,null],[3,"N27","","A typified version of a number of channels.",null,null],[3,"N28","","A typified version of a number of channels.",null,null],[3,"N29","","A typified version of a number of channels.",null,null],[3,"N30","","A typified version of a number of channels.",null,null],[3,"N31","","A typified version of a number of channels.",null,null],[3,"N32","","A typified version of a number of channels.",null,null],[6,"Mono","","",null,null],[6,"Stereo","","",null,null],[8,"Frame","","Represents one sample from each channel at a single discrete instance in time within a\nPCM signal.",null,null],[16,"Sample","","The type of PCM sample stored at each channel within the frame.",10,null],[16,"NumChannels","","A typified version of a number of channels in the `Frame`, used for safely mapping frames\nof the same length to other `Frame`s, perhaps with a different `Sample` associated type.",10,null],[16,"Channels","","An iterator yielding the sample in each channel, starting from left (channel 0) and ending\nat the right (channel NumChannels-1).",10,null],[10,"equilibrium","","The equilibrium value for the wave that this `Sample` type represents. This is normally the\nvalue that is equal distance from both the min and max ranges of the sample.",10,{"inputs":[],"output":{"name":"self"}}],[10,"from_fn","","Create a new `Frame` where the `Sample` for each channel is produced by the given function.",10,{"inputs":[{"name":"f"}],"output":{"name":"self"}}],[10,"from_samples","","Create a new `Frame` from a borrowed `Iterator` yielding samples for each channel.",10,{"inputs":[{"name":"i"}],"output":{"name":"option"}}],[10,"n_channels","","The total number of channels (and in turn samples) stored within the frame.",10,{"inputs":[],"output":{"name":"usize"}}],[10,"channels","","Converts the frame into an iterator yielding the sample for each channel in the frame.",10,null],[10,"channel","","Yields a reference to the `Sample` of the channel at the given index if there is one.",10,null],[10,"channel_unchecked","","Returns a pointer to the sample of the channel at the given index, without doing bounds\nchecking.",10,null],[10,"map","","Applies the given function to each sample in the `Frame` in channel order and returns the\nresult as a new `Frame`.",10,null],[10,"zip_map","","Calls the given function with the pair of elements at every index and returns the\nresulting Frame.",10,null],[11,"offset_amp","","Offsets the amplitude of every channel in the frame by the given `offset` and yields the\nresulting frame.",10,null],[11,"scale_amp","","Multiplies each `Sample` in the `Frame` by the given amplitude and returns the resulting\n`Frame`.",10,null],[11,"add_amp","","Sums each channel in `other` with each channel in `self` and returns the resulting `Frame`.",10,null],[11,"mul_amp","","Multiplies `other` with `self` and returns the resulting `Frame`.",10,null],[8,"NumChannels","","Restricts the types that may be used as the `Frame::NumChannels` associated type.",null,null],[11,"clone","","",11,null],[11,"next","","",11,null],[11,"len","","",11,null],[0,"signal","sample","Use the [**Signal** trait](./trait.Signal.html) for working with **Iterator**s that yield\n**Frame**s. To complement the **Iterator** trait, **Signal** provides methods for adding,\nscaling, offsetting, multiplying, clipping and generating frame iterators and more.",null,null],[3,"Equilibrium","sample::signal","An iterator that endlessly yields `Frame`s of type `F` at equilibrium.",null,null],[3,"Gen","","A signal that generates frames using the given function.",null,null],[3,"GenMut","","A signal that generates frames using the given function which may mutate some state.",null,null],[3,"FromInterleavedSamples","","An iterator that converts an iterator of `Sample`s to an iterator of `Frame`s.",null,null],[3,"Rate","","The rate at which phrase a **Signal** is sampled.",null,null],[3,"ConstHz","","A constant phase step size.",null,null],[3,"Hz","","An iterator that yields the step size for a phase.",null,null],[3,"Phase","","An iterator that yields a phase, useful for waveforms like Sine or Saw.",null,null],[3,"Sine","","A sine wave signal generator.",null,null],[3,"Saw","","A saw wave signal generator.",null,null],[3,"Square","","A square wave signal generator.",null,null],[3,"Noise","","A noise signal generator.",null,null],[3,"NoiseSimplex","","A 1D simplex-noise generator.",null,null],[3,"AddAmp","","An iterator that yields the sum of the frames yielded by both `other` and `self` in lock-step.",null,null],[3,"MulAmp","","An iterator that yields the product of the frames yielded by both `other` and `self` in\nlock-step.",null,null],[3,"OffsetAmp","","Provides an iterator that offsets the amplitude of every channel in each frame of the\nsignal by some sample value and yields the resulting frames.",null,null],[3,"ScaleAmp","","An `Iterator` that scales the amplitude of the sample of each channel in every `Frame` yielded\nby `self` by the given amplitude.",null,null],[3,"OffsetAmpPerChannel","","An `Iterator` that scales the amplitude of every `Frame` in `self` by the respective amplitudes\nin each channel of the given `amp` `Frame`.",null,null],[3,"ScaleAmpPerChannel","","An `Iterator` that scales the amplitude of every `Frame` in `self` by the respective amplitudes\nin each channel of the given `amp` `Frame`.",null,null],[3,"MulHz","","Multiplies the rate at which frames of `self` are yielded by the given `signal`.",null,null],[3,"Delay","","Delays the `signal` by the given number of frames.",null,null],[3,"ToSamples","","Converts a `Signal` to an `Iterator` yielding `Sample`s of the signal.",null,null],[3,"ClipAmp","","Clips samples in each frame yielded by `signal` to the given threshhold amplitude.",null,null],[3,"Bus","","A type which allows for `send`ing a single `Signal` to multiple outputs.",null,null],[3,"Output","","An output node to which some signal `S` is `Output`ing its frames.",null,null],[5,"equilibrium","","Provides an iterator that endlessly yields `Frame`s of type `F` at equilibrium.",null,{"inputs":[],"output":{"name":"equilibrium"}}],[5,"gen","","A signal that generates frames using the given function.",null,{"inputs":[{"name":"g"}],"output":{"name":"gen"}}],[5,"gen_mut","","A signal that generates frames using the given function which may mutate some state.",null,{"inputs":[{"name":"g"}],"output":{"name":"genmut"}}],[5,"from_interleaved_samples","","An iterator that converts the given `Iterator` yielding `Sample`s to a `Signal` yielding frames\nof type `F`.",null,{"inputs":[{"name":"i"}],"output":{"name":"frominterleavedsamples"}}],[5,"phase","","Creates a `Phase` that continuously steps forward by the given `step` size yielder.",null,{"inputs":[{"name":"s"}],"output":{"name":"phase"}}],[5,"rate","","Creates a frame `Rate` (aka sample rate) representing the rate at which a signal may be\nsampled.",null,{"inputs":[{"name":"f64"}],"output":{"name":"rate"}}],[5,"sine","","Produces a `Signal` that yields a sine wave oscillating at the given hz.",null,{"inputs":[{"name":"phase"}],"output":{"name":"sine"}}],[5,"saw","","Produces a `Signal` that yields a saw wave oscillating at the given hz.",null,{"inputs":[{"name":"phase"}],"output":{"name":"saw"}}],[5,"square","","Produces a `Signal` that yields a square wave oscillating at the given hz.",null,{"inputs":[{"name":"phase"}],"output":{"name":"square"}}],[5,"noise","","Produces a `Signal` that yields random values between -1.0..1.0.",null,{"inputs":[{"name":"u64"}],"output":{"name":"noise"}}],[5,"noise_simplex","","Produces a 1-dimensional simplex noise `Signal`.",null,{"inputs":[{"name":"phase"}],"output":{"name":"noisesimplex"}}],[8,"Signal","","A trait that allows us to treat `Iterator`s that yield `Frame`s as a multi-channel PCM signal.",null,null],[11,"add_amp","","Provides an iterator that yields the sum of the frames yielded by both `other` and `self`\nin lock-step.",12,null],[11,"mul_amp","","Provides an iterator that yields the product of the frames yielded by both `other` and\n`self` in lock-step.",12,null],[11,"offset_amp","","Provides an iterator that offsets the amplitude of every channel in each frame of the\nsignal by some sample value and yields the resulting frames.",12,null],[11,"scale_amp","","Produces an `Iterator` that scales the amplitude of the sample of each channel in every\n`Frame` yielded by `self` by the given amplitude.",12,null],[11,"offset_amp_per_channel","","Produces an `Iterator` that offsets the amplitude of every `Frame` in `self` by the\nrespective amplitudes in each channel of the given `amp_frame`.",12,null],[11,"scale_amp_per_channel","","Produces an `Iterator` that scales the amplitude of every `Frame` in `self` by the\nrespective amplitudes in each channel of the given `amp_frame`.",12,null],[11,"mul_hz","","Multiplies the rate at which frames of `self` are yielded by the given `signal`.",12,null],[11,"from_hz_to_hz","","Converts the rate at which frames of the `Signal` are yielded using interpolation.",12,null],[11,"scale_hz","","Multiplies the rate at which frames of the `Signal` are yielded by the given value.",12,null],[11,"delay","","Delays the `Signal` by the given number of frames.",12,null],[11,"to_samples","","Converts a `Iterator` yielding `Frame`s into an `Iterator` yielding `Sample`s.",12,null],[11,"clip_amp","","Clips the amplitude of each channel in each `Frame` yielded by `self` to the given\nthreshold amplitude.",12,null],[11,"bus","","Moves the `Signal` into a `Bus` from which its output may be divided into multiple other\n`Signal`s in the form of `Output`s.",12,null],[8,"Step","","Types that may be used to give a phase step size based on some `hz / sample rate`.",null,null],[10,"step","","Yield the phase step size (normally `hz / sampling rate`).",13,null],[11,"clone","","",14,null],[11,"clone","","",15,null],[11,"clone","","",16,null],[11,"clone","","",17,null],[11,"eq","","",18,null],[11,"ne","","",18,null],[11,"fmt","","",18,null],[11,"clone","","",18,null],[11,"clone","","",19,null],[11,"clone","","",20,null],[11,"clone","","",21,null],[11,"clone","","",22,null],[11,"clone","","",23,null],[11,"clone","","",24,null],[11,"clone","","",25,null],[11,"clone","","",26,null],[11,"clone","","",27,null],[11,"clone","","",28,null],[11,"clone","","",29,null],[11,"clone","","",30,null],[11,"clone","","",31,null],[11,"clone","","",32,null],[11,"clone","","",33,null],[11,"clone","","",34,null],[11,"clone","","",35,null],[11,"next","","",14,null],[11,"next_back","","",14,null],[11,"next","","",15,null],[11,"next","","",16,null],[11,"next","","",17,null],[11,"const_hz","","Create a `ConstHz` iterator which consistently yields "hz / rate".",18,null],[11,"hz","","Create a variable `hz` some iterator that yields hz and an initial hz.",18,null],[11,"phase","","Construct a `Phase` iterator that, for every `hz` yielded by `self`, yields a phase that is\nstepped by `hz / self.rate.hz`.",20,null],[11,"sine","","A composable alternative to the `signal::sine` function.",20,null],[11,"saw","","A composable alternative to the `signal::saw` function.",20,null],[11,"square","","A composable alternative to the `signal::square` function.",20,null],[11,"noise_simplex","","A composable alternative to the `signal::noise_simplex` function.",20,null],[11,"phase","","Construct a `Phase` iterator that is incremented via the constant step size, `self.step`.",19,null],[11,"sine","","A composable alternative to the `signal::sine` function.",19,null],[11,"saw","","A composable alternative to the `signal::saw` function.",19,null],[11,"square","","A composable alternative to the `signal::square` function.",19,null],[11,"noise_simplex","","A composable alternative to the `signal::noise_simplex` function.",19,null],[11,"step","","",19,null],[11,"step","","",20,null],[11,"next_phase_wrapped_to","","Before yielding the current phase, the internal phase is stepped forward and wrapped via\nthe given value.",21,null],[11,"next_phase","","Calls `next_phase_wrapped_to`, with a wrapping value of `1.0`.",21,null],[11,"sine","","A composable version of the `signal::sine` function.",21,null],[11,"saw","","A composable version of the `signal::saw` function.",21,null],[11,"square","","A composable version of the `signal::square` function.",21,null],[11,"noise_simplex","","A composable version of the `signal::noise_simplex` function.",21,null],[11,"next","","",20,null],[11,"next","","",19,null],[11,"next","","",21,null],[11,"next","","",22,null],[11,"next","","",23,null],[11,"next","","",24,null],[11,"next_sample","","",25,null],[11,"next","","",25,null],[11,"next_sample","","",26,null],[11,"next","","",26,null],[11,"next","","",27,null],[11,"size_hint","","",27,null],[11,"len","","",27,null],[11,"next","","",28,null],[11,"size_hint","","",28,null],[11,"len","","",28,null],[11,"next","","",30,null],[11,"size_hint","","",30,null],[11,"len","","",30,null],[11,"next","","",32,null],[11,"size_hint","","",32,null],[11,"len","","",32,null],[11,"next","","",29,null],[11,"size_hint","","",29,null],[11,"len","","",29,null],[11,"next","","",31,null],[11,"size_hint","","",31,null],[11,"len","","",31,null],[11,"next","","",33,null],[11,"size_hint","","",33,null],[11,"next","","",34,null],[11,"size_hint","","",34,null],[11,"len","","",34,null],[11,"next","","",36,null],[11,"size_hint","","",36,null],[11,"clone","","",36,null],[11,"len","","",36,null],[11,"next","","",35,null],[11,"send","","Produce a new Output node to which the signal `S` will output its frames.",37,null],[11,"next","","",38,null],[11,"size_hint","","",38,null],[0,"rate","sample","The **rate** module provides a [**Converter** type](./struct.Converter.html), for converting\nand interpolating the rate of **Signal**s. This can be useful for both sample rate conversion\nand playback rate multiplication.",null,null],[3,"Converter","sample::rate","An iterator that converts the rate at which frames are yielded from some given frame Iterator\nvia some given ratio.",null,null],[11,"clone","","",39,null],[11,"from_hz_to_hz","","Construct a new `Converter` from the source frames and the source and target sample rates\n(in Hz).",39,{"inputs":[{"name":"i"},{"name":"f64"},{"name":"f64"}],"output":{"name":"self"}}],[11,"scale_hz","","Construct a new `Converter` from the source frames and the amount by which the current\nplayback rate (not sample rate) should be multiplied to reach the new playback rate.",39,{"inputs":[{"name":"i"},{"name":"f64"}],"output":{"name":"self"}}],[11,"set_source_and_target_hz","","Update the `source_to_target_ratio` internally given the source and target hz.",39,null],[11,"set_rate_multiplier","","Update the `source_to_target_ratio` internally given a new rate multiplier.",39,null],[11,"set_source_to_target_ratio","","Update the `source_to_target_ratio`.",39,null],[11,"next_frame","","Yields the next interpolated target frame.",39,null],[11,"next","","",39,null],[11,"size_hint","","",39,null],[0,"types","sample","A collection of custom, non-std **Sample** types.",null,null],[0,"i11","sample::types","",null,null],[3,"I11","sample::types::i11","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",40,{"inputs":[],"output":{"name":"i11"}}],[11,"cmp","","",40,null],[11,"partial_cmp","","",40,null],[11,"lt","","",40,null],[11,"le","","",40,null],[11,"gt","","",40,null],[11,"ge","","",40,null],[11,"eq","","",40,null],[11,"ne","","",40,null],[11,"fmt","","",40,null],[11,"clone","","",40,null],[11,"from","","",40,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",40,{"inputs":[{"name":"i16"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",40,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",40,null],[11,"add","","",40,null],[11,"sub","","",40,null],[11,"mul","","",40,null],[11,"div","","",40,null],[11,"not","","",40,null],[11,"rem","","",40,null],[11,"shl","","",40,null],[11,"shr","","",40,null],[11,"bitand","","",40,null],[11,"bitor","","",40,null],[11,"bitxor","","",40,null],[11,"from","","",40,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from","","",40,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"neg","","",40,null],[0,"u11","sample::types","",null,null],[3,"U11","sample::types::u11","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",41,{"inputs":[],"output":{"name":"u11"}}],[11,"cmp","","",41,null],[11,"partial_cmp","","",41,null],[11,"lt","","",41,null],[11,"le","","",41,null],[11,"gt","","",41,null],[11,"ge","","",41,null],[11,"eq","","",41,null],[11,"ne","","",41,null],[11,"fmt","","",41,null],[11,"clone","","",41,null],[11,"from","","",41,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",41,{"inputs":[{"name":"i16"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",41,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",41,null],[11,"add","","",41,null],[11,"sub","","",41,null],[11,"mul","","",41,null],[11,"div","","",41,null],[11,"not","","",41,null],[11,"rem","","",41,null],[11,"shl","","",41,null],[11,"shr","","",41,null],[11,"bitand","","",41,null],[11,"bitor","","",41,null],[11,"bitxor","","",41,null],[11,"from","","",41,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"neg","","",41,null],[0,"i20","sample::types","",null,null],[3,"I20","sample::types::i20","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",42,{"inputs":[],"output":{"name":"i20"}}],[11,"cmp","","",42,null],[11,"partial_cmp","","",42,null],[11,"lt","","",42,null],[11,"le","","",42,null],[11,"gt","","",42,null],[11,"ge","","",42,null],[11,"eq","","",42,null],[11,"ne","","",42,null],[11,"fmt","","",42,null],[11,"clone","","",42,null],[11,"from","","",42,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",42,{"inputs":[{"name":"i32"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",42,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",42,null],[11,"add","","",42,null],[11,"sub","","",42,null],[11,"mul","","",42,null],[11,"div","","",42,null],[11,"not","","",42,null],[11,"rem","","",42,null],[11,"shl","","",42,null],[11,"shr","","",42,null],[11,"bitand","","",42,null],[11,"bitor","","",42,null],[11,"bitxor","","",42,null],[11,"from","","",42,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from","","",42,{"inputs":[{"name":"i11"}],"output":{"name":"self"}}],[11,"from","","",42,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from","","",42,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",42,{"inputs":[{"name":"u11"}],"output":{"name":"self"}}],[11,"from","","",42,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[0,"u20","sample::types","",null,null],[3,"U20","sample::types::u20","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",43,{"inputs":[],"output":{"name":"u20"}}],[11,"cmp","","",43,null],[11,"partial_cmp","","",43,null],[11,"lt","","",43,null],[11,"le","","",43,null],[11,"gt","","",43,null],[11,"ge","","",43,null],[11,"eq","","",43,null],[11,"ne","","",43,null],[11,"fmt","","",43,null],[11,"clone","","",43,null],[11,"from","","",43,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",43,{"inputs":[{"name":"i32"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",43,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",43,null],[11,"add","","",43,null],[11,"sub","","",43,null],[11,"mul","","",43,null],[11,"div","","",43,null],[11,"not","","",43,null],[11,"rem","","",43,null],[11,"shl","","",43,null],[11,"shr","","",43,null],[11,"bitand","","",43,null],[11,"bitor","","",43,null],[11,"bitxor","","",43,null],[11,"from","","",43,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[0,"i24","sample::types","",null,null],[3,"I24","sample::types::i24","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",44,{"inputs":[],"output":{"name":"i24"}}],[11,"cmp","","",44,null],[11,"partial_cmp","","",44,null],[11,"lt","","",44,null],[11,"le","","",44,null],[11,"gt","","",44,null],[11,"ge","","",44,null],[11,"eq","","",44,null],[11,"ne","","",44,null],[11,"fmt","","",44,null],[11,"clone","","",44,null],[11,"from","","",44,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",44,{"inputs":[{"name":"i32"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",44,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",44,null],[11,"add","","",44,null],[11,"sub","","",44,null],[11,"mul","","",44,null],[11,"div","","",44,null],[11,"not","","",44,null],[11,"rem","","",44,null],[11,"shl","","",44,null],[11,"shr","","",44,null],[11,"bitand","","",44,null],[11,"bitor","","",44,null],[11,"bitxor","","",44,null],[11,"from","","",44,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from","","",44,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from","","",44,{"inputs":[{"name":"i20"}],"output":{"name":"self"}}],[11,"from","","",44,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",44,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from","","",44,{"inputs":[{"name":"u20"}],"output":{"name":"self"}}],[11,"neg","","",44,null],[0,"u24","sample::types","",null,null],[3,"U24","sample::types::u24","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",45,{"inputs":[],"output":{"name":"u24"}}],[11,"cmp","","",45,null],[11,"partial_cmp","","",45,null],[11,"lt","","",45,null],[11,"le","","",45,null],[11,"gt","","",45,null],[11,"ge","","",45,null],[11,"eq","","",45,null],[11,"ne","","",45,null],[11,"fmt","","",45,null],[11,"clone","","",45,null],[11,"from","","",45,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",45,{"inputs":[{"name":"i32"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",45,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",45,null],[11,"add","","",45,null],[11,"sub","","",45,null],[11,"mul","","",45,null],[11,"div","","",45,null],[11,"not","","",45,null],[11,"rem","","",45,null],[11,"shl","","",45,null],[11,"shr","","",45,null],[11,"bitand","","",45,null],[11,"bitor","","",45,null],[11,"bitxor","","",45,null],[11,"from","","",45,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",45,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from","","",45,{"inputs":[{"name":"u20"}],"output":{"name":"self"}}],[0,"i48","sample::types","",null,null],[3,"I48","sample::types::i48","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",46,{"inputs":[],"output":{"name":"i48"}}],[11,"cmp","","",46,null],[11,"partial_cmp","","",46,null],[11,"lt","","",46,null],[11,"le","","",46,null],[11,"gt","","",46,null],[11,"ge","","",46,null],[11,"eq","","",46,null],[11,"ne","","",46,null],[11,"fmt","","",46,null],[11,"clone","","",46,null],[11,"from","","",46,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",46,{"inputs":[{"name":"i64"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",46,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",46,null],[11,"add","","",46,null],[11,"sub","","",46,null],[11,"mul","","",46,null],[11,"div","","",46,null],[11,"not","","",46,null],[11,"rem","","",46,null],[11,"shl","","",46,null],[11,"shr","","",46,null],[11,"bitand","","",46,null],[11,"bitor","","",46,null],[11,"bitxor","","",46,null],[11,"from","","",46,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"i20"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"i24"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"u20"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"u24"}],"output":{"name":"self"}}],[11,"from","","",46,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[11,"neg","","",46,null],[0,"u48","sample::types","",null,null],[3,"U48","sample::types::u48","",null,null],[17,"MIN","","",null,null],[17,"MAX","","",null,null],[17,"EQUILIBRIUM","","",null,null],[11,"default","","",47,{"inputs":[],"output":{"name":"u48"}}],[11,"cmp","","",47,null],[11,"partial_cmp","","",47,null],[11,"lt","","",47,null],[11,"le","","",47,null],[11,"gt","","",47,null],[11,"ge","","",47,null],[11,"eq","","",47,null],[11,"ne","","",47,null],[11,"fmt","","",47,null],[11,"clone","","",47,null],[11,"from","","",47,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"new","","Construct a new sample if the given value is within range.",47,{"inputs":[{"name":"i64"}],"output":{"name":"option"}}],[11,"new_unchecked","","Constructs a new sample without checking for overflowing.",47,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"inner","","Return the internal value used to represent the sample type.",47,null],[11,"add","","",47,null],[11,"sub","","",47,null],[11,"mul","","",47,null],[11,"div","","",47,null],[11,"not","","",47,null],[11,"rem","","",47,null],[11,"shl","","",47,null],[11,"shr","","",47,null],[11,"bitand","","",47,null],[11,"bitor","","",47,null],[11,"bitxor","","",47,null],[11,"from","","",47,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from","","",47,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from","","",47,{"inputs":[{"name":"u20"}],"output":{"name":"self"}}],[11,"from","","",47,{"inputs":[{"name":"u24"}],"output":{"name":"self"}}],[11,"from","","",47,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[8,"Sample","sample","A trait for working generically across different **Sample** format types.",null,null],[16,"Signed","","When summing two samples of a signal together, it is necessary for both samples to be\nrepresented in some signed format. This associated `Addition` type represents the format to\nwhich `Self` should be converted for optimal `Addition` performance.",48,null],[16,"Float","","When multiplying two samples of a signal together, it is necessary for both samples to be\nrepresented in some signed, floating-point format. This associated `Multiplication` type\nrepresents the format to which `Self` should be converted for optimal `Multiplication`\nperformance.",48,null],[10,"equilibrium","","The equilibrium value for the wave that this `Sample` type represents. This is normally the\nvalue that is equal distance from both the min and max ranges of the sample.",48,{"inputs":[],"output":{"name":"self"}}],[11,"to_sample","","Convert `self` to any type that implements `FromSample<Self>`.",48,null],[11,"from_sample","","Create a `Self` from any type that implements `ToSample<Self>`.\n# Example",48,{"inputs":[{"name":"s"}],"output":{"name":"self"}}],[11,"add_amp","","Adds (or "offsets") the amplitude of the `Sample` by the given signed amplitude.",48,null],[11,"mul_amp","","Multiplies (or "scales") the amplitude of the `Sample` by the given float amplitude.",48,null],[8,"SignedSample","","Integral and floating-point **Sample** format types whose equilibrium is at 0.",null,null],[8,"FloatSample","","Sample format types represented as floating point numbers.",null,null],[11,"equilibrium","sample::types::i24","",44,{"inputs":[],"output":{"name":"self"}}],[11,"equilibrium","sample::types::i48","",46,{"inputs":[],"output":{"name":"self"}}],[11,"equilibrium","sample::types::u24","",45,{"inputs":[],"output":{"name":"self"}}],[11,"equilibrium","sample::types::u48","",47,{"inputs":[],"output":{"name":"self"}}],[11,"from_sample_","sample::types::i24","",44,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"i48"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u24"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u48"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"u64"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"f32"}],"output":{"name":"self"}}],[11,"from_sample_","","",44,{"inputs":[{"name":"f64"}],"output":{"name":"self"}}],[11,"from_sample_","sample::types::i48","",46,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"i24"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u24"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u48"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"u64"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"f32"}],"output":{"name":"self"}}],[11,"from_sample_","","",46,{"inputs":[{"name":"f64"}],"output":{"name":"self"}}],[11,"from_sample_","sample::types::u24","",45,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"i24"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"i48"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"u48"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"u64"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"f32"}],"output":{"name":"self"}}],[11,"from_sample_","","",45,{"inputs":[{"name":"f64"}],"output":{"name":"self"}}],[11,"from_sample_","sample::types::u48","",47,{"inputs":[{"name":"i8"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"i16"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"i24"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"i32"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"i48"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"i64"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"u8"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"u16"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"u24"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"u32"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"u64"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"f32"}],"output":{"name":"self"}}],[11,"from_sample_","","",47,{"inputs":[{"name":"f64"}],"output":{"name":"self"}}]],"paths":[[8,"FromSample"],[8,"ToSample"],[8,"FromSampleSlice"],[8,"FromSampleSliceMut"],[8,"FromFrameSlice"],[8,"FromFrameSliceMut"],[8,"ToSampleSlice"],[8,"ToSampleSliceMut"],[8,"ToFrameSlice"],[8,"ToFrameSliceMut"],[8,"Frame"],[3,"Channels"],[8,"Signal"],[8,"Step"],[3,"Equilibrium"],[3,"Gen"],[3,"GenMut"],[3,"FromInterleavedSamples"],[3,"Rate"],[3,"ConstHz"],[3,"Hz"],[3,"Phase"],[3,"Sine"],[3,"Saw"],[3,"Square"],[3,"Noise"],[3,"NoiseSimplex"],[3,"AddAmp"],[3,"MulAmp"],[3,"OffsetAmp"],[3,"ScaleAmp"],[3,"OffsetAmpPerChannel"],[3,"ScaleAmpPerChannel"],[3,"MulHz"],[3,"Delay"],[3,"ClipAmp"],[3,"ToSamples"],[3,"Bus"],[3,"Output"],[3,"Converter"],[3,"I11"],[3,"U11"],[3,"I20"],[3,"U20"],[3,"I24"],[3,"U24"],[3,"I48"],[3,"U48"],[8,"Sample"]]}; initSearch(searchIndex);