Separate Linux and Windows stuff (I have no idea if Windows even works), add automatic virtual mic support for apps on Linux (impossible on Windows)

This commit is contained in:
csd4ni3l
2026-01-25 15:42:29 +01:00
parent d5a7dd624b
commit a42c69c845
3 changed files with 200 additions and 87 deletions

13
src/windows_lib.rs Normal file
View File

@@ -0,0 +1,13 @@
use rodio::{OutputStream, OutputStreamBuilder, cpal::{self, traits::HostTrait}};
pub fn create_virtual_mic_windows() -> OutputStream {
host = cpal::host_from_id(cpal::HostId::Wasapi).expect("Could not initialize audio routing using WasAPI");
virtual_mic = host.output_devices().expect("Could not list Output devices").find(|device| {
device.name().ok().map(|name|{
name.contains("CABLE Input") || name.contains("VB-Audio")
}).unwrap_or(false)
}).expect("Could not get default output device");
// normal_output = host.default_output_device().expect("Could not get default output device");
return OutputStreamBuilder::from_device(virtual_mic).expect("Unable to open default audio device").open_stream().expect("Failed to open stream");
// return (OutputStreamBuilder::from_device(normal_output).expect("Unable to open default audio device").open_stream().expect("Failed to open stream"), OutputStreamBuilder::from_device(virtual_mic).expect("Unable to open default audio device").open_stream().expect("Failed to open stream"));
}