Github messages for voidlinux
 help / color / mirror / Atom feed
* [ISSUE] separate package for tools in pulseaudio which are useful for pipewire
@ 2021-03-19  0:12 gt7-void
  2021-03-19 14:51 ` FollieHiyuki
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: gt7-void @ 2021-03-19  0:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1527 bytes --]

New issue by gt7-void on void-packages repository

https://github.com/void-linux/void-packages/issues/29576

Description:
For instance: my setup depends on `pactl` which works with `pipewire`. I couldn't find another tool which can replace some of the functionality of `pactl` (e.g. I use `pactl info`, `pactl list short sinks`, `pactl set-default-sink`, `pactl list short sink-inputs`, `pactl move sink-input`, etc. I guess some or all of those can be replaced combining `pw-dump`, `jq` and `pw-cli`, but it's a chore)

Installing pulseaudio is a pain because it's sometimes difficult to avoid having it autolaunch, etc.

As an example, debian has a `pulseaudio-utils` package (https://packages.debian.org/sid/pulseaudio-utils) which contains:
```
  paplay - Playback a WAV file via a PulseAudio sink.
  pacat - Cat raw audio data to a PulseAudio sink.
  parec - Cat raw audio data from a PulseAudio source.
  pacmd - Connect to PulseAudio's built-in command line control interface.
  pactl - Send a control command to a PulseAudio server.
  padsp - /dev/dsp wrapper to transparently support OSS applications.
  pax11publish - Store/retrieve PulseAudio default server/sink/source
                 settings in the X11 root window.
```

I would be content with `pactl`, the others (`paplay`, `pacat`, `parec`) seem to have equivalent included with pipewire (`pw-play`, `pw-cat`, `pw-record`). I don't know about `padsp` or what `pax11publish` is supposed to do. I know `pacmd` does _not_ work with `pipewire`.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
@ 2021-03-19 14:51 ` FollieHiyuki
  2021-03-19 16:57 ` gt7-void
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: FollieHiyuki @ 2021-03-19 14:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 392 bytes --]

New comment by FollieHiyuki on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-802890154

Comment:
I would suggest using external tools like `pulsemixer` or `pamixer` if you intend to use `pipewire` for it pulseaudio backend.
They require some scripting to be on par with `pactl`, but I find it reasonably better than splitting `pulseaudio`. 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
  2021-03-19 14:51 ` FollieHiyuki
@ 2021-03-19 16:57 ` gt7-void
  2021-03-19 17:14 ` ericonr
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: gt7-void @ 2021-03-19 16:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1563 bytes --]

New comment by gt7-void on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-802975955

Comment:
Functionality of `pactl` I miss (not available in `pulsemixer` or `pamixer` afaict):
 - print the default sink: `pactl info  | sed -ne 's/^Default Sink: //p'`
 - print the default source: `pactl info  | sed -ne 's/^Default Source: //p'`
 - set default sink/source: `pactl set-default-{sink,source} ...`
 - list sink-sources: `pactl list short sink-inputs`
 - list source-outputs: `pactl list short source-outputs`
 - move sink-inputs/source-outputs: `pactl move-{sink-input,source-output} ...`


For example: here's a script I use a lot from a hotkey. It cycles the default sink through the available sinks, and also moves all the sink-inputs to the new default sink. Very handy to switch from speakers to headphones, etc.
```
#! /bin/sh

default_sink="$(pactl info | sed -ne 's/^Default Sink: //p')"
sinks="$(pactl list short sinks | awk '{print $2}')"

next="$(printf "%s\n%s\n" "$sinks" "$sinks" | grep -A1 -m1 "$default_sink" | tail -1)"

pactl set-default-sink "$next"

inputs="$(pactl list short sink-inputs | awk '{print $1}')"
for i in $inputs ; do
    pactl move-sink-input $i $next
done
```

In any case, the point is that some of the tools that ship with `pulseaudio` are useful with pipewire, and not obviously replaced (`some scripting` is not good enough, I guess I could replace `pactl` with "some scripting" 
just as much as I could replace this comment with smoke signals).


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
  2021-03-19 14:51 ` FollieHiyuki
  2021-03-19 16:57 ` gt7-void
@ 2021-03-19 17:14 ` ericonr
  2021-03-19 21:29 ` gt7-void
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: ericonr @ 2021-03-19 17:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 383 bytes --]

New comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-802986243

Comment:
I have

```
autospawn=no
```

in my `~/.config/pulse/client.conf` file, and it's always stopped pulse autospawning for me. I'd rather document this in void docs than split the package, but it's not a strong opinion. What do you think?

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (2 preceding siblings ...)
  2021-03-19 17:14 ` ericonr
@ 2021-03-19 21:29 ` gt7-void
  2021-03-29 22:18 ` CameronNemo
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: gt7-void @ 2021-03-19 21:29 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 610 bytes --]

New comment by gt7-void on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-803144114

Comment:
Documenting seems always a good idea. I was just reading `pulse-client.conf(5)` and I see there's also the option `daemon-binary`, I wonder if setting `daemon-binary=/usr/bin/pipewire-pulse` would work.

Installing `pulseaudio` also brings `rtkit` to the system. I've no idea what it does, I noticed that (a) pipewire does not depend on rtkit and it works fine without it being installed (b) if rtkit is installed, then it will launch itself when running pipewire.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (3 preceding siblings ...)
  2021-03-19 21:29 ` gt7-void
@ 2021-03-29 22:18 ` CameronNemo
  2021-04-09 15:55 ` st3r4g
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: CameronNemo @ 2021-03-29 22:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 322 bytes --]

New comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-809749837

Comment:
rtkit is used to obtain "real-time" permissions as an unprivileged user. Pipewire can use it, although there appears to be no breakage without it. Perhaps some higher latency.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (4 preceding siblings ...)
  2021-03-29 22:18 ` CameronNemo
@ 2021-04-09 15:55 ` st3r4g
  2021-04-26  6:13 ` noarchwastaken
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: st3r4g @ 2021-04-09 15:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 481 bytes --]

New comment by st3r4g on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-816780906

Comment:
Relevant info: https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Migrate-PulseAudio
Looks like `pactl` is the only useful one, and not all functionality has a native equivalent, so I think it would be good to extract it into a standalone subpackage (kinda similar to `glxinfo`). Of course `pulseaudio` would then depend on `pactl`.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (5 preceding siblings ...)
  2021-04-09 15:55 ` st3r4g
@ 2021-04-26  6:13 ` noarchwastaken
  2021-04-26  9:24 ` st3r4g
  2021-04-29 15:24 ` [ISSUE] [CLOSED] " ericonr
  8 siblings, 0 replies; 10+ messages in thread
From: noarchwastaken @ 2021-04-26  6:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 406 bytes --]

New comment by noarchwastaken on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-826535802

Comment:
I prefer to just package all the `utils`, as what Debian does. Things like `paplay` could be useful for playing audio in the command line. The entire `utils` suite is ~280KB installed, which is still more lightweight than ~6MB for the `pulseaudio` package.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (6 preceding siblings ...)
  2021-04-26  6:13 ` noarchwastaken
@ 2021-04-26  9:24 ` st3r4g
  2021-04-29 15:24 ` [ISSUE] [CLOSED] " ericonr
  8 siblings, 0 replies; 10+ messages in thread
From: st3r4g @ 2021-04-26  9:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 318 bytes --]

New comment by st3r4g on void-packages repository

https://github.com/void-linux/void-packages/issues/29576#issuecomment-826668683

Comment:
> I prefer to just package all the utils, as what Debian does.

Fair enough. Pipewire could implement more functionality in the future and make other tools useful, who knows.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [ISSUE] [CLOSED] separate package for tools in pulseaudio which are useful for pipewire
  2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
                   ` (7 preceding siblings ...)
  2021-04-26  9:24 ` st3r4g
@ 2021-04-29 15:24 ` ericonr
  8 siblings, 0 replies; 10+ messages in thread
From: ericonr @ 2021-04-29 15:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1530 bytes --]

Closed issue by gt7-void on void-packages repository

https://github.com/void-linux/void-packages/issues/29576

Description:
For instance: my setup depends on `pactl` which works with `pipewire`. I couldn't find another tool which can replace some of the functionality of `pactl` (e.g. I use `pactl info`, `pactl list short sinks`, `pactl set-default-sink`, `pactl list short sink-inputs`, `pactl move sink-input`, etc. I guess some or all of those can be replaced combining `pw-dump`, `jq` and `pw-cli`, but it's a chore)

Installing pulseaudio is a pain because it's sometimes difficult to avoid having it autolaunch, etc.

As an example, debian has a `pulseaudio-utils` package (https://packages.debian.org/sid/pulseaudio-utils) which contains:
```
  paplay - Playback a WAV file via a PulseAudio sink.
  pacat - Cat raw audio data to a PulseAudio sink.
  parec - Cat raw audio data from a PulseAudio source.
  pacmd - Connect to PulseAudio's built-in command line control interface.
  pactl - Send a control command to a PulseAudio server.
  padsp - /dev/dsp wrapper to transparently support OSS applications.
  pax11publish - Store/retrieve PulseAudio default server/sink/source
                 settings in the X11 root window.
```

I would be content with `pactl`, the others (`paplay`, `pacat`, `parec`) seem to have equivalent included with pipewire (`pw-play`, `pw-cat`, `pw-record`). I don't know about `padsp` or what `pax11publish` is supposed to do. I know `pacmd` does _not_ work with `pipewire`.


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-04-29 15:24 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-19  0:12 [ISSUE] separate package for tools in pulseaudio which are useful for pipewire gt7-void
2021-03-19 14:51 ` FollieHiyuki
2021-03-19 16:57 ` gt7-void
2021-03-19 17:14 ` ericonr
2021-03-19 21:29 ` gt7-void
2021-03-29 22:18 ` CameronNemo
2021-04-09 15:55 ` st3r4g
2021-04-26  6:13 ` noarchwastaken
2021-04-26  9:24 ` st3r4g
2021-04-29 15:24 ` [ISSUE] [CLOSED] " ericonr

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).