From Fedora Project Wiki

Revision as of 17:07, 15 February 2021 by Lruzicka (talk | contribs)

PipeWire CLI tools

This test case tests that PipeWire can be controlled using CLI commands.

Setup

  1. This test case should be performed on a bare machine.
  2. The computer must be equipped with a sound device and a microphone (or another input source of audio).
  3. Install a desktop version of Fedora 34 (or later).
  4. Install the pipewire-utils package.
  5. Connect your speakers (headphones) to the default sound device.
  6. Have an audio file ready (wav).
  7. Perform the following test case as a regular user.

How to test

  1. List all available playback devices (targets) and check that all your output sound devices are listed.

    $ pw-cat -p --list-targets

    Note that each target has an identification number assigned. The default target is marked with an asterisk (*). Check that it matches your default audio device.

  2. Play a sound file over the default target and check that it is correctly played over the default sound device.

    $ pw-cat -p <audiofile>

  3. Play a sound file while setting the volume to a low level. Check that the playback is quieter when compared to the previous step.

    $ pw-cat -p --volume=0.1 <audiofile>

  4. List all available recording devices (targets) and check that all your input sound devices are listed.

    $ pw-cat -r --list-targets

  5. Connect your microphone (or another input source of audio) to the default input sound device.

  6. Record a sample recording using your default sound device. Check that it has been correctly recorded. Use the playback command used in Step 2.

    $ pw-cat -r audiotest.wav

  7. Record a sample recording using a different volume level. Check that it has been correctly recorded. Compare the volume level with the first recordings and make sure this one is much quieter.

    $ pw-cat -r --volume=0.1 quiet.wav

  8. Record a sample recording using a different rate. Check that it has been correctly recorded. Compare the quality with the first recording and check that this recording sounds less clean and has an overall "lower" quality.

    $ pw-cat -r --rate=6000 lowrate.wav

  9. If you have more than one audio devices, you can repeat the previous steps with another device using the --target option, such as

    $ pw-cat -p --target=XX <audiofile> or $ pw-cat -r --target=XX <audiofile>

    where XX stands for the device number obtained by the --list-targets option.

  10. Alternatively, you can use dedicated commands to play and record audio, i.e. pw-play and pw-record.

Expected results

  1. Playback targets are listed and they correspond to your audio devices.
  2. Audio files can be played and recorded using the pw-cat command or its dedicated variants.
  3. Connected output and input sound devices work.