Struct Channel
pub struct Channel(pub i32);
dep_sdl2
only.Expand description
Sound effect channel.
Tuple Fields§
§0: i32
Implementations§
§impl Channel
impl Channel
pub fn set_volume(self, volume: i32) -> i32
pub fn set_volume(self, volume: i32) -> i32
Set the volume for any allocated channel.
pub fn get_volume(self) -> i32
pub fn get_volume(self) -> i32
Returns the channels volume on scale of 0 to 128.
pub fn play(self, chunk: &Chunk, loops: i32) -> Result<Channel, String> ⓘ
pub fn play(self, chunk: &Chunk, loops: i32) -> Result<Channel, String> ⓘ
Play chunk on channel, or if channel is -1, pick the first free unreserved channel.
pub fn play_timed( self, chunk: &Chunk, loops: i32, ticks: i32, ) -> Result<Channel, String> ⓘ
pub fn fade_in(
self,
chunk: &Chunk,
loops: i32,
ms: i32,
) -> Result<Channel, String> ⓘ
pub fn fade_in( self, chunk: &Chunk, loops: i32, ms: i32, ) -> Result<Channel, String> ⓘ
Play chunk on channel, or if channel is -1, pick the first free unreserved channel.
pub fn fade_in_timed( self, chunk: &Chunk, loops: i32, ms: i32, ticks: i32, ) -> Result<Channel, String> ⓘ
pub fn pause(self)
pub fn pause(self)
Pause channel, or all playing channels if -1 is passed in.
pub fn resume(self)
pub fn resume(self)
Unpause channel, or all playing and paused channels if -1 is passed in.
pub fn halt(self)
pub fn halt(self)
Halt channel playback
pub fn fade_out(self, ms: i32) -> i32
pub fn fade_out(self, ms: i32) -> i32
Gradually fade out which channel over ms milliseconds starting from now.
pub fn is_playing(self) -> bool
pub fn is_playing(self) -> bool
if channel is playing, or not.
pub fn get_fading(self) -> Fading
pub fn get_fading(self) -> Fading
if channel is fading in, out, or not
pub fn get_chunk(self) -> Option<Chunk> ⓘ
pub fn get_chunk(self) -> Option<Chunk> ⓘ
Get the most recent sample chunk pointer played on channel.
pub fn unregister_all_effects(self) -> Result<(), String> ⓘ
pub fn unregister_all_effects(self) -> Result<(), String> ⓘ
This removes all effects registered to channel.
pub fn set_panning(self, left: u8, right: u8) -> Result<(), String> ⓘ
pub fn set_panning(self, left: u8, right: u8) -> Result<(), String> ⓘ
Sets a panning effect, where left and right is the volume of the left and right channels. They range from 0 (silence) to 255 (loud).
pub fn unset_panning(self) -> Result<(), String> ⓘ
pub fn unset_panning(self) -> Result<(), String> ⓘ
Unregisters panning effect.
pub fn set_distance(self, distance: u8) -> Result<(), String> ⓘ
pub fn set_distance(self, distance: u8) -> Result<(), String> ⓘ
This effect simulates a simple attenuation of volume due to distance. distance ranges from 0 (close/loud) to 255 (far/quiet).
pub fn unset_distance(self) -> Result<(), String> ⓘ
pub fn unset_distance(self) -> Result<(), String> ⓘ
Unregisters distance effect.
pub fn set_position(self, angle: i16, distance: u8) -> Result<(), String> ⓘ
pub fn set_position(self, angle: i16, distance: u8) -> Result<(), String> ⓘ
This effect emulates a simple 3D audio effect. angle ranges from 0 to 360 degrees going clockwise, where 0 is directly in front. distance ranges from 0 (close/loud) to 255 (far/quiet).
pub fn unset_position(self) -> Result<(), String> ⓘ
pub fn unset_position(self) -> Result<(), String> ⓘ
Unregisters position effect.
Trait Implementations§
impl Copy for Channel
impl StructuralPartialEq for Channel
Auto Trait Implementations§
impl Freeze for Channel
impl RefUnwindSafe for Channel
impl Send for Channel
impl Sync for Channel
impl Unpin for Channel
impl UnwindSafe for Channel
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more