pub struct AudioController { /* private fields */ }Implementations§
Source§impl AudioController
impl AudioController
Sourcepub unsafe fn init(coinit_mode: Option<CoinitMode>) -> Self
pub unsafe fn init(coinit_mode: Option<CoinitMode>) -> Self
Examples found in repository?
More examples
examples/listen.rs (line 18)
16fn main() {
17 unsafe {
18 let mut controller = AudioController::init(None);
19 controller.GetSessions();
20 controller.GetDefaultAudioEnpointVolumeControl();
21 controller.GetAllProcessSessions();
22
23 let session = controller.get_session_by_name("master".to_string()).unwrap();
24
25 if let Some(session_endpoint_volume) = session.getAudioEndpointVolume() {
26 let volume_callback: IAudioEndpointVolumeCallback = VolumeChangeCallback {}.into();
27 session_endpoint_volume.RegisterControlChangeNotify(&volume_callback).unwrap();
28 println!("Initialised audio event listener for session 'master'");
29 loop {};
30 }
31 }
32}Sourcepub unsafe fn GetSessions(&mut self)
pub unsafe fn GetSessions(&mut self)
Examples found in repository?
More examples
examples/listen.rs (line 19)
16fn main() {
17 unsafe {
18 let mut controller = AudioController::init(None);
19 controller.GetSessions();
20 controller.GetDefaultAudioEnpointVolumeControl();
21 controller.GetAllProcessSessions();
22
23 let session = controller.get_session_by_name("master".to_string()).unwrap();
24
25 if let Some(session_endpoint_volume) = session.getAudioEndpointVolume() {
26 let volume_callback: IAudioEndpointVolumeCallback = VolumeChangeCallback {}.into();
27 session_endpoint_volume.RegisterControlChangeNotify(&volume_callback).unwrap();
28 println!("Initialised audio event listener for session 'master'");
29 loop {};
30 }
31 }
32}Sourcepub unsafe fn GetDefaultAudioEnpointVolumeControl(&mut self)
pub unsafe fn GetDefaultAudioEnpointVolumeControl(&mut self)
Examples found in repository?
More examples
examples/listen.rs (line 20)
16fn main() {
17 unsafe {
18 let mut controller = AudioController::init(None);
19 controller.GetSessions();
20 controller.GetDefaultAudioEnpointVolumeControl();
21 controller.GetAllProcessSessions();
22
23 let session = controller.get_session_by_name("master".to_string()).unwrap();
24
25 if let Some(session_endpoint_volume) = session.getAudioEndpointVolume() {
26 let volume_callback: IAudioEndpointVolumeCallback = VolumeChangeCallback {}.into();
27 session_endpoint_volume.RegisterControlChangeNotify(&volume_callback).unwrap();
28 println!("Initialised audio event listener for session 'master'");
29 loop {};
30 }
31 }
32}Sourcepub unsafe fn GetAllProcessSessions(&mut self)
pub unsafe fn GetAllProcessSessions(&mut self)
Examples found in repository?
More examples
examples/listen.rs (line 21)
16fn main() {
17 unsafe {
18 let mut controller = AudioController::init(None);
19 controller.GetSessions();
20 controller.GetDefaultAudioEnpointVolumeControl();
21 controller.GetAllProcessSessions();
22
23 let session = controller.get_session_by_name("master".to_string()).unwrap();
24
25 if let Some(session_endpoint_volume) = session.getAudioEndpointVolume() {
26 let volume_callback: IAudioEndpointVolumeCallback = VolumeChangeCallback {}.into();
27 session_endpoint_volume.RegisterControlChangeNotify(&volume_callback).unwrap();
28 println!("Initialised audio event listener for session 'master'");
29 loop {};
30 }
31 }
32}Sourcepub unsafe fn get_all_session_names(&self) -> Vec<String>
pub unsafe fn get_all_session_names(&self) -> Vec<String>
Sourcepub unsafe fn get_session_by_name(
&self,
name: String,
) -> Option<&Box<dyn Session>>
pub unsafe fn get_session_by_name( &self, name: String, ) -> Option<&Box<dyn Session>>
Examples found in repository?
More examples
examples/listen.rs (line 23)
16fn main() {
17 unsafe {
18 let mut controller = AudioController::init(None);
19 controller.GetSessions();
20 controller.GetDefaultAudioEnpointVolumeControl();
21 controller.GetAllProcessSessions();
22
23 let session = controller.get_session_by_name("master".to_string()).unwrap();
24
25 if let Some(session_endpoint_volume) = session.getAudioEndpointVolume() {
26 let volume_callback: IAudioEndpointVolumeCallback = VolumeChangeCallback {}.into();
27 session_endpoint_volume.RegisterControlChangeNotify(&volume_callback).unwrap();
28 println!("Initialised audio event listener for session 'master'");
29 loop {};
30 }
31 }
32}Auto Trait Implementations§
impl Freeze for AudioController
impl !RefUnwindSafe for AudioController
impl !Send for AudioController
impl !Sync for AudioController
impl Unpin for AudioController
impl UnsafeUnpin for AudioController
impl !UnwindSafe for AudioController
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
Mutably borrows from an owned value. Read more