Package Details: alsa-card-profiles-git 0.3.22.17.g686524ce-1

Git Clone URL: https://aur.archlinux.org/pipewire-git.git (read-only, click to copy)
Package Base: pipewire-git
Description: ALSA card profiles shared by PipeWire (GIT version)
Upstream URL: https://pipewire.org
Licenses: LGPL
Conflicts: alsa-card-profiles
Provides: alsa-card-profiles
Submitter: sl1pkn07
Maintainer: sl1pkn07
Last Packager: sl1pkn07
Votes: 6
Popularity: 0.91
First Submitted: 2017-09-19 15:57
Last Updated: 2021-02-19 14:28

Required by (5)

Sources (1)

Latest Comments

1 2 3 4 5 6 Next › Last »

tinywrkb commented on 2021-02-25 11:50

The official recommendation now is to use the systemd service so let's keep it this way unless the extra/pipewire maintainers decide otherwise.

tinywrkb commented on 2021-02-25 04:43

p.s. with regards to enabling the pipewire-media-session.service there's a discussion here.
I'm not entirely convinced that enabling the service is the right approach.

tinywrkb commented on 2021-02-25 04:22

@all, there's a new service that you might need to enable if you updating before my suggested changes will be applied. So something like the following.

# systemctl enable --global pipewire-media-session.service
$ systemctl start --user pipewire-media-session.service

@sl1pkn07. a bit large update here https://gist.github.com/tinywrkb/6db1b588f673d5c941071996a394463c

Changes:

  • Sync with extra/pipewire, including some of the cosmetics. The main difference I kept is not moving the jack.conf to the split package, I tend to not agree with this, let's just keep the configs with the pipewire-media-session daemon, and this is how it's package in Fedora.
  • Drop ffmpeg spa plugin, iiuc it's supposed to be internally used but it doesn't seem to be useful and it's not enabled by default or in the Fedora builds packaged by wtaymans.
  • Globally enable the new pipewire-media-session systemd user service. I set the version in the vercmp call as the most recent one, 0.3.22.60.geacda22a-1, feel free to revise this.
  • I hope I haven't missed anything, it's working on my system correctly.

tinywrkb commented on 2021-02-24 20:53

@blackout pulseaudio-alsa is a compat config to make ALSA apps work through PulseAudio.

pipewire-alsa serves a different purpose, it lets ALSA apps work through PipeWire, so it's not the same.

I believe that there's nothing that stops you from using pulseaudio-alsa with PipeWire and then ALSA apps go through the Pulse server of PipeWire though I haven't tried.

blackout commented on 2021-02-24 20:29

provides pulseaudio-alsa ?

tinywrkb commented on 2021-02-18 18:58

@sl1pkn07 another change to the package.

  1. You missed client-rt.conf in the backup array.
  2. Bring back the configs into the main package. I was wrong to assume that users will install the -pulse package when using the Pulse server. This also follows the Rawhide package which PipeWire's developer is its maintainer.

@all you should probably expect two .pacsave files.

diff --git a/PKGBUILD b/PKGBUILD
index 25bb9c3..e329ffe 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -107,8 +107,10 @@ package_pipewire-git() {
             "libpipewire-${pkgver:0:3}.so"
             )
   conflicts=('pipewire')
