7 个版本 (4 个破坏性更新)

0.5.0 2022年9月10日
0.4.1 2022年1月30日
0.3.1 2021年11月1日
0.3.0 2021年9月5日
0.1.0 2021年7月28日

#716 in 硬件支持

Download history 27/week @ 2024-03-24 57/week @ 2024-03-31 37/week @ 2024-04-07 25/week @ 2024-04-14 25/week @ 2024-04-21 42/week @ 2024-04-28 48/week @ 2024-05-05 59/week @ 2024-05-12 47/week @ 2024-05-19 41/week @ 2024-05-26 33/week @ 2024-06-02 32/week @ 2024-06-09 40/week @ 2024-06-16 32/week @ 2024-06-23 67/week @ 2024-06-30 9/week @ 2024-07-07

每月151次下载
用于 2 crate

0BSD 许可证

48KB
958 代码行

概览

本crate提供获取和设置显示亮度的定义。

支持Linux和Windows。

示例

use brightness::Brightness;
use futures::TryStreamExt;

async fn show_brightness() -> Result<(), brightness::Error> {
    brightness::brightness_devices().try_for_each(|dev| async move {
        let name = dev.device_name().await?;
        let value = dev.get().await?;
        println!("Brightness of device {} is {}%", name, value);
        Ok(())
    }).await
}

Linux

此crate与位于 /sys/class/backlight 的设备交互。这意味着需要ddcci-backlight 内核驱动来控制外部显示(通过DDC/CI)。

尝试使用D-Bus和logind设置亮度,这需要systemd 243或更高版本。如果由于该方法不可用而失败,则将所需亮度写入 /sys/class/backlight/$DEVICE/brightness,这需要权限(udev 规则可以帮此忙)。

贡献

所有贡献都应按照 0BSD许可证 授权。

依赖项

~0.7–45MB
~662K SLoC