Opened 4 years ago

Closed 4 years ago

#14033 closed enhancement (fixed)


Reported by: Douglas R. Reno Owned by: Bruce Dubbs
Priority: normal Milestone: 10.1
Component: BOOK Version: SVN
Severity: normal Keywords:


New point version

Change History (8)

comment:1 by Douglas R. Reno, 4 years ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:2 by Bruce Dubbs, 4 years ago

PipeWire 0.3.11

This is a bugfix release that is API and ABI compatible with previous 0.3.x releases.

  • PipeWire improvements
    • Properly cleanup the mixer structures when a port is removed, this should fix client crashes related to port config changes and other random crashes.
    • Optimize the preferred formats in the audio converter. Higher quality formats with higher performance are chosen first.
    • Make sure the time reported by pw_stream is always increasing, even when the driver and clock changes.
    • There is now also a system service and socket that can be used to enable PipeWire systemwide. This is however not recommended and disabled by default.
    • Fix channelmixer 5.1 to stereo mix matrix. It was not reading the conversion matrix correctly and cause channels to be dropped. The channelmixer will now also normalize the volume, like what pulseaudio does.
    • The channelmixer will now just copy channels when no layout has been given. It has also optimized paths for this. This makes it possible for apps to request > 8 channels from the alsa plugin (ardour).
    • Port, Node and Link will now also emit an error on the resources in addition to updating the error in the info. This would make it easier to track negotiation errors in the session manager later.
    • many small fixes and cleanups.
    • Fix compatibility:
      • DOSBox: fix crash because of double free in pw_stream
  • Session manager improvements
    • The session manager will now try to configure the client to the channel configuration of the sink/source. It will only do this for downmixing, never for upmixing and also never when the client has the dont-remix property set. It will also renegotiate the channel layout when moving a stream to a new sink/source.
    • Configuration state is now saved in XDG_CONFIG_HOME. Previously it was saved in $HOME/.pipewire-media-session/ You can migrate the state by moving the files to $XDG_CONFIG_HOME/pipewire-media-session (or $HOME/.config/pipewire-media-session as a fallback when XDG_CONFIG_HOME is not set).
  • Device support
    • Bluetooth sources and sinks should work better now.
    • There is now also a new bluetooth backend using hsphfpd.
    • fix the ALSA UCM Off profile for alsa pcm devices
    • improve ALSA port and profile switching. The ACP device will now switch to the best port and profile when availability changes.
  • PulseAudio layer improvements
    • Implement some more callbacks. The pulse layer will now also notify applications of stream moved, started and latency changes.
    • Fix error code when an object was not found. We now return PA_ERR_NOENTITY instead of PA_ERR_INVALID.
    • Add some support for loading new null sinks. Applications such as pulseeffects use this. Note that pulseeffects does not yet work reliably but can start now.
    • Improve handling of profile and port updates, it should work much more reliable now. Apps should now also again receive volume updates from sinks/sources.
    • Fix compatibility:
      • openal-soft 1.20
      • pavucontrol (checks PA_ERR_NOENTITY)
  • JACK layer improvements
    • improve default source and sink handling. It was not updated correctly in all cases.
    • add samplerate and period to the pw-jack wrapper to easily configure the desired samplerate and perdiod for the app.
  • ALSA plugin improvements
    • Add a mixer entry in the alsa config file.
    • Implement support for planar types, rework the processing function to make it more robust.
    • refuse to load the alsa plugin when linked against 0.2. This catches some old apps linked against 0.2 that want to use the alsa plugin.
    • Fix compatibility:
      • linphone (ALSA SIGFPE when _status() is called before _prepare()).

comment:3 by Bruce Dubbs, 4 years ago


26.5 Elapsed Time -  pipewire-0.3.11
1140 /usr/src/pipewire/pipewire-0.3.11.tar.gz SIZE (1.113 MB)
89212 kilobytes BUILD SIZE (87.121 MB)
md5sum : edadeacaff576fc9c9438a9706f92d42  /usr/src/pipewire/pipewire-0.3.11.tar.gz

With tests. Overall seems very clean. Only stats need to be changed.

comment:4 by Douglas R. Reno, 4 years ago

Owner: changed from Douglas R. Reno to Bruce Dubbs
Status: assignednew

comment:5 by Bruce Dubbs, 4 years ago

Resolution: fixed
Status: newclosed

Fixed at revision 23761.

comment:6 by Bruce Dubbs, 4 years ago

Resolution: fixed
Status: closedreopened
Summary: pipewire-0.3.11pipewire-0.3.12

Now version 0.3.12

comment:7 by Bruce Dubbs, 4 years ago

PipeWire 0.3.12

This is a bugfix release that is API and ABI compatible with previous 0.3.x releases.

  • PipeWire improvements
    • the channelmap converter now handles unknown and strange channellayouts much better.
    • the resampler is now cleared correctly, avoiding clicks and pops at the start of sound.
    • Fixes for various crasher bugs. (paplay drain, vlc shutdown, pactl info, ...)
    • Fix a race condition in the node state changes that caused all kinds of sync and other issues (vlc, mpv, ...)
    • Improve the binary name property of applications
    • Fix the scheduling again of nodes that always need a driver such as the jack clients.
  • Session manager improvements
    • fix routing to default nodes. Sometimes nodes were not routed to the default node (bluetooth)
  • Device support
    • disable channelmap from ALSA by default. This is what PulseAudio does and thus provides better compatibility.
    • fix a bug in how the resampler was used in the ALSA source, causing distortion and errors when using low latency capture clients. (Discord, webrtc, ...)
    • Small bluetooth improvements. More work is needed for reliable bluetooth playback.
  • GStreamer plugins
    • the device provider now stops the processing loop before shutting down, which avoids crashes (gnome-initial-setup).
  • PulseAudio layer improvements
    • the buffer attributes were reworked to ensure compatibility with many more applications such as mpv and audacious.
    • the pulseaudio layer will now try hard to not hand out invalid channel maps to the application. (avoids crashes in gnome-volume-control). The channel map will now also look more like what PulseAudio does.
    • the @DEFAULT_SINK/SOURCE/MONITOR@ wildcards now work. This fixes the problem with volume keys when they are bound to scripts using pactl and the default sink/source wildcards.
    • the PIPEWIRE_LATENCY environment variable now works again
    • Fix some leaks of ports and port info. Also fix the leak of the context when the mainloop is stopped.
    • The sink/source format_info array is now filled up completely, this is actually not implemented yet in the real PulseAudio.
  • JACK layer improvements
    • jack now returns version 3.0.0 and has PipeWire in the version string so that apps can report this.

comment:8 by Bruce Dubbs, 4 years ago

Resolution: fixed
Status: reopenedclosed

Fixed at revision 23762.

Note: See TracTickets for help on using tickets.