Commit graph

9282 commits

Author SHA1 Message Date
Wim Taymans
73073eb33f alsa: redirect alsa output to log file
Make a custom snd_output object that redirects output to the log
file.
2022-08-05 14:01:37 +02:00
Wim Taymans
0dc5a08bfd alsa: debug hw_params 2022-08-05 13:00:44 +02:00
Wim Taymans
a9ced45d4b acp: add debug for open and close
Debug open and close calls.
Make pa_alsa_close to close the device.
2022-08-05 12:31:28 +02:00
Wim Taymans
34c1c1614e alsa: add some more debug
See #2614
2022-08-04 14:25:24 +02:00
Wim Taymans
1118c35956 acp: handle some more mixer NULL cases
These are in pulseaudio handled with asserts.

Fixes #2612
2022-08-04 09:06:28 +02:00
Anders Jonsson
df58a201f5 po: Update Swedish translation 2022-08-03 15:51:36 +00:00
Wim Taymans
6c5ec409bf audioconvert: Improve buffer params
Scale the default size of the buffer with the sample rate conversion
factor.
2022-08-03 17:21:48 +02:00
Wim Taymans
6144d037ce acp: handle NULL mixer_handle
It can be NULL for some UCM configs.

Fixes #2612
2022-08-03 12:34:13 +02:00
Wim Taymans
e22e522ab8 alsa-pcm: limit the target to the buffer size
Don't try to wait for more samples than can fit in the ringbuffer.

See #2603
2022-08-03 12:22:38 +02:00
Wim Taymans
a23d154952 audioconvert: always use DSP rate on DSP ports
Always use the DSP rate on DSP ports for format conversion, not the
previous used rate.

This avoids some resampler reconfiguration as it negotiates a non-passthrough
rate conversion and then switches to passthrough when the rate correction is
done to match the graph rate.

See #2614
2022-08-03 11:32:10 +02:00
Frédéric Danis
e7f17e1523 bluez5: use lower case for UUIDs
BlueZ uses lower case version for the UUIDs in its DBus interface.
This will simplify future UUID tests.
2022-08-03 06:15:54 +00:00
Frédéric Danis
76adcfaabe bluez5: Add AAC decoder 2022-08-02 11:12:25 +02:00
Pauli Virtanen
6d4d77802a pulse-server: give Manager permission for Flatpak apps with devices=all
Some Flatpak apps want to manage sound fully (change default outputs,
move streams from other applications).  Real Pulseaudio always grants
full permissions, but pipewire-pulse doesn't, which breaks some
applications, e.g. Zoom.

Work around this by granting the manager permission if the application
also has devices=all access.

To do things properly, this probably should use the Portal media roles,
but this would need further work elsewhere.
2022-08-01 19:36:00 +00:00
Pauli Virtanen
0e12242a1b modules: set pipewire.access.portal.app_id in access & pulse-server
When detecting a access=flatpak application, set also
pipewire.access.portal.app_id, if determined
2022-08-01 19:36:00 +00:00
Pauli Virtanen
3730e54484 modules: support getting app_id in pw_check_flatpak
Support getting the Flatpak application ID from the .flatpak-info file,
similarly as what xdg-desktop-portal does.
2022-08-01 19:36:00 +00:00
Pauli Virtanen
5e5339ce6c modules: refactor check_flatpak to a common place
Move check_flatpak used by module-access and module-protocol-pulse
to a common flatpak-utils.h
2022-08-01 19:36:00 +00:00
Isa Mert Gurbuz
f32017c874 bluez5: Disable hw-volume for Soundcore Motion B 2022-08-01 19:34:39 +00:00
NorwayFun
d8ae1a50dc Georgian translation 2022-08-01 19:32:57 +00:00
James Hilliard
4c43d39a64 impl-link: only free format in do_negotiate if copied
Fixes:
==716== Invalid free() / delete / delete[] / realloc()
==716==    at 0x4846DED: free (vg_replace_malloc.c:872)
==716==    by 0x48ABF37: do_negotiate (impl-link.c:425)
==716==    by 0x48ACBEF: check_states (impl-link.c:701)
==716==    by 0x48DB34B: process_work_queue (work-queue.c:87)
==716==    by 0x4F8B2B3: source_event_func (loop.c:591)
==716==    by 0x4F8D03F: loop_iterate (loop.c:430)
==716==    by 0x48B1A4B: pw_main_loop_run (main-loop.c:148)
==716==    by 0x10962F: main (pipewire.c:131)
==716==  Address 0x1ffeffd520 is on thread 1's stack
==716==  4112 bytes below stack pointer
==716==

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
2022-08-01 19:30:54 +00:00
Pauli Virtanen
3579857a64 bluez5: opus: tweak ABR
Count retry from last non-good interval.  Minimum retry interval 5sec.
2022-08-01 19:23:07 +00:00
Pauli Virtanen
5724d405d6 bluez5: opus: better default bitrates
Use smaller bitrate caps, as it's not necessary to use all bandwidth
available.
2022-08-01 19:23:07 +00:00
Hubert Figuière
f1dfa9797b Issue #2570 - Use the xdg-portal-destkop of rtkit
- If the xdg-desktop-portal is there, use it instead of rtkit
- This allow setting the rt priorities within Flatpak
2022-08-01 19:19:24 +00:00
Barnabás Pőcze
aab15433c8 spa: aec: rename first argument of methods in spa_audio_aec_methods
The first parameter is a pointer to the object implementing the aec
interface, the name `object` is better than `data`.
2022-07-23 08:58:18 +00:00
Barnabás Pőcze
44e7817702 spa: aec: mark aec method tables const 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
51b5aafeaa pipewire: module-echo-cancel: remove line that does nothing 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
c2d357b5af spa: aec: null: remove unnecessary cast 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
e88df3a324 spa: aec: null: initialize variable when defined 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
98c0092ee7 spa: aec: null: specify vtable version 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
c9cc2fe6dc spa: aec: mark handle factory objects static 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
a506ddd799 spa: aec: webrtc: use static_cast to cast from void * 2022-07-23 08:58:18 +00:00
Barnabás Pőcze
35c011b955 spa: aec: webrtc: simplify webrtc_get_spa_bool() 2022-07-23 08:58:18 +00:00
Huang-Huang Bao
c5bce24f01
bluez5: correct type of arguments to a dbus function
The 3rd "value" arguments to dbus_message_iter_append_basic() should be the address of a basic-typed value.

