January 2019

Last month I released paprefs 1.1 and did some preparations for releasing pavucontrol 4.0. As can be guessed from the version number, the new paprefs version doesn’t have big changes, just the D-Bus code was rewritten to require fewer dependency libraries, and the “simultaneous output” feature was cleaned up to not cause a warning in the PulseAudio log. Pavucontrol 4.0 will be a more substantial release, if you’re curious you can find the change list here. Pavucontrol wasn’t released yet, because there are a couple of pending changes that we might want to include in the release.

It was reported that trying to use bluetooth between two computers where one runs PulseAudio to send audio and the other runs bluez-alsa to receive it didn’t work, because PulseAudio used an incorrect RTP payload type in the packets that it sent. The indicated payload type was indeed wrong according to the A2DP specification, so I fixed it. Apparently headsets generally ignore the RTP payload type number (unlike bluez-alsa), since this bug hasn’t caused much trouble before. (Ignoring the RTP payload type makes sense, because it provides no useful information in the bluetooth context.)

I also reviewed some patches:

  • Pavucontrol used to close itself when the Esc key was pressed. After having closed pavucontrol accidentally, Andreas Rönnquist made a patch that removes the Esc handling. I agreed with the change, because Ctrl-Q is the standard shortcut for closing GUI applications, not Esc.
  • Arun Raghavan made patches for improving device reconfiguration based on stream formats. The main goal of the work is to be able to play extra high bitrate passthrough streams without requiring manual profile switching (those high bitrate streams require opening the device in 8-channel mode, which is not currently available in the usual case where the device is using a stereo profile). The patches had some issues, so they are not merged yet.
  • A couple of smaller ones: Arun Raghavan fixed a double-free bug when creating certain kinds of recording streams and João Paulo Rechi Vita fixed a card initialization related crash bug (that I had inadvertently introduced while making a couple of “minor cleanups” to João’s one earlier patch).

This post was originally written on 2019-02-08, and first made available to my Patreon supporters. Speaking of Patreon – I’m using crowdfunding in an attempt to make it financially sustainable to continue my volunteer work as a PulseAudio maintainer. If you’d like to help, check out my Patreon page (or Liberapay).