#Windows #音量 #混音器 #更改 #exe

winmix

通过Rust更改Windows音量混合器

3个版本

0.1.2 2024年5月10日
0.1.1 2024年4月28日
0.1.0 2024年4月28日

#434 in 音频

Download history 193/week @ 2024-04-28 105/week @ 2024-05-05 15/week @ 2024-05-12 7/week @ 2024-05-19 1/week @ 2024-05-26

每月109次下载

MIT/Apache

11KB
103

About Rust 1.73

WinMix是一个Rust库,允许您分别更改Windows音量混合器中每个程序的音量。

例如,您可以设置chrome.exe的音量为0,同时不更改其他应用程序。

⚠ 此库使用来自windows crate的不安全函数。 ⚠

用法

use winmix::WinMix;

unsafe {
    let winmix = WinMix::default();

    // Get a list of all programs that have an entry in the volume mixer
    let sessions = winmix.enumerate()?;

    for session in sessions {
        // PID and path of the process
        println!("pid: {}   path: {}", session.pid, session.path);

        // Mute
        session.vol.set_mute(true)?;
        session.vol.set_mute(false)?;

        // 50% volume
        session.vol.set_master_volume(0.5)?;
        // Back to 100% volume
        session.vol.set_master_volume(1.0)?;

        // Get the current volume, or see if it's muted
        let vol = session.vol.get_master_volume()?;
        let is_muted = session.vol.get_mute()?;

        println!("Vol: {}   Muted: {}", vol, is_muted);
        println!();
    }
}

许可协议 许可协议: MIT

WinMixUnexomWid创建。它根据MITApache 2许可。

参考资料

依赖关系

~128MB
~2M SLoC