Fixes #2591
2022-07-23 16:35:01 +08:00
Frédéric Danis
343ae88bbf bluez5: Simplify DBus append_basic_* helpers
String key is used in all calls to append_basic_variant_dict_entry() and
append_basic_array_variant_dict_entry().
2022-07-22 19:10:26 +00:00
Frédéric Danis
e560468800 bluez5: Removed unused variables in meson.build 2022-07-22 18:46:35 +02:00
Wim Taymans
b1b8b0985a audioconvert: fix rounding on arm neon
Add the neon functions to the test
2022-07-21 17:24:55 +02:00
Barnabás Pőcze
1db52856ff doc: tutorial3: change "returns value" to "return value" 2022-07-21 07:20:11 +00:00
Barnabás Pőcze
cb3e625fa8 doc: tutorial3: remove a line break 2022-07-21 07:20:11 +00:00
Barnabás Pőcze
606e0dcdab doc: tutorial3: do not return anything from roundtrip()
The return value was constant 0 and it was not used by the caller.
2022-07-21 07:20:11 +00:00
Barnabás Pőcze
94d405be3b doc: tutorial3: mark vtable static 2022-07-21 07:20:11 +00:00
Barnabás Pőcze
473809190b doc: tutorial3: do not use nested functions
Nested functions are a GNU C extension, they are
not supported by clang, and by GCC in C++ mode.
2022-07-21 07:20:11 +00:00
Barnabás Pőcze
04e65a86a1 doc: tutorial3: remove done variable
Use `pw_main_loop_quit()` alone, which should be enough
to cause `pw_main_loop_run()` to return. `pw_main_loop_run()`
only returns prematurely when there is an error, but since
there is no error handling in this example, that scenario
is ignored.
2022-07-21 07:20:11 +00:00
Barnabás Pőcze
f61bb3aef5 doc: tutorial3: do not spa_zero() the hook objects
`spa_hook_list_append()` zeroes the hooks when they
are inserted into the list of hooks.
2022-07-21 07:20:11 +00:00
Barnabás Pőcze
bb0cda3d94 doc: tutorial3: use tabs for indentation 2022-07-21 07:20:11 +00:00
Pauli Virtanen
b3db13be10 stream: don't do overlapping assignment of union members
Coverity does not like assigning union member to another. Don't use
union here, as it's not needed.
2022-07-21 07:12:22 +00:00
Pauli Virtanen
67c41336db bluez5: fix minor issues / warnings
Make static analysis happier.
2022-07-21 07:12:22 +00:00
Wim Taymans
38b3d027ec audioconvert: remove S32_SCALE
We don't use it, we use S24_SCALE and then shift. Also adjust the
S32_MIN and S32_MAX values, based on S24 values.
2022-07-20 17:45:34 +02:00
Wim Taymans
862a0746e4 docs: fix ref 2022-07-20 15:49:09 +02:00
Barnabás Pőcze
5cdf4d6c64 spa: libcamera: remove unnecessary cast 2022-07-20 10:48:24 +00:00
Barnabás Pőcze
8bccad3ade spa: libcamera: only add "api.libcamera.location" property when available 2022-07-20 10:48:24 +00:00
Barnabás Pőcze
4072f63ab6 spa: libcamera: make cameraLoc() return a static string
There is no compelling reason to use `std::string`.
2022-07-20 10:48:24 +00:00