Update version to 0.3.84
This commit is contained in:
parent
6f07b22f52
commit
a8a9fd0798
@ -1,57 +0,0 @@
|
||||
From adb41c410a8b861f69bb7793e819b98a39eab586 Mon Sep 17 00:00:00 2001
|
||||
From: Wim Taymans <wtaymans@redhat.com>
|
||||
Date: Fri, 20 Oct 2023 09:57:52 +0200
|
||||
Subject: [PATCH 1/2] stream: improve queued_buffers reporting
|
||||
|
||||
Also add the queued buffers in the converter to the pw_time.queued_buffers
|
||||
field. This means that queued_buffers + avail_buffers always equal the
|
||||
total amount of allocated buffers, which makes more sense.
|
||||
|
||||
Fixes #3592
|
||||
---
|
||||
src/pipewire/stream.c | 13 +++++++++----
|
||||
1 file changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/pipewire/stream.c b/src/pipewire/stream.c
|
||||
index 25051d64f..db2c3f7b7 100644
|
||||
--- a/src/pipewire/stream.c
|
||||
+++ b/src/pipewire/stream.c
|
||||
@@ -2340,6 +2340,7 @@ int pw_stream_get_time_n(struct pw_stream *stream, struct pw_time *time, size_t
|
||||
struct stream *impl = SPA_CONTAINER_OF(stream, struct stream, this);
|
||||
uintptr_t seq1, seq2;
|
||||
uint32_t buffered, quantum, index;
|
||||
+ int32_t avail_buffers;
|
||||
|
||||
do {
|
||||
seq1 = SPA_SEQ_READ(impl->seq);
|
||||
@@ -2358,19 +2359,23 @@ int pw_stream_get_time_n(struct pw_stream *stream, struct pw_time *time, size_t
|
||||
time->delay += (impl->latency.min_rate + impl->latency.max_rate) / 2;
|
||||
time->delay += ((impl->latency.min_ns + impl->latency.max_ns) / 2) * time->rate.denom / SPA_NSEC_PER_SEC;
|
||||
|
||||
+ avail_buffers = spa_ringbuffer_get_read_index(&impl->dequeued.ring, &index);
|
||||
+ avail_buffers = SPA_CLAMP(avail_buffers, 0, (int32_t)impl->n_buffers);
|
||||
+
|
||||
if (size >= offsetof(struct pw_time, queued_buffers))
|
||||
time->buffered = buffered;
|
||||
if (size >= offsetof(struct pw_time, avail_buffers))
|
||||
- time->queued_buffers = spa_ringbuffer_get_read_index(&impl->queued.ring, &index);
|
||||
+ time->queued_buffers = impl->n_buffers - avail_buffers;
|
||||
if (size >= sizeof(struct pw_time))
|
||||
- time->avail_buffers = spa_ringbuffer_get_read_index(&impl->dequeued.ring, &index);
|
||||
+ time->avail_buffers = avail_buffers;
|
||||
|
||||
pw_log_trace_fp("%p: %"PRIi64" %"PRIi64" %"PRIu64" %d/%d %"PRIu64" %"
|
||||
- PRIu64" %"PRIu64" %"PRIu64" %"PRIu64, stream,
|
||||
+ PRIu64" %"PRIu64" %"PRIu64" %"PRIu64" %d/%d", stream,
|
||||
time->now, time->delay, time->ticks,
|
||||
time->rate.num, time->rate.denom, time->queued,
|
||||
impl->dequeued.outcount, impl->dequeued.incount,
|
||||
- impl->queued.outcount, impl->queued.incount);
|
||||
+ impl->queued.outcount, impl->queued.incount,
|
||||
+ avail_buffers, impl->n_buffers);
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@ -1,40 +0,0 @@
|
||||
From 73ffb6cf7f3e82dd97038587cff138df54723b35 Mon Sep 17 00:00:00 2001
|
||||
From: Wim Taymans <wtaymans@redhat.com>
|
||||
Date: Sat, 21 Oct 2023 09:27:43 +0200
|
||||
Subject: [PATCH 2/2] module-echo-cancel: playback and source are async
|
||||
|
||||
The playback and source streams don't dequeue/queue buffers from
|
||||
the process function and so need to be marked async.
|
||||
|
||||
Fixes #3593
|
||||
---
|
||||
src/modules/module-echo-cancel.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/modules/module-echo-cancel.c b/src/modules/module-echo-cancel.c
|
||||
index ae3934658..ab3698308 100644
|
||||
--- a/src/modules/module-echo-cancel.c
|
||||
+++ b/src/modules/module-echo-cancel.c
|
||||
@@ -1002,7 +1002,8 @@ static int setup_streams(struct impl *impl)
|
||||
PW_DIRECTION_OUTPUT,
|
||||
PW_ID_ANY,
|
||||
PW_STREAM_FLAG_MAP_BUFFERS |
|
||||
- PW_STREAM_FLAG_RT_PROCESS,
|
||||
+ PW_STREAM_FLAG_RT_PROCESS |
|
||||
+ PW_STREAM_FLAG_ASYNC,
|
||||
params, n_params)) < 0) {
|
||||
spa_pod_dynamic_builder_clean(&b);
|
||||
return res;
|
||||
@@ -1036,7 +1037,8 @@ static int setup_streams(struct impl *impl)
|
||||
PW_ID_ANY,
|
||||
PW_STREAM_FLAG_AUTOCONNECT |
|
||||
PW_STREAM_FLAG_MAP_BUFFERS |
|
||||
- PW_STREAM_FLAG_RT_PROCESS,
|
||||
+ PW_STREAM_FLAG_RT_PROCESS |
|
||||
+ PW_STREAM_FLAG_ASYNC,
|
||||
params, n_params)) < 0) {
|
||||
spa_pod_dynamic_builder_clean(&b);
|
||||
return res;
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
%global majorversion 0
|
||||
%global minorversion 3
|
||||
%global microversion 83
|
||||
%global microversion 84
|
||||
|
||||
%global apiversion 0.3
|
||||
%global spaversion 0.2
|
||||
@ -9,7 +9,7 @@
|
||||
%global ms_version 0.4.2
|
||||
|
||||
# For rpmdev-bumpspec and releng automation
|
||||
%global baserelease 2
|
||||
%global baserelease 1
|
||||
|
||||
#global snapdate 20210107
|
||||
#global gitcommit b17db2cebc1a5ab2c01851d29c05f79cd2f262bb
|
||||
@ -76,8 +76,6 @@ Source0: https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/%{ver
|
||||
Source1: pipewire.sysusers
|
||||
|
||||
## upstream patches
|
||||
Patch0001: 0001-stream-improve-queued_buffers-reporting.patch
|
||||
Patch0002: 0002-module-echo-cancel-playback-and-source-are-async.patch
|
||||
|
||||
## upstreamable patches
|
||||
|
||||
@ -724,6 +722,9 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || :
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Nov 02 2023 Wim Taymans <wtaymans@redhat.com> - 0.3.84-1
|
||||
- Update version to 0.3.84
|
||||
|
||||
* Mon Oct 23 2023 Wim Taymans <wtaymans@redhat.com> - 0.3.83-2
|
||||
- Apply patches to fix openal delay and echo-cancel distortion
|
||||
|
||||
|
||||
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (pipewire-0.3.83.tar.gz) = 140d02242b1c76e4ced9bccaf306e7881103aa7081778b0e734a3eab12f3dae8c2824cca83d5e01c05817808c41da8280a4bf5a025448cff4ff9376219ae8050
|
||||
SHA512 (pipewire-0.3.84.tar.gz) = 60f7c154a17e41570b3793cd66ca00a2fcba72407fa1cbeb7dc7149436e25f8cdc7a4fba99ab66a8be2840bf9847965c2bb69b0b839f59882d815c6b2d0a4de9
|
||||
|
||||
Loading…
Reference in New Issue
Block a user