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 !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