m (Lruzicka moved page User:Lruzicka/QA:Testcase pipewire cli to QA:Testcase PipeWire PipeWire CLI: The test case has been approved for wider use.) |
(→How to test: Forgot to update listing devices for recording) |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
== Setup == | == Setup == | ||
# This test case should be performed on '''bare-metal machines'''. | # This test case should be performed on '''bare-metal''' machines. To be able to test with '''virtual''' machines, consider a [https://fedoraproject.org/wiki/QA:Howto_USB_Passtrough USB device pass-through]. Leave a note in the comments if you have performed this test using the VM with the USB Passthrough strategy. | ||
# The computer must be '''equipped with a sound device and a microphone''' (or another input source of audio). | # The computer must be '''equipped with a sound device and a microphone''' (or another input source of audio). | ||
# Install a desktop version of '''Fedora | # Install a desktop version of '''Fedora 35''' (or later). | ||
# | # Check that the <code>pipewire-utils</code> and <code>wireplumber</code> packages are installed. If not, report it and install them. | ||
# Connect your '''speakers''' (headphones) to the default sound device. | # Connect your '''speakers''' (headphones) to the default sound device. | ||
# Have an '''audio file''' in the ''wav'' format at your disposal. If you do not have one, you can [https://pagure.io/fedora-qa/test_cases/blob/master/f/fedora_sample.wav download a suitable audio file]. Some default files can also be found in the <code>/usr/share/sounds/</code> directory. | # Have an '''audio file''' in the ''wav'' format at your disposal. If you do not have one, you can [https://pagure.io/fedora-qa/test_cases/blob/master/f/fedora_sample.wav download a suitable audio file]. Some default files can also be found in the <code>/usr/share/sounds/</code> directory. | ||
Line 16: | Line 16: | ||
<ol> | <ol> | ||
<li><p>List all available | <li><p>List all available devices (targets) and check that all your output sound devices are listed.</p> | ||
<p><code>$ | <p><code>$ wpctl status</code></p> | ||
<p>Note that each target has an identification number assigned. The default target is marked with an asterisk (<code>*</code>). Check that it matches your default audio device.</p></li> | <p>Note that each target has an identification number assigned. The default target is marked with an asterisk (<code>*</code>). Check that it matches your default audio device.</p></li> | ||
<li><p>Play a wav sound file over the default target and check that it is correctly played over the default sound device.</p> | <li><p>Play a wav sound file over the default target and check that it is correctly played over the default sound device.</p> | ||
Line 23: | Line 23: | ||
<li><p>Play a wav sound file while setting the volume to a low level. Check that the playback is quieter when compared to the previous step.</p> | <li><p>Play a wav sound file while setting the volume to a low level. Check that the playback is quieter when compared to the previous step.</p> | ||
<p><code>$ pw-cat -p --volume=0.1 <audiofile.wav></code></p></li> | <p><code>$ pw-cat -p --volume=0.1 <audiofile.wav></code></p></li> | ||
<li><p>List all available | <li><p>List all available devices (targets) and check that all your input sound devices are listed.</p> | ||
<p><code>$ | <p><code>$ wpctl status</code></p></li> | ||
<li><p>Connect your microphone (or another input source of audio) to the default input sound device.</p></li> | <li><p>Connect your microphone (or another input source of audio) to the default input sound device.</p></li> | ||
<li><p>Record a sample recording using your default sound device. Check that it has been correctly recorded. Use the playback command used in '''Step 2'''.</p> | <li><p>Record a sample recording using your default sound device. Check that it has been correctly recorded. Use the playback command used in '''Step 2'''.</p> |
Latest revision as of 09:30, 14 April 2023
PipeWire CLI tools
This test case tests that PipeWire can be controlled using CLI commands.
Setup
- This test case should be performed on bare-metal machines. To be able to test with virtual machines, consider a USB device pass-through. Leave a note in the comments if you have performed this test using the VM with the USB Passthrough strategy.
- The computer must be equipped with a sound device and a microphone (or another input source of audio).
- Install a desktop version of Fedora 35 (or later).
- Check that the
pipewire-utils
andwireplumber
packages are installed. If not, report it and install them. - Connect your speakers (headphones) to the default sound device.
- Have an audio file in the wav format at your disposal. If you do not have one, you can download a suitable audio file. Some default files can also be found in the
/usr/share/sounds/
directory. - Perform the following test case as a regular user.
How to test
List all available devices (targets) and check that all your output sound devices are listed.
$ wpctl status
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.Play a wav sound file over the default target and check that it is correctly played over the default sound device.
$ pw-cat -p <audiofile.wav>
Play a wav 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.wav>
List all available devices (targets) and check that all your input sound devices are listed.
$ wpctl status
Connect your microphone (or another input source of audio) to the default input sound device.
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
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
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
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.Alternatively, you can use dedicated commands to play and record audio, i.e.
pw-play
andpw-record
.
Expected results
- Playback targets are listed and they correspond to your audio devices.
- Audio files can be played and recorded using the
pw-cat
command or its dedicated variants. - Connected output and input sound devices work.