Skip to content
Snippets Groups Projects
Commit f485c595 authored by Apertis CI's avatar Apertis CI
Browse files

Import Upstream version 1.0.0

parent 5d5095b2
No related branches found
Tags upstream/1.0.0
4 merge requests!63Update from debian/bookworm-backports for apertis/v2024-updates,!62Update from debian/bookworm-backports for apertis/v2024-updates,!60Update from debian/bookworm-backports for apertis/v2024-updates,!57Update from debian/bookworm-backports for apertis/v2025dev1
Pipeline #655089 passed
Showing
with 408 additions and 10 deletions
......@@ -25,8 +25,8 @@ include:
.fedora:
variables:
# Update this tag when you want to trigger a rebuild
FDO_DISTRIBUTION_TAG: '2023-05-31.0'
FDO_DISTRIBUTION_VERSION: '37'
FDO_DISTRIBUTION_TAG: '2023-11-22.0'
FDO_DISTRIBUTION_VERSION: '39'
FDO_DISTRIBUTION_PACKAGES: >-
alsa-lib-devel
avahi-devel
......@@ -75,6 +75,7 @@ include:
pulseaudio-utils
openal-soft
readline-devel
pandoc
# Uncommenting the following two lines and disabling the meson entry above
# will re-enable use of Meson via pip but please consider using a newer distro
# image first or making the build system compatible instead! This is because
......
# PipeWire 1.0.0 (2023-11-26)
The PipeWire project is immensely proud to announce the 1.0 release
of PipeWire.
It is API and ABI compatible with previous 0.3.x releases.
"PipeWire represents the next evolution of audio handling for Linux, taking
the best of both pro-audio (JACK) and desktop audio servers (PulseAudio) and
linking them into a single, seamless, powerful new system."
- Paul Davis, JACK and Ardour author
"What exciting times! PipeWire 1.0 is the culmination of 15 years of
Linux audio expertise, blending lessons from PulseAudio into a high-performance,
flexible, and user-friendly foundation for audio and multimedia on Linux.
I'm looking forward to the next decade of progress in the free software
consumer and professional audio space!."
- Arun Raghavan, PulseAudio developer/maintainer.
"I'm thrilled to witness the first stable release of PipeWire after five years
of collaboration with its remarkable community, pushing the boundaries of
multimedia integration in the Linux ecosystem one step further.”
- George Kiagiadakis, WirePlumber author
"From the beginning of the libcamera project, we have always seen
PipeWire as the solution to handle desktop and mobile integration and
give a seemless multimedia integration to users while providing security
features and resource sharing between applications."
- Kieran Bingham, libcamera author
Happy Holidays!
## Highlights
- Fix a memfd/dmabuf leak when uploading buffers while shutting down.
- Handle concurrent jack_port_get_buffer() calls because ardour seems to
be doing this.
- Improve time reporting (less jitter) in ALSA when using IRQ.
- Many doc improvements.
## PipeWire
- Respect PIPEWIRE_DLCLOSE everywhere, remove pw_in_valgrind().
- Remove a warning when a client tries to change ignored properties.
## Modules
- Fix a memfd/dmabuf leak when uploading buffers while shutting down.
- Fix a potential segfault when copying mix structures. (#3658)
- Avoid races in setrlimit in module-rt.
- Fix a memory leak in filter-chain.
- Set rtp.ptime on senders, not receivers.
- The ROC modules were ported to ROC 0.3
## SPA
- Improve time reporting (less jitter) in ALSA when using IRQ. (#3657)
- Add latency param query in libcamera.
- Fix some compiler warnings.
- The EVL plugin was updated.
## Bluetooth
- LC3 codec and compatibility improvements.
## Pulse server
- Fix emission of events when a sink/source state changes. (#3660)
## JACK
- Improve transport and time handling. Use unique ids to make consistent
snapshots of the current time and transport.
- Avoid enumerating port params that we are not going to use.
- Optimize buffer reuse.
- Handle concurrent jack_port_get_buffer() calls because ardour seems to
be doing this. (#3632)
## Docs
- Many doc improvements.
- Add man pages for pw-dump, pw-loopback, modules, pipewire-pulse.
- Manpages are now made with Doxygen.
- Add docs for pulse-modules
Older versions:
# PipeWire 0.3.85 (2023-11-16)
This is the fifth (and last) 1.0 release candidate that is API and ABI
compatible with previous 0.3.x releases.
## Highlights
- Fix an issue where a link could end up paused while not negotiated.
- Fix an infinite recursion issue when finding runnable nodes.
- Support XDG base directories when loading ACP config.
- Fix MIDI event recording preview in Ardour.
- Many more small fixes, cleanups and improvements.
## PipeWire
- Fix an issue where a link could end up paused while not negotiated.
(#3619)
- Fix an infinite recursion issue when finding runnable nodes by stopping
the scan on feedback links around the driver. (#3621)
- The system service now has better socket permissions.
## Modules
- Add support for uclamp. This allows the scheduler to make better informed
decisions about where tasks should be placed, and what pstate to set
for the CPU it is running on.
- Emit warnings when applications are not doing the right locking instead
of crashing.
- Improve media.name for RAOP sinks. (#3801)
- Support pause/resume in pipe-tunnel. (#3197)
- Remove time rlimit when probing for realtime to avoid SIGXCPU.
## SPA
- Fix a bug where the resampler would be activated even when there is an
ALSA pitch element. (#3628)
- Improve resume from suspend in ALSA. (#3646)
- Add option to expose ALSA controls as prop params.
- Support XDG base directories when loading ACP config. This makes it possible
to override the ACP config files.
## Bluetooth
- Schedule nodes in the same ISO group together.
- More BAP fixes and cleanups.
## JACK
- Fix MIDI events from peer ports. This makes the MIDI event recording preview
of Ardour work correctly.
## GStreamer
- Fix some error handling in the source and sink.
## ALSA plugin
- Improve poll descriptor handling. (#3648)
## Docs
- Many improvements to the layout and organization.
# PipeWire 0.3.84 (2023-11-02)
This is the fourth 1.0 release candidate that is API and ABI compatible
......@@ -56,9 +192,6 @@ with previous 0.3.x releases.
## ALSA
- The ALSA plugin now handles NULL values from mmap_areas. (#3600)
Older versions:
# PipeWire 0.3.83 (2023-10-19)
This is the third 1.0 release candidate that is API and ABI compatible
......
PROJECT_NAME = PipeWire
PROJECT_NUMBER = @PACKAGE_VERSION@
OUTPUT_DIRECTORY = "@output_directory@"
FULL_PATH_NAMES = NO
FULL_PATH_NAMES = YES
JAVADOC_AUTOBRIEF = YES
TAB_SIZE = 8
OPTIMIZE_OUTPUT_FOR_C = YES
......@@ -26,6 +26,9 @@ EXAMPLE_PATH = "@top_srcdir@/src/examples" \
"@top_srcdir@/doc"
EXAMPLE_PATTERNS = "*.c"
GENERATE_MAN = YES
MAN_EXTENSION = 3
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
IGNORE_PREFIX = pw_ \
......@@ -36,6 +39,9 @@ GENERATE_TREEVIEW = YES
SEARCHENGINE = YES
GENERATE_LATEX = NO
TOC_INCLUDE_HEADINGS = 0
LAYOUT_FILE = @layout@
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
PREDEFINED = PA_C_DECL_BEGIN= \
......
<doxygenlayout version="1.0">
<navindex>
<tab type="mainpage" visible="yes" title=""/>
<tab type="pages" visible="yes" title="Pages" intro=""/>
<tab type="modules" visible="yes" title="API Reference" intro="" />
<tab type="namespaces" visible="no" title="">
<tab type="namespacelist" visible="yes" title="" intro=""/>
<tab type="namespacemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="concepts" visible="no" title="">
</tab>
<tab type="interfaces" visible="no" title="">
<tab type="interfacelist" visible="yes" title="" intro=""/>
<tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="interfacehierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="classes" visible="yes" title="">
<tab type="classlist" visible="yes" title="" intro=""/>
<tab type="classindex" visible="yes" title=""/>
<tab type="hierarchy" visible="yes" title="" intro=""/>
<tab type="classmembers" visible="no" title="" intro=""/>
</tab>
<tab type="structs" visible="no" title="">
<tab type="structlist" visible="yes" title="" intro=""/>
<tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
</tab>
<tab type="exceptions" visible="no" title="">
<tab type="exceptionlist" visible="yes" title="" intro=""/>
<tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="files" visible="yes" title="">
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="no" title="" intro=""/>
</tab>
<tab type="examples" visible="yes" title="" intro=""/>
</navindex>
<!-- Layout definition for a class page -->
<class>
<briefdescription visible="yes"/>
<includes visible="$SHOW_HEADERFILE"/>
<inheritancegraph visible="$CLASS_GRAPH"/>
<collaborationgraph visible="$COLLABORATION_GRAPH"/>
<memberdecl>
<nestedclasses visible="yes" title=""/>
<publictypes title=""/>
<services title=""/>
<interfaces title=""/>
<publicslots title=""/>
<signals title=""/>
<publicmethods title=""/>
<publicstaticmethods title=""/>
<publicattributes title=""/>
<publicstaticattributes title=""/>
<protectedtypes title=""/>
<protectedslots title=""/>
<protectedmethods title=""/>
<protectedstaticmethods title=""/>
<protectedattributes title=""/>
<protectedstaticattributes title=""/>
<packagetypes title=""/>
<packagemethods title=""/>
<packagestaticmethods title=""/>
<packageattributes title=""/>
<packagestaticattributes title=""/>
<properties title=""/>
<events title=""/>
<privatetypes title=""/>
<privateslots title=""/>
<privatemethods title=""/>
<privatestaticmethods title=""/>
<privateattributes title=""/>
<privatestaticattributes title=""/>
<friends title=""/>
<related title="" subtitle=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<enums title=""/>
<services title=""/>
<interfaces title=""/>
<constructors title=""/>
<functions title=""/>
<related title=""/>
<variables title=""/>
<properties title=""/>
<events title=""/>
</memberdef>
<allmemberslink visible="yes"/>
<usedfiles visible="$SHOW_USED_FILES"/>
<authorsection visible="yes"/>
</class>
<!-- Layout definition for a namespace page -->
<namespace>
<briefdescription visible="yes"/>
<memberdecl>
<nestednamespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<concepts visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
</memberdef>
<authorsection visible="yes"/>
</namespace>
<!-- Layout definition for a concept page -->
<concept>
<briefdescription visible="yes"/>
<includes visible="$SHOW_HEADERFILE"/>
<definition visible="yes" title=""/>
<detaileddescription title=""/>
<authorsection visible="yes"/>
</concept>
<!-- Layout definition for a file page -->
<file>
<briefdescription visible="yes"/>
<includes visible="$SHOW_INCLUDE_FILES"/>
<includegraph visible="$INCLUDE_GRAPH"/>
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
<sourcelink visible="yes"/>
<memberdecl>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<concepts visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
</memberdef>
<authorsection/>
</file>
<!-- Layout definition for a group page -->
<group>
<briefdescription visible="yes"/>
<groupgraph visible="$GROUP_GRAPHS"/>
<memberdecl>
<nestedgroups visible="yes" title=""/>
<dirs visible="yes" title=""/>
<files visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<concepts visible="yes" title=""/>
<classes visible="yes" title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<defines title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
<membergroups visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<memberdef>
<pagedocs/>
<inlineclasses title=""/>
<typedefs title=""/>
<sequences title=""/>
<dictionaries title=""/>
<enums title=""/>
<enumvalues title=""/>
<defines title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
</memberdef>
<authorsection visible="yes"/>
</group>
<!-- Layout definition for a directory page -->
<directory>
<briefdescription visible="yes"/>
<directorygraph visible="yes"/>
<memberdecl>
<dirs visible="yes"/>
<files visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
</directory>
</doxygenlayout>
......@@ -17,3 +17,24 @@
--fragment-link: #729fcf;
}
}
#nav-tree .arrow {
opacity: 1;
padding-right: 0.25em;
}
.textblock h1 {
font-size: 150%;
}
.textblock h2 {
font-size: 100%;
}
.textblock h3, .textblock h4, .textblock h5, .textblock h6 {
font-size: 100%;
font-style: italic;
font-size: medium;
}
.textblock dl.section dd {
margin-left: 2rem;
}
......@@ -59,6 +59,7 @@ digraph API {
It is common for clients to use both the \ref api_pw_core and the \ref api_pw_impl
and both APIs are provided by the same library.
- \subpage page_spa
- \subpage page_client_impl
- \subpage page_proxy
- \subpage page_streams
......
File moved
File moved
File moved
File moved
File moved
......@@ -17,7 +17,7 @@ PipeWire ships with the following components:
- A \ref page_daemon that implements the IPC and graph processing.
- An example \ref page_session_manager that manages objects in the \ref page_daemon.
- A set of \ref page_tools to introspect and use the \ref page_daemon.
- A set of \ref page_programs to introspect and use the \ref page_daemon.
- A \ref page_library to develop PipeWire applications and plugins (\ref
page_tutorial "tutorial").
- The \ref page_spa used by both the \ref page_daemon and in the \ref
......
File moved
File moved
File moved
File moved
File moved
/** \page page_pipewire PipeWire Design
/** \page page_internals Internals
# Internals
......@@ -17,10 +17,8 @@
# Components
- \subpage page_daemon
- \subpage page_tools
- \subpage page_session_manager
# Backends
- \subpage page_pulseaudio
......
File moved
File moved
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment