mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 17:09:10 -07:00
media-libs/libpulse: remove unused patches
Signed-off-by: Michael Mair-Keimberger <mmk@levelnine.at> Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
This commit is contained in:
committed by
Conrad Kostecki
parent
49ae1e7bdc
commit
7e7cb3e8ab
@@ -1,35 +0,0 @@
|
||||
commit 86c5fbab5778685e19b5a4a9b8eb04ca90dff780
|
||||
Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
|
||||
Date: Sun Feb 5 19:49:10 2023 +0300
|
||||
|
||||
alsa-util: Add more standard sample rates.
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/776>
|
||||
|
||||
diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
|
||||
index 9f35cb20f..fd30f18bd 100644
|
||||
--- a/src/modules/alsa/alsa-util.c
|
||||
+++ b/src/modules/alsa/alsa-util.c
|
||||
@@ -1430,7 +1430,8 @@ unsigned int *pa_alsa_get_supported_rates(snd_pcm_t *pcm, unsigned int fallback_
|
||||
32000, 44100, 48000,
|
||||
64000, 88200, 96000,
|
||||
128000, 176400, 192000,
|
||||
- 384000 };
|
||||
+ 352800, 384000,
|
||||
+ 705600, 768000 };
|
||||
bool supported[PA_ELEMENTSOF(all_rates)] = { false, };
|
||||
snd_pcm_hw_params_t *hwparams;
|
||||
unsigned int i, j, n, *rates = NULL;
|
||||
diff --git a/src/pulse/sample.h b/src/pulse/sample.h
|
||||
index 35346a865..65c0c5d6b 100644
|
||||
--- a/src/pulse/sample.h
|
||||
+++ b/src/pulse/sample.h
|
||||
@@ -128,7 +128,7 @@ PA_C_DECL_BEGIN
|
||||
#define PA_CHANNELS_MAX 32U
|
||||
|
||||
/** Maximum allowed sample rate */
|
||||
-#define PA_RATE_MAX (48000U*8U)
|
||||
+#define PA_RATE_MAX (48000U*16U)
|
||||
|
||||
/** Sample format */
|
||||
typedef enum pa_sample_format {
|
||||
@@ -1,122 +0,0 @@
|
||||
commit 300db779224625144d6279d230c2daa857c967d8
|
||||
Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
|
||||
Date: Thu Feb 9 13:28:29 2023 +0300
|
||||
|
||||
pstream: Pass frame size to keep split memblock parts aligned
|
||||
|
||||
`pa_pstream_send_memblock()` would split incoming memblock into parts not
|
||||
exceeding maximum pool block size.
|
||||
|
||||
To make sure split parts of memblock are still frame-aligned add new `align` arg
|
||||
to `pa_pstream_send_memblock`, find out required alignment from stream sample
|
||||
format and pass it there. Bump default alignment to 256 which is good up to
|
||||
32bit 64ch frames.
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/780>
|
||||
|
||||
diff --git a/src/modules/module-tunnel.c b/src/modules/module-tunnel.c
|
||||
index 61f427bd3..ab094ba4e 100644
|
||||
--- a/src/modules/module-tunnel.c
|
||||
+++ b/src/modules/module-tunnel.c
|
||||
@@ -676,7 +676,7 @@ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offse
|
||||
* IO thread context where the rest of the messages are
|
||||
* dispatched. Yeah, ugly, but I am a lazy bastard. */
|
||||
|
||||
- pa_pstream_send_memblock(u->pstream, u->channel, 0, PA_SEEK_RELATIVE, chunk);
|
||||
+ pa_pstream_send_memblock(u->pstream, u->channel, 0, PA_SEEK_RELATIVE, chunk, pa_frame_size(&u->sink->sample_spec));
|
||||
|
||||
u->receive_counter += chunk->length;
|
||||
|
||||
diff --git a/src/pulse/stream.c b/src/pulse/stream.c
|
||||
index 0aa627396..3585b27e8 100644
|
||||
--- a/src/pulse/stream.c
|
||||
+++ b/src/pulse/stream.c
|
||||
@@ -1535,7 +1535,7 @@ int pa_stream_write_ext_free(
|
||||
s->write_memblock = NULL;
|
||||
s->write_data = NULL;
|
||||
|
||||
- pa_pstream_send_memblock(s->context->pstream, s->channel, offset, seek, &chunk);
|
||||
+ pa_pstream_send_memblock(s->context->pstream, s->channel, offset, seek, &chunk, pa_frame_size(&s->sample_spec));
|
||||
pa_memblock_unref(chunk.memblock);
|
||||
|
||||
} else {
|
||||
@@ -1569,7 +1569,7 @@ int pa_stream_write_ext_free(
|
||||
pa_memblock_release(chunk.memblock);
|
||||
}
|
||||
|
||||
- pa_pstream_send_memblock(s->context->pstream, s->channel, t_offset, t_seek, &chunk);
|
||||
+ pa_pstream_send_memblock(s->context->pstream, s->channel, t_offset, t_seek, &chunk, pa_frame_size(&s->sample_spec));
|
||||
|
||||
t_offset = 0;
|
||||
t_seek = PA_SEEK_RELATIVE;
|
||||
diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c
|
||||
index 672182fbc..1342dee10 100644
|
||||
--- a/src/pulsecore/protocol-native.c
|
||||
+++ b/src/pulsecore/protocol-native.c
|
||||
@@ -1260,7 +1260,7 @@ static void native_connection_send_memblock(pa_native_connection *c) {
|
||||
if (schunk.length > r->buffer_attr.fragsize)
|
||||
schunk.length = r->buffer_attr.fragsize;
|
||||
|
||||
- pa_pstream_send_memblock(c->pstream, r->index, 0, PA_SEEK_RELATIVE, &schunk);
|
||||
+ pa_pstream_send_memblock(c->pstream, r->index, 0, PA_SEEK_RELATIVE, &schunk, pa_memblockq_get_base(r->memblockq));
|
||||
|
||||
pa_memblockq_drop(r->memblockq, schunk.length);
|
||||
pa_memblock_unref(schunk.memblock);
|
||||
@@ -2535,7 +2535,7 @@ static void setup_srbchannel(pa_native_connection *c, pa_mem_type_t shm_type) {
|
||||
mc.memblock = srbt.memblock;
|
||||
mc.index = 0;
|
||||
mc.length = pa_memblock_get_length(srbt.memblock);
|
||||
- pa_pstream_send_memblock(c->pstream, 0, 0, 0, &mc);
|
||||
+ pa_pstream_send_memblock(c->pstream, 0, 0, 0, &mc, 0);
|
||||
|
||||
c->srbpending = srb;
|
||||
return;
|
||||
diff --git a/src/pulsecore/pstream.c b/src/pulsecore/pstream.c
|
||||
index 7147b776a..ff62f464b 100644
|
||||
--- a/src/pulsecore/pstream.c
|
||||
+++ b/src/pulsecore/pstream.c
|
||||
@@ -82,6 +82,10 @@ typedef uint32_t pa_pstream_descriptor[PA_PSTREAM_DESCRIPTOR_MAX];
|
||||
*/
|
||||
#define FRAME_SIZE_MAX_ALLOW (1024*1024*16)
|
||||
|
||||
+/* Default memblock alignment used with pa_pstream_send_memblock()
|
||||
+ */
|
||||
+#define DEFAULT_PSTREAM_MEMBLOCK_ALIGN (256)
|
||||
+
|
||||
PA_STATIC_FLIST_DECLARE(items, 0, pa_xfree);
|
||||
|
||||
struct item_info {
|
||||
@@ -475,7 +479,7 @@ void pa_pstream_send_packet(pa_pstream*p, pa_packet *packet, pa_cmsg_ancil_data
|
||||
p->mainloop->defer_enable(p->defer_event, 1);
|
||||
}
|
||||
|
||||
-void pa_pstream_send_memblock(pa_pstream*p, uint32_t channel, int64_t offset, pa_seek_mode_t seek_mode, const pa_memchunk *chunk) {
|
||||
+void pa_pstream_send_memblock(pa_pstream*p, uint32_t channel, int64_t offset, pa_seek_mode_t seek_mode, const pa_memchunk *chunk, size_t align) {
|
||||
size_t length, idx;
|
||||
size_t bsm;
|
||||
|
||||
@@ -492,6 +496,11 @@ void pa_pstream_send_memblock(pa_pstream*p, uint32_t channel, int64_t offset, pa
|
||||
|
||||
bsm = pa_mempool_block_size_max(p->mempool);
|
||||
|
||||
+ if (align == 0)
|
||||
+ align = DEFAULT_PSTREAM_MEMBLOCK_ALIGN;
|
||||
+
|
||||
+ bsm = (bsm / align) * align;
|
||||
+
|
||||
while (length > 0) {
|
||||
struct item_info *i;
|
||||
size_t n;
|
||||
diff --git a/src/pulsecore/pstream.h b/src/pulsecore/pstream.h
|
||||
index 2bff270ad..88bdca4cc 100644
|
||||
--- a/src/pulsecore/pstream.h
|
||||
+++ b/src/pulsecore/pstream.h
|
||||
@@ -51,7 +51,7 @@ void pa_pstream_unlink(pa_pstream *p);
|
||||
int pa_pstream_attach_memfd_shmid(pa_pstream *p, unsigned shm_id, int memfd_fd);
|
||||
|
||||
void pa_pstream_send_packet(pa_pstream*p, pa_packet *packet, pa_cmsg_ancil_data *ancil_data);
|
||||
-void pa_pstream_send_memblock(pa_pstream*p, uint32_t channel, int64_t offset, pa_seek_mode_t seek, const pa_memchunk *chunk);
|
||||
+void pa_pstream_send_memblock(pa_pstream*p, uint32_t channel, int64_t offset, pa_seek_mode_t seek, const pa_memchunk *chunk, size_t align);
|
||||
void pa_pstream_send_release(pa_pstream *p, uint32_t block_id);
|
||||
void pa_pstream_send_revoke(pa_pstream *p, uint32_t block_id);
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
commit 8fe50bbc31e11abf2f30864f1e2dbdaa16d0e1c3
|
||||
Author: Georg Chini <georg@chini.tk>
|
||||
Date: Thu Aug 25 08:11:04 2022 +0200
|
||||
|
||||
time-smoother-2: Fix stream time when stream starts paused
|
||||
|
||||
When a stream is started but has not yet called smoother_2_put(), pa_smoother_2_get()
|
||||
returns the time since the start of the stream even if the stream was started paused.
|
||||
When the stream is started paused, pa_smoother_2_get() should return 0 instead. This
|
||||
patch fixes the problem.
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/745>
|
||||
|
||||
diff --git a/src/pulsecore/time-smoother_2.c b/src/pulsecore/time-smoother_2.c
|
||||
index e14b52f72..ea7ec1b36 100644
|
||||
--- a/src/pulsecore/time-smoother_2.c
|
||||
+++ b/src/pulsecore/time-smoother_2.c
|
||||
@@ -295,7 +295,7 @@ pa_usec_t pa_smoother_2_get(pa_smoother_2 *s, pa_usec_t time_stamp) {
|
||||
|
||||
/* If the smoother has not started, just return system time since resume */
|
||||
if (!s->start_time) {
|
||||
- if (time_stamp >= s->resume_time)
|
||||
+ if (time_stamp >= s->resume_time && !s->paused)
|
||||
current_time = time_stamp - s->resume_time;
|
||||
else
|
||||
current_time = 0;
|
||||
@@ -1,27 +0,0 @@
|
||||
commit c3eae5d00cb79bd897049483126e75bb48a69cd1
|
||||
Author: flyingOwl <ofenfisch@googlemail.com>
|
||||
Date: Fri Dec 30 00:16:03 2022 +0100
|
||||
|
||||
time-smoother-2: Fix time calculation by comparing timestamps
|
||||
|
||||
This fixes the rare case of resume_time being bigger than time_stamp. Which
|
||||
happens sometimes when a gstreamer client is quickly seeking through a
|
||||
media file. The resulting integer underflow then causes a huge value in
|
||||
current_time which will break the playback.
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/764>
|
||||
|
||||
diff --git a/src/pulsecore/time-smoother_2.c b/src/pulsecore/time-smoother_2.c
|
||||
index ea7ec1b36..46cc5e9cc 100644
|
||||
--- a/src/pulsecore/time-smoother_2.c
|
||||
+++ b/src/pulsecore/time-smoother_2.c
|
||||
@@ -307,7 +307,8 @@ pa_usec_t pa_smoother_2_get(pa_smoother_2 *s, pa_usec_t time_stamp) {
|
||||
/* If we are initializing, add the time since resume to the card time at pause_time */
|
||||
else if (s->init) {
|
||||
current_time += (s->pause_time - s->start_time - s->time_offset - s->fixup_time) * s->time_factor;
|
||||
- current_time += (time_stamp - s->resume_time) * s->time_factor;
|
||||
+ if (time_stamp > s->resume_time)
|
||||
+ current_time += (time_stamp - s->resume_time) * s->time_factor;
|
||||
|
||||
/* Smoother is running, calculate current sound card time */
|
||||
} else
|
||||
Reference in New Issue
Block a user