-  backup=('etc/pipewire/pipewire.conf'
+  backup=('etc/pipewire/client-rt.conf'
           'etc/pipewire/client.conf'
+          'etc/pipewire/jack.conf'
+          'etc/pipewire/pipewire-pulse.conf'
           'etc/pipewire/pipewire.conf'
           'etc/pipewire/media-session.d/alsa-monitor.conf'
           'etc/pipewire/media-session.d/bluez-monitor.conf'
@@ -123,13 +125,11 @@ package_pipewire-git() {

   _pick docs usr/share/doc

-  _pick jack etc/pipewire/jack.conf
   _pick jack etc/pipewire/media-session.d/with-jack
   _pick jack usr/bin/pw-jack usr/lib/pipewire-${pkgver:0:3}/jack
   _pick jack usr/lib/spa-0.2/jack
   _pick jack usr/share/man/man1/pw-jack.1

-  _pick pulse etc/pipewire/pipewire-pulse.conf
   _pick pulse etc/pipewire/media-session.d/with-pulseaudio

   _pick ffmpeg usr/lib/spa-0.2/ffmpeg/libspa-ffmpeg.so
@@ -156,7 +156,6 @@ package_pipewire-jack-git() {
            )
   provides=('pipewire-jack')
   conflicts=('pipewire-jack')
-  backup=('etc/pipewire/jack.conf')

   mv jack/* "${pkgdir}"
 }
@@ -174,7 +173,6 @@ package_pipewire-pulse-git() {
              'pulseaudio'
              'pulseaudio-bluetooth'
              )
-  backup=('etc/pipewire/pipewire-pulse.conf')
   arch=('any')
   install=pipewire-pulse.install

tinywrkb commented on 2021-02-12 11:51

New config files. I'm not 100% sure about moving them to the split packages, especially not pipewire-pulse.conf though it looks like only pulse daemon relevant code uses it, so it might be ok.
Commit message says config paths might change so we should keep an eye on this as it might need another update.

diff --git a/PKGBUILD b/PKGBUILD
index b7a9ba0..0eba889 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -7,7 +7,7 @@ pkgname=('pipewire-git'
          'pipewire-ffmpeg-git'
          'alsa-card-profiles-git'
          )
-pkgver=0.3.21.78.g6b11bf71
+pkgver=0.3.21.86.g8101334b
 pkgrel=1
 pkgdesc='Server and user space API to deal with multimedia pipelines. (GIT version)'
 arch=('x86_64')
@@ -107,7 +107,9 @@ package_pipewire-git() {
             "libpipewire-${pkgver:0:3}.so"
             )
   conflicts=('pipewire')
-  backup=('etc/pipewire/pipewire.conf'
+  backup=('etc/pipewire/client-rt.conf'
+          'etc/pipewire/client.conf'
+          'etc/pipewire/pipewire.conf'
           'etc/pipewire/media-session.d/alsa-monitor.conf'
           'etc/pipewire/media-session.d/bluez-monitor.conf'
           'etc/pipewire/media-session.d/media-session.conf'
@@ -121,11 +123,13 @@ package_pipewire-git() {

   _pick docs usr/share/doc

+  _pick jack etc/pipewire/jack.conf
   _pick jack etc/pipewire/media-session.d/with-jack
   _pick jack usr/bin/pw-jack usr/lib/pipewire-${pkgver:0:3}/jack
   _pick jack usr/lib/spa-0.2/jack
   _pick jack usr/share/man/man1/pw-jack.1

+  _pick pulse etc/pipewire/pipewire-pulse.conf
   _pick pulse etc/pipewire/media-session.d/with-pulseaudio

   _pick ffmpeg usr/lib/spa-0.2/ffmpeg/libspa-ffmpeg.so
@@ -152,6 +156,7 @@ package_pipewire-jack-git() {
            )
   provides=('pipewire-jack')
   conflicts=('pipewire-jack')
+  backup=('etc/pipewire/jack.conf')

   mv jack/* "${pkgdir}"
 }
@@ -169,6 +174,7 @@ package_pipewire-pulse-git() {
              'pulseaudio'
              'pulseaudio-bluetooth'
              )
+  backup=('etc/pipewire/pipewire-pulse.conf')
   arch=('any')
   install=pipewire-pulse.install

tinywrkb commented on 2021-02-11 11:23

@sl1pkn07 here's another update for the PKGBUILD:
1. Drop the Vulkan dependencies as it's now disabled by default and not useful.
2. Sync with extra/pipewire changes. 3. Cosmetics.

diff --git a/PKGBUILD b/PKGBUILD
index ef8dcc4..4438c13 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -7,7 +7,7 @@ pkgname=('pipewire-git'
          'pipewire-ffmpeg-git'
          'alsa-card-profiles-git'
          )
-pkgver=0.3.20.9.g73896bfa
+pkgver=0.3.21.75.g21040043
 pkgrel=1
 pkgdesc='Server and user space API to deal with multimedia pipelines. (GIT version)'
 arch=('x86_64')
@@ -24,13 +24,11 @@ makedepends=('git'
              'jack2'
              'sbc'
              'rtkit'
-             'vulkan-icd-loader'
              'dbus'
              'sdl2'
              'ncurses'
              'libsndfile'
              'bluez-libs'
-             'vulkan-headers'
              'ffmpeg'
              'libldac'
              'libopenaptx'
@@ -88,7 +86,6 @@ package_pipewire-git() {
            'bluez-libs'
            'rtkit'
            'sbc'
-           'vulkan-icd-loader'
            'libasound.so'
            'libdbus-1.so'
            'libfdk-aac.so'
@@ -122,9 +119,6 @@ package_pipewire-git() {

   cd "${pkgdir}"

-  mkdir -p etc/alsa/conf.d
-  ln -st etc/alsa/conf.d /usr/share/alsa/alsa.conf.d/50-pipewire.conf
-
   _pick docs usr/share/doc

   _pick jack etc/pipewire/media-session.d/with-jack
@@ -190,9 +184,10 @@ package_pipewire-alsa-git() {
   conflicts=('pipewire-alsa')
   arch=('any')

-  mkdir -p "$pkgdir"/etc/{alsa/conf.d,pipewire/media-session.d}
-  ln -st "${pkgdir}/etc/alsa/conf.d" /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf
-  touch "$pkgdir/etc/pipewire/media-session.d/with-alsa"
+  mkdir -p "${pkgdir}"/etc/{alsa/conf.d,pipewire/media-session.d}
+  ln -st "${pkgdir}/etc/alsa/conf.d" \
+    /usr/share/alsa/alsa.conf.d/{50-pipewire,99-pipewire-default}.conf
+  touch "${pkgdir}/etc/pipewire/media-session.d/with-alsa"
 }

 package_alsa-card-profiles-git() {
@@ -200,7 +195,7 @@ package_alsa-card-profiles-git() {
   provides=('alsa-card-profiles')
   conflicts=('alsa-card-profiles')

-  mv acp/* "$pkgdir"
+  mv acp/* "${pkgdir}"
 }

 package_pipewire-ffmpeg-git() {

p.s. There are fewer reasons for me to stay on the git package. The only things I'm looking forward are to are: BT HW/device volume sync, auto HFP/HSP profile switch (voice call mode), and a few bug fixes.
So I might not stay on top of changes in the future.

tinywrkb commented on 2021-01-31 16:56

I'm not exactly sure when this was added but now PipeWire is can save & restore the volume level of Bluetooth headphones, and it's not defaulting to 100% anymore when there's no saved state.
Also, when you connect a BT device it auto set the default sink and move all playing audio streams (at least those that were not manually set) to the A2DP output sink of the BT device.
So if you used my systemd user udev rule, which I noticed a couple of users did, then you don't need it anymore.

tinywrkb commented on 2021-01-21 11:42

@sl1pkn07 More changes from extra/pipewire.
Now alsa-card-profile is being packaged/split-up from pipewire base package and not pulseaudio, and the latter is packaged with the card profiles.
Because pulseaudio doesn't depend anymore on alsa-card-profile, I think it safe and correct to have pipewire-git directly depend on alsa-card-profile-git.

diff --git a/PKGBUILD b/PKGBUILD
index e0831d8..2009b13 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,6 +5,7 @@ pkgname=('pipewire-git'
          'pipewire-alsa-git'
          'pipewire-pulse-git'
          'pipewire-ffmpeg-git'
+         'alsa-card-profiles-git'
          )
 pkgver=0.3.19.61.gfee0c267
 pkgrel=1
@@ -35,6 +36,7 @@ makedepends=('git'
              'libopenaptx'
              'libfdk-aac'
              )
+checkdepends=(desktop-file-utils)
 source=('git+https://gitlab.freedesktop.org/pipewire/pipewire.git')
 sha256sums=('SKIP')

@@ -82,7 +84,7 @@ _pick() {
 }

 package_pipewire-git() {
-  depends=('alsa-card-profiles'
+  depends=('alsa-card-profiles-git'
            'bluez-libs'
            'rtkit'
            'sbc'
@@ -134,9 +136,8 @@ package_pipewire-git() {

   _pick ffmpeg usr/lib/spa-0.2/ffmpeg/libspa-ffmpeg.so

-  # Use alsa-card-profiles built with Pulseaudio
-  rm -rv "$pkgdir"/usr/share/alsa-card-profile
-
+  _pick acp usr/lib/udev
+  _pick acp usr/share/alsa-card-profile
 }

 package_pipewire-docs-git() {
@@ -193,6 +194,14 @@ package_pipewire-alsa-git() {
   touch "$pkgdir/etc/pipewire/media-session.d/with-alsa"
 }

+package_alsa-card-profiles-git() {
+  pkgdesc="ALSA card profiles shared by PipeWire (GIT version)"
+  provides=('alsa-card-profiles')
+  conflicts=('alsa-card-profiles')
+
+  mv acp/* "$pkgdir"
+}
+
 package_pipewire-ffmpeg-git() {
   pkgdesc='Server and user space API to deal with multimedia pipelines. (FFmpeg SPA plugin)(GIT version)'
   depends=('pipewire'