Julian Bouzas
ba96eecba0
sco-source: clean up and support different buffer sizes
2020-07-13 12:05:01 -04:00
Julian Bouzas
f743fff694
sco-source: add RateMatch IO
2020-07-13 12:04:56 -04:00
Wim Taymans
a459c1f226
acp: sync with master
2020-07-13 14:39:27 +02:00
Wim Taymans
be7ff66d0b
examples: clean up proxy
2020-07-13 13:12:20 +02:00
Wim Taymans
c173b23ac4
gst: use object_path to hide providers
...
Don't use the core info to manage the hiden providers, that info
can't be put there anymore because the session manager manages
the devices now.
Look at the object path instead and hide those with well known
prefixes.
2020-07-13 12:31:16 +02:00
Wim Taymans
8e9bbaf3dc
pipewiresrc: add option to resend last buffer on EOS
...
Add an option to resend the last buffer on EOS with an updated
timestamp. This can be used to make sure encoders fill up the
gap between last buffer and EOS, like with sparse streams from
screen capture.
2020-07-13 12:11:34 +02:00
Wim Taymans
a596cdbf2e
gst: return NULL for unknown format
2020-07-13 11:50:06 +02:00
Wim Taymans
031a8ea799
client-node: also unref the activation memblock
2020-07-10 16:11:16 +02:00
Wim Taymans
e58fcb95d0
client-node: remove the tag from the right pool
2020-07-10 16:10:45 +02:00
Wim Taymans
5cd495c93c
client-node: free old mapping only after importing the new
...
Keep the old mapping around until we manage to successfully import
the new mapping.
2020-07-10 12:57:55 +02:00
Wim Taymans
0430e7b8dc
client-node: clean up our memory mappings
...
Loop over our memory mappings and clean them up when we are destroyed.
2020-07-10 12:46:48 +02:00
Wim Taymans
ff8aaf9e62
node: set node io after registering
...
So that we have the right node_id in the position.clock field.
2020-07-10 12:45:44 +02:00
Wim Taymans
8a0a9c8094
mem: add some more debug
2020-07-10 12:44:50 +02:00
Wim Taymans
69cfc8e08c
policy-node: use the DONT_RECONNECT flag with a target
...
When a target is given and it doesn't exist, look at the
DONT_RECONNECT flag and error when we are not allowed to connect
to something else.
2020-07-09 13:03:02 +02:00
Wim Taymans
ee59bcd632
acp: emit volume/mute changes on change
2020-07-08 17:24:23 +02:00
Wim Taymans
bf9b58e1f5
pulse: emit server change events when default sink/source change
2020-07-08 17:10:27 +02:00
Wim Taymans
b896d65723
acp: emit param change when port changed
2020-07-08 16:16:43 +02:00
Wim Taymans
6d41e17ca3
pulse: improve name of monitors
2020-07-08 16:10:45 +02:00
Wim Taymans
4de3403c99
metadata: free item value as well
2020-07-07 20:25:01 +02:00
Julian Bouzas
2ae4322cca
a2dpsource: fill the buffer as much as possible
...
Fills the buffer until the buffer data size is maxsize / frame_size
2020-07-07 15:34:57 +00:00
Julian Bouzas
60eb8dae87
a2dpsource: add RateMatch IO
2020-07-07 15:34:57 +00:00
Frédéric Danis
e17688a43b
Fix missing headers check
...
Current Gillab CI fails with:
$ ./check_missing_headers.sh
spa/monitor/event.h not installed
2020-07-07 17:33:57 +02:00
Wim Taymans
ee54cb96aa
pulse: use metadata to store default source/sink
...
The metadata is implemented by the session manager and it can decide
what to do when the defaults change. It can also choose to save
(some of) the metadata to a database.
The metadata is also shared between applications so that changes can
be picked up immediately.
2020-07-07 17:09:46 +02:00
Wim Taymans
2991a814cd
pulse: wait for READY before calling callbacks
2020-07-07 13:42:56 +02:00
Wim Taymans
e030445e49
acp: add volume base and step
...
Add a READONLY property flag to makr properties READONLY
Set the base_volume and volume_step in the acp device
Send the base volume and step as REAONLY properties. Use these
in pulse layer.
2020-07-07 13:12:57 +02:00
Julian Bouzas
f75dfde89c
remote-node: process the mixer if io status have HAVE_DATA flag
...
Needed for audio sources created locally
2020-07-06 12:08:27 -04:00
Wim Taymans
cf8db93cd4
pod: add HARDWARE flag to spa_pod_prop
...
Add HARDWARE flag to mark a property that does some hardware control.
Mark the device volume/mute property as HARDWARE or not.
Use the HARDWARE property in pulse to set the right flags.
2020-07-06 17:46:32 +02:00
Wim Taymans
8e6b276d51
alsa-monitor: parse device events
...
Parse the device events and set the Props from the ObjectConfig
as the Props param on the node.
This propagates the software volume from the device to the
node.
2020-07-06 17:26:01 +02:00
Wim Taymans
b9d412e618
monitor: add device event
...
Add device events and signal soft volume with an object config
event.
2020-07-06 17:25:05 +02:00
Wim Taymans
d80d593271
acp: add support for soft volume
...
Add a set_soft_volume/mute event.
If we can't configure the hardware volume completely, notify
the remainder with the soft_volume/mute events.
2020-07-06 17:22:42 +02:00
Wim Taymans
4db6e0e2b3
client-device: fix event marshall
2020-07-06 17:13:50 +02:00
Wim Taymans
ea6dfe204c
acp: don't install library for now
2020-07-06 12:58:33 +02:00
Wim Taymans
0bbc25e3e2
media-session: add option to enable acp device
2020-07-06 12:51:38 +02:00
Wim Taymans
1612f5e4d2
alsa-acp: Add libacp based card device
...
libacp is a port and wrapper around the pulseaudio card profile code.
It uses a set of templates for construct a card profile and mixer port
settings. It also has support for UCM when available for the hardware.
2020-07-06 12:20:09 +02:00
Wim Taymans
5c6247daef
internal: improve assert
...
Pulse just logs to the debug log for a return_val_if_fail
2020-07-03 17:32:20 +02:00
Wim Taymans
c28ca320d1
Fix bluez node destroy
...
We create a ClientNode but monitor the resulting Node.
Destroy the object when removing a node.
2020-07-03 16:28:10 +02:00
Wim Taymans
8ad769b943
bluez: improve profile description
2020-07-03 16:25:46 +02:00
Wim Taymans
471c1a071c
policy: improve debug
2020-07-03 16:25:28 +02:00
Wim Taymans
a607174033
node: Pause when Suspend is not implemented
2020-07-03 16:24:55 +02:00
Wim Taymans
49332eb30f
bluez5: handle suspend
2020-07-03 16:23:17 +02:00
Wim Taymans
7778f8d70e
bluez5: remove devices correctly
...
Remember how many devices we emited for the current profile and
remove them all when we switch profile.
2020-07-03 16:12:19 +02:00
Wim Taymans
7b129c1020
sco: remove transport hooks on destroy
2020-07-03 16:10:46 +02:00
Wim Taymans
357868eeb5
a2dp: remove transport hooks on destroy
2020-07-03 16:08:53 +02:00
Wim Taymans
1e2ad41d94
remote-node: fix user_data
...
Pass the node_data around instead of the proxy. Get the proxy from
the node data.
Allocate user_data before the node_data so that the caller can
use the proxy user_data without overwriting the node_data.
2020-07-03 15:19:40 +02:00
Wim Taymans
1091d2eaf1
bluez5: improve profile enumeration
2020-07-03 12:14:00 +02:00
Frédéric Danis
0b970ec965
bluez: Update BT profiles
...
Only provide high-level A2DP and HSP/HFP profiles in pw.
Expose nodes based on pw profiles and BT profiles available on remote
device.
2020-07-03 11:53:52 +02:00
Wim Taymans
a520335581
fmt-ops: add sse2 version of f32 to s16 planar/interleaved
2020-07-03 11:05:26 +02:00
Wim Taymans
21fc163c49
stream: fix some more leaks in error paths
2020-07-02 16:22:49 +02:00
Wim Taymans
5295caf0f3
examples: dlclose on some errors
2020-07-02 16:07:54 +02:00
Wim Taymans
e11d35107f
alsa: don't leak properties on error
2020-07-02 15:53:16 +02:00