mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
utils: add debugable spa_memcpy
This commit is contained in:
parent
c2cb74a146
commit
74cf412f47
5 changed files with 25 additions and 14 deletions
|
|
@ -239,6 +239,17 @@ struct spa_param_info {
|
|||
strerror(_err); \
|
||||
})
|
||||
|
||||
#ifdef SPA_DEBUG_MEMCPY
|
||||
#define spa_memcpy(d,s,n) \
|
||||
({ \
|
||||
fprintf(stderr, "%s:%u %s() memcpy(%p, %p, %zd)\n", \
|
||||
__FILE__, __LINE__, __func__, (d), (s), (size_t)(n)); \
|
||||
memcpy(d,s,n); \
|
||||
})
|
||||
#else
|
||||
#define spa_memcpy(d,s,n) memcpy(d,s,n)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -716,9 +716,9 @@ again:
|
|||
l0 = SPA_MIN(n_bytes, maxsize - offs);
|
||||
l1 = n_bytes - l0;
|
||||
|
||||
memcpy(dst, src + offs, l0);
|
||||
spa_memcpy(dst, src + offs, l0);
|
||||
if (l1 > 0)
|
||||
memcpy(dst + l0, src, l1);
|
||||
spa_memcpy(dst + l0, src, l1);
|
||||
|
||||
state->ready_offset += n_bytes;
|
||||
|
||||
|
|
@ -811,9 +811,9 @@ push_frames(struct state *state,
|
|||
l0 = SPA_MIN(n_bytes, d[0].maxsize - offs);
|
||||
l1 = n_bytes - l0;
|
||||
|
||||
memcpy(SPA_MEMBER(d[0].data, offs, void), src, l0);
|
||||
spa_memcpy(SPA_MEMBER(d[0].data, offs, void), src, l0);
|
||||
if (l1 > 0)
|
||||
memcpy(d[0].data, src + l0, l1);
|
||||
spa_memcpy(d[0].data, src + l0, l1);
|
||||
|
||||
d[0].chunk->offset = index;
|
||||
d[0].chunk->size = n_bytes;
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ channelmix_copy_sse(void *data, int n_dst, void *dst[n_dst],
|
|||
}
|
||||
else if (v == VOLUME_NORM) {
|
||||
for (i = 0; i < n_dst; i++)
|
||||
memcpy(d[i], s[i], n_samples * sizeof(float));
|
||||
spa_memcpy(d[i], s[i], n_samples * sizeof(float));
|
||||
}
|
||||
else {
|
||||
for (i = 0; i < n_dst; i++) {
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ channelmix_copy(void *data, int n_dst, void *dst[n_dst],
|
|||
}
|
||||
else if (v == VOLUME_NORM) {
|
||||
for (i = 0; i < n_dst; i++)
|
||||
memcpy(d[i], s[i], n_samples * sizeof(float));
|
||||
spa_memcpy(d[i], s[i], n_samples * sizeof(float));
|
||||
}
|
||||
else {
|
||||
for (i = 0; i < n_dst; i++)
|
||||
|
|
|
|||
|
|
@ -95,13 +95,13 @@ conv_copy8d(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT src
|
|||
{
|
||||
uint32_t i;
|
||||
for (i = 0; i < n_channels; i++)
|
||||
memcpy(dst[i], src[i], n_samples);
|
||||
spa_memcpy(dst[i], src[i], n_samples);
|
||||
}
|
||||
|
||||
static void
|
||||
conv_copy8(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT src[], uint32_t n_channels, uint32_t n_samples)
|
||||
{
|
||||
memcpy(dst[0], src[0], n_samples * n_channels);
|
||||
spa_memcpy(dst[0], src[0], n_samples * n_channels);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -110,13 +110,13 @@ conv_copy16d(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT sr
|
|||
{
|
||||
uint32_t i;
|
||||
for (i = 0; i < n_channels; i++)
|
||||
memcpy(dst[i], src[i], n_samples * sizeof(int16_t));
|
||||
spa_memcpy(dst[i], src[i], n_samples * sizeof(int16_t));
|
||||
}
|
||||
|
||||
static void
|
||||
conv_copy16(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT src[], uint32_t n_channels, uint32_t n_samples)
|
||||
{
|
||||
memcpy(dst[0], src[0], n_samples * sizeof(int16_t) * n_channels);
|
||||
spa_memcpy(dst[0], src[0], n_samples * sizeof(int16_t) * n_channels);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -124,13 +124,13 @@ conv_copy24d(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT sr
|
|||
{
|
||||
uint32_t i;
|
||||
for (i = 0; i < n_channels; i++)
|
||||
memcpy(dst[i], src[i], n_samples * 3);
|
||||
spa_memcpy(dst[i], src[i], n_samples * 3);
|
||||
}
|
||||
|
||||
static void
|
||||
conv_copy24(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT src[], uint32_t n_channels, uint32_t n_samples)
|
||||
{
|
||||
memcpy(dst[0], src[0], n_samples * 3 * n_channels);
|
||||
spa_memcpy(dst[0], src[0], n_samples * 3 * n_channels);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -138,13 +138,13 @@ conv_copy32d(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT sr
|
|||
{
|
||||
uint32_t i;
|
||||
for (i = 0; i < n_channels; i++)
|
||||
memcpy(dst[i], src[i], n_samples * sizeof(int32_t));
|
||||
spa_memcpy(dst[i], src[i], n_samples * sizeof(int32_t));
|
||||
}
|
||||
|
||||
static void
|
||||
conv_copy32(void *data, void * SPA_RESTRICT dst[], const void * SPA_RESTRICT src[], uint32_t n_channels, uint32_t n_samples)
|
||||
{
|
||||
memcpy(dst[0], src[0], n_samples * sizeof(int32_t) * n_channels);
|
||||
spa_memcpy(dst[0], src[0], n_samples * sizeof(int32_t) * n_channels);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue