Pipewire to manage audio in antiX 21

Forum Forums General Software Pipewire to manage audio in antiX 21

  • This topic has 59 replies, 16 voices, and was last updated Dec 30-4:46 pm by stevesr0.
Viewing 15 posts - 16 through 30 (of 60 total)
  • Author
    Posts
  • #70092
    Member
    stevesr0
      Helpful
      Up
      0
      ::

      Hi Xecure,

      Downloaded the v. 3.19 pipewire packages available for the new Antix 21. This version has the files where the Debian wiki states. Followed the instructions you summarized in your opening post. Unfortunately, the pipewire-pulse package is missing at this time from the antix 21 repos (and from the Debian bullseye packages).

      I downloaded the pulseaudio-utils package, but still get “not a valid command” when commanding /usr/bin/pactl from command line as either sudo or a user.

      I looked at the commit you linked to for the adjustment of the files for 3.39, but I didn’t see downloadable files there, just a listing. Perhaps if I recheck the package available on Sid, it will have been updated and I can download it on that machine.

      So far, I can launch pavucontrol, but it doesn’t link up with “pulseaudio” (pipewire).

      Using pw-play to test if pipewire is “working”, I get two error messages.

      Perhaps, things will work better after further adjustment of the repositories.

      Will followup if/when I make progress.

      Appreciate your suggestions, thanks.

      stevesr0

      • This reply was modified 1 year, 6 months ago by stevesr0.
      • This reply was modified 1 year, 6 months ago by stevesr0.
      • This reply was modified 1 year, 6 months ago by stevesr0.
      #70140
      Member
      Xecure
        Helpful
        Up
        0
        ::

        Unfortunately, the pipewire-pulse package is missing at this time from the antix 21 repos.

        pipewire-pulse is not a package, it is a binary included in the pipewire-bin package (which gets installed as a dependency when you install the pipewire package). See my original instructions (working on bullseye, but I have no idea if they still apply for testing/sid)

        1. Install pipewire with audio client libraries (optional, for replacing pulseaudio, jack and handling alsa requests) and bluetooth modules (optional, for bluetooth audio streaming).
        sudo apt install pipewire pipewire-audio-client-libraries libspa-0.2-bluetooth

        3.(Optional) Prepare it to replace pulseaudio. I follow the Debian wiki instructions and create a file for pipewire:
        sudo touch /etc/pipewire/media-session.d/with-pulseaudio
        and also add another startup command to ~/.desktop-session/startup

        # Replace pulseaudio functionality with pipewire
        pipewire-pulse &

        My instructions are a bit out of date, so it is better to follow the instructions in Debian wiki.

        I downloaded the pulseaudio-utils package, but still get “not a valid command” when commanding /usr/bin/pactl from command line

        Strange. When I ask my antiX 21 system which package installs pactl, it states it is the puseaudio-utils package.

        $ dpkg -S /usr/bin/pactl 
        pulseaudio-utils: /usr/bin/pactl

        Once I get some free time on the weekend I will explore a bit more on how to get the new version to work on bullseye/antiX-21.

        I looked at the commit you linked to for the adjustment of the files for 3.39, but I didn’t see downloadable files there

        The link is only to the gitlab salsa page for seing the Debian development of pipewire package, and it isn’t used for downloading anything, just to see the opensource changes. What I was pointing out is that the /etc/pipewire folder is no longer created automatically and the default options are now in /usr/share/pipewire. After reading a bit more on the pipewire manual, they state that the order on which it checks the pipewire configuration is
        1st, the users ~/.config/pipewire folder
        2nd, the systems /etc/pipewire/ folder (where I would make the changes, by copying over the /usr/share/pipewire folder and making changes there).
        3rd, fallback to the default configuration in /usr/share/pipewire.

        antiX Live system enthusiast.
        General Live Boot Parameters for antiX.

        #70174
        Member
        stevesr0
          Helpful
          Up
          0
          ::

          Hi Xecure,

          I have had some success.

          First of all, I realize I have been confusing because I have talked about both 3.19 and 3.39.

          I am only working at this time on the system with a live USB of antix 21.

          Although I followed the directions to set up persistence in advanced options, the changes don’t seem to get saved. so after setting up pipewire, I log out and back in in order for the changes to take effect.

          One difference from your instructions is that the .desktop-session directory is in /etc/skel/ not /etc.

          I haven’t rebooted after adding pipewire-pulse to the startup file, so I launch it manually in a terminal. When I do, I have been getting the following error:

          [W][000013609.556993][pulse-server.c:5198 make_local_socket()] pulse-server 0x55d7aece95d0: unlink stale socket /run/user/1000/pulse/native.

          When I launch pavucontrol next from a terminal, I get the following errors:

          [W][000013682.332481][pulse-server.c:419 reply_error()] pulse-server 0x55d7aece6550: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:12 error:19 (Operation not supported)
          [W][000013682.332495][pulse-server.c:419 reply_error()] pulse-server 0x55d7aece6550: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:13 error:19 (Operation not supported)
          [W][000013682.332503][pulse-server.c:419 reply_error()] pulse-server 0x55d7aece6550: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:14 error:19 (Operation not supported)
          [W][000013682.332509][pulse-server.c:419 reply_error()] pulse-server 0x55d7aece6550: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:15 error:19 (Operation not supported)
          [W][000013682.343732][pulse-server.c:419 reply_error()] pulse-server 0x55d7aece6550: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:17 error:19 (Operation not supported)

          followed by (with launch of volume control):

          [W][000013682.359006][remote-node.c:649 client_node_port_use_buffers()] Failed to mlock memory 0x7fef28d3f000 32832: This is not a problem but for best performance, consider increasing RLIMIT_MEMLOCK

          Then I am able to play a wav. file either thru the speakers or a 3.5 connected headphone (but not a usb headset so far).

          So, relatively speaking, happy days.

          Thanks and happy to receive any suggestions about making this work better.

          stevesr0

          #70177
          Member
          Xecure
            Helpful
            Up
            0
            ::

            I have had a much stabler and better experience setting up pipewire as a user service (using runit). More reliable and it survives changing and restarting user sessions (though it took a bit of time and experimentation to get it to work as a service, in the same way it does with systemd).

            I have never used USB speakers or headphones, so I don’t know how one would select them in pavucontrol. As pipewire is still a beta product, it seems USB output support didn’t work properly until 0.3.28 (much newer than the 0.3.19 in bullseye).

            Once I experiment a bit with installing the 0.3.39-3 version on antiX 21, and testing, I will create a new reply with newer instructions, including how to set up user services (for runit) for anyone interested.

            antiX Live system enthusiast.
            General Live Boot Parameters for antiX.

            #70643
            Member
            stevesr0
              Helpful
              Up
              0
              ::

              I just updated (via apt update && apt full-upgrade) from 3.39.3 to 3.39.4 on my Sid Antix system. Without any configuration, just starting pipewire, pipewire-pulse, wireplumber and pavucontrol (manually, in separate terminals) I am able to play music that is on my hard drive through the (previously useless Logitech headset).

              Pavucontrol recognizes my usb headset (obviously, I guess, since I have [beautiful!] sound.

              So, while it shouldn’t require 4 terminals to work, at least it appears it does.

              Xecure, I recommend you try the new version. If you work on it, I am sure a set of clear instructions will be created to enable average users to make it work without four terminals <g>.

              In a few minutes, I will try the ultimate test — a ZOOM teleconference. I will report back after that.
              (I expect it to fail, but as long as other sounds are working, I will still be ecstatic for the moment.

              stevesr0

              ————————-

              Update: Except for peculiar switching on and off of audio when I use the ZOOM audio settings, the audio worked great through the USB headset. The video is limited (as it always is) by the low power processor in this old machine.

              stevesr0

              • This reply was modified 1 year, 6 months ago by stevesr0.
              #71142
              Anonymous
                Helpful
                Up
                0
                ::

                Hi Xecure, thank you for this great tutorial. I followed it step by step and my self-imposed sounds issues are fixed! All my applications have sound now! Amazing!

                I do have one question. When I go from speaker sound to headphone sound I don’t get automatic switch over? I have to manually change the output to headphones. Any way to automate this with pipewire?

                #71148
                Member
                Xecure
                  Helpful
                  Up
                  0
                  ::

                  When I go from speaker sound to headphone sound I don’t get automatic switch over?

                  I also have to manually switch from one output to another, and it normally resets the volume o 100%, which is really bad.
                  It seems it hasn’t been resolved yet (at least as of version 0.3.24, which is newer than the version in antiX 21). This technology is still beta software, so many things work well but many other are not implemented yet.

                  I have unfortunately not tested the newest version stevesr0 has mentioned, and will wait until I have migrated the dev environment to antiX-21 stable release (I am still on the beta1 install).

                  antiX Live system enthusiast.
                  General Live Boot Parameters for antiX.

                  #71151
                  Anonymous
                    Helpful
                    Up
                    0
                    ::

                    I see, thanks for the reply.

                    I have another question regarding pipewire; is there a safe/better way to start pipewire? In my i3 config I have

                    exec pipewire
                    exec pipewire-pulse

                    But now I see quite a few instances of pipewire and pipewire-pulse running? See attached.

                    #71159
                    Member
                    Xecure
                      Helpful
                      Up
                      0
                      ::

                      I have another question regarding pipewire; is there a safe/better way to start pipewire?

                      I think newer versions include a xdg-autostart entry in /etc/xdg/autostart, as an alternative method to start it.

                      I start it with runit, and has similar results to yours (a few processes started, probably related to dbus) . I am now a runit convert, so I have pipewire started as a user service, so it survives session restarts or changes of desktop session:
                      runit-pipewire

                      antiX Live system enthusiast.
                      General Live Boot Parameters for antiX.

                      #71173
                      Member
                      stevesr0
                        Helpful
                        Up
                        0
                        ::

                        Hi,

                        Just noticed that a guide to moving to Pipewire from Pulse Audio was posted by the developer at:

                        https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Migrate-PulseAudio#general

                        stevesr0

                        #71323
                        Member
                        stevesr0
                          Helpful
                          Up
                          0
                          ::

                          Hi all,

                          I am running Openbox as my window manager and don’t have the standard .desktop-session files in my home directory, due to my amateurish install of a minimal Sid version of Antix.

                          So, I have been reduced to starting PipeWire manually by launching separate terminal windows for pipewire, pipewire-pulse and wireplumber.

                          After editing /etc/xdg/openbox/autostart to launch Pipewire, pipewire-pulse and WirePlumber in the background, it all works automagically. The editing is the same as Xecure described doing in .desktop-session/startup file in the OP.

                          stevesr0

                          #73363
                          Member
                          stevesr0
                            Helpful
                            Up
                            0
                            ::

                            Update. Working as I indicated in my post of 20 November. Only significant glitch is that when I boot, I generallyhave to manually initialize Wireplumber, in spite of having it in my /etc/xdg/openbox/autostart file. I tried adding a sleep of 10 seconds but that hasn’t made Wireplumber start routinely.

                            My file consists of the following (line-by-line):

                            1. pipewire &
                            2. wireplumber &
                            3. sleep 10
                            4. pipewire-pulse &
                            5. tint2 &
                            6. /usr/lib/policykit-1/polkit-agent-helper-1 &
                            7.lxterminal

                            Appreciate any thoughts about what the problem might be.

                            stevesr0

                            #73371
                            Member
                            Xecure
                              Helpful
                              Up
                              0
                              ::

                              I am still using pipewire-media-session with pipewire version 0.3.40-1 instead of wireplumber, as my needs don’t require a more advanced media session controller.

                              $ apt policy pipewire-media-session 
                              pipewire-media-session:
                                Installed: 0.4.1-2

                              The order in startup is:
                              pipewire
                              pipewire-media-session
                              pipewire-pulse

                              I start them using three runit user-services, so sharing my configuration won’t be helpfull.

                              I would suggest adding the sleep 2 before wireplumber, just to see if the problem is that pipewire hasn’t started yet before wireplumber starts. It would look like:

                              1. pipewire &
                              2. sleep 2
                              3. wireplumber &
                              4. sleep 2
                              5. pipewire-pulse &
                              6. tint2 &
                              7. /usr/lib/policykit-1/polkit-agent-helper-1 &
                              8.lxterminal

                              antiX Live system enthusiast.
                              General Live Boot Parameters for antiX.

                              #73384
                              Member
                              stevesr0
                                Helpful
                                Up
                                0
                                ::

                                Hi Xecure,

                                Thanks for the suggestion. I just made that change and then started x and wireplumber was loaded. If that happens consistently, I guess that was the issue. I will report back.

                                stevesr0

                                #73999
                                Member
                                stevesr0
                                  Helpful
                                  Up
                                  0
                                  ::

                                  Hi Xecure,

                                  With the sleep added for pipewire, preceding wireplumber, everything is starting automagically.

                                  Thanks and happy new year.

                                  stevesr0

                                Viewing 15 posts - 16 through 30 (of 60 total)
                                • You must be logged in to reply to this topic.