如何获取和安装 PipeWire
更新时间
PipeWire 的获取方式取决于你的需求:如果只是想在 Linux 上使用它,大多数发行版已经包含 PipeWire,通常不需要自己编译;如果你要开发、调试或使用最新代码,则可以从 GitLab 克隆源码并用 Meson 构建。需要注意,官方资料明确指出多数发行版可能没有默认启用音频相关部分,因此“已安装”不等于“已经在处理音频”。
先确认你的发行版是否已经提供
PipeWire 官网说明,支持音频用例的 PipeWire 应该已经出现在大多数发行版中。这意味着第一步不是下载源码,而是先检查系统里是否已有 PipeWire 以及它是否在运行。
适用条件是:你使用的是一个较新的主流 Linux 发行版。若发行版仓库中已有 PipeWire,优先用发行版的包管理方式安装和启用,而不是从源码安装。
官方同时提醒:大多数发行版不会默认启用音频部分。因此即使 PipeWire 已安装,也可能仍由 PulseAudio 或 JACK 处理音频。官网给出的做法是阅读相关示例来运行和验证,而不是假设安装后立即生效。
从 GitLab 获取源代码
如果你需要最新源码,PipeWire 的代码托管在 GitLab。官方给出的克隆命令是:
git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
克隆完成后,你会得到一个完整的源码目录,后续的构建和运行都在这个目录中进行。
使用 Meson 构建
PipeWire 使用 Meson 构建系统。官方提供了一个便利脚本和 makefile,使构建过程相对直接:
./autogen.sh --prefix=$PREFIX
make
make install
这里的输入是 $PREFIX,也就是你希望安装到的前缀路径。动作是配置、编译、安装。预期结果是 PipeWire 被构建并安装到指定前缀。
官方对安装位置有一个明确提醒:不建议安装这类自行构建的版本;在开箱即用的情况下,唯一可用的 $PREFIX 是 /usr。官方建议的替代方案是构建自定义的发行版软件包,或者直接从构建目录运行而不安装。
不安装直接运行和测试
如果你不想把自行构建的版本装进系统,可以在源码目录中直接运行。官方给出的测试方式是:
make run
这会启动 PipeWire 服务器,用于从源码目录进行测试。
如果要测试视频采集和显示(使用 SDL),可以在另一个窗口执行:
make shell
make shell 的作用是设置好环境变量,让你能从构建目录运行示例程序,例如:
builddir/src/examples/video-play
这里的关键点是环境变量。官方特别强调:不要忘记设置正确的环境变量,否则插件和模块将无法被找到。也就是说,如果示例程序报错找不到插件或模块,优先检查是否在 make shell 提供的环境中运行。
文档和进一步参与
PipeWire 的文档在其官网提供,开发者还可以查看官方标注为“不完整”的 PipeWire API 文档。其他有用的页面集中在 PipeWire wiki 上。
PipeWire 是自由软件。官网的 “Get Involved” 部分指向社区参与,如果你打算长期使用或贡献代码,可以从文档和 wiki 入手了解当前状态。
常见卡点
- 以为装了就能用:官方明确说多数发行版不会默认启用音频部分,安装后仍需确认音频是否已交由 PipeWire 处理。
- 随便指定安装前缀:官方说开箱即用只支持
/usr,其他前缀需要额外处理;更推荐构建发行版包或直接从构建目录运行。 - 示例程序找不到插件:通常是没有按
make shell设置环境变量,而不是构建失败。 - 把源码安装当作首选:官方本身不建议安装自行构建的版本,发行版已提供时应优先使用发行版方式。