13 个版本
0.2.2 | 2024年4月13日 |
---|---|
0.2.1 | 2024年3月22日 |
0.1.10 | 2024年3月3日 |
0.1.9 | 2023年12月26日 |
0.1.6 | 2023年9月28日 |
#72 in 音频
67KB
1.5K SLoC
Mixxc
Mixxc 是一个简约且可定制的音量混合器,旨在无缝补充桌面小部件。 目前,它仅支持通过利用 libpulseaudio
接收音频事件的方式来支持 pulseaudio
和 pipewire
。
使用方法
Usage: mixxc [-w <width>] [-h <height>] [-s <spacing>] [-a <anchor...>] [-m <margin...>] [-b <bar>] [-u <userstyle>] [-k] [-i] [-x <max-volume>] [-v]
Minimalistic volume mixer.
Options:
-w, --width window height
-h, --height window width
-s, --spacing spacing between clients
-a, --anchor screen anchor point: (t)op, (b)ottom, (l)eft, (r)ight
-m, --margin margin distance for each anchor point
-M, --master enable master volume slider
-b, --bar volume slider orientation: (h)orizontal, (v)ertical
-u, --userstyle path to the userstyle
-k, --keep keep window open
-i, --icon enable client icons
-x, --max-volume max volume level in percent (default: 100; 1-255)
-v, --version print version
--help display usage information
锚定
通常希望能够将小部件相对于屏幕边缘定位。
以下两个标志将有助于此:-a --anchor
和 -m --margin
。
提供的每个边距值将分别匹配每个锚点。
mixxc --anchor left --anchor bottom --margin 20 --margin 30
自定义
Mixxc 使用 GTK4 构建,并使用 CSS 定义其外观。
您将在首次启动后在配置目录中找到样式表。
${XDG_CONFIG_HOME:-$HOME/.config}/mixxc/style.css
如果您已启用 Sass 功能,它也会查找 *.scss 和 *.sass 文件。
${XDG_CONFIG_HOME:-$HOME/.config}/mixxc/style.sass
${XDG_CONFIG_HOME:-$HOME/.config}/mixxc/style.scss
环境
Mixxc 在以下环境中开发和测试:
- Wayland
- Hyprland
- PipeWire
如果您的设置不同且遇到问题,请随时提交错误报告。
提示
启动时间
如果启动似乎有点慢,请尝试以下操作
GSK_RENDERER=cairo GTK_USE_PORTAL=0 mixxc
手动关闭
默认情况下,窗口将在失去焦点后关闭。
这是针对不向 Wayland 下的层壳发送 close
请求的窗口管理器的解决方案。
如果此行为不理想,您可以禁用它
mixxc --keep
切换窗口
如果您希望通过点击按钮切换窗口,Unix 方式是最好的方式
pkill mixxc | mixxc
依赖项
- GTK4
- gtk4-layer-shell (特性:Wayland)
- libpulseaudio
- libxcb (特性:X11)
特性
一些特性可以在编译时启用。
安装
可以通过 crates.io 使用 cargo
安装。
cargo install mixxc --locked --features Sass,Wayland...
构建
要构建这个小玩意,你需要一些 Rust。
git clone --depth 1 https://github.com/Elvyria/mixxc
cd mixxc
cargo build --locked --release --features Sass,Wayland...
依赖项
~21–35MB
~632K SLoC