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
Wim Taymans
ac54b7ace1
alsa: don't leak structure on error
2020-07-02 15:52:50 +02:00
Wim Taymans
f353042460
client: send an error to all bound resources
...
When we need to send an error to a global, send the error to
all resources bound to that global. This can also be resources
that implement the global (like client-node)
2020-07-02 15:39:23 +02:00
Wim Taymans
d3ab5bc3b8
stream: only unconnect when core unconnects
...
Ignore all other core errors, only make the stream unconnected
when the core is unconnected.
2020-07-02 15:39:15 +02:00
Wim Taymans
82a83afd6b
policy: activate Unknown stream media type
...
And try to link them using the media.type property
2020-07-02 15:39:11 +02:00
Wim Taymans
9eb9fe4fbe
stream: handle missing EnumFormat params
...
When we don't have an EnumFormat param, don't fail but fall back to
the MEDIA_TYPE property to calculate the media class.
Fixes things like:
gst-launch-1.0 -v pipewiresrc stream-properties="props,media.type=Video" ! fakesink
2020-07-02 12:56:26 +02:00
Wim Taymans
fc49c1697a
context: improve negotiation
...
When a port doesn't implement the EnumFormat param, use NULL as
the filter or the filter as the result.
2020-07-02 12:55:39 +02:00
Wim Taymans
591244c53e
module-device: remove useless assign
2020-07-02 10:58:35 +02:00
Wim Taymans
3df8139f4e
spa-node: unload handle in failure case
2020-07-02 10:57:10 +02:00
Wim Taymans
d871adbd4d
spa-device: fix leak of properties in error case
2020-07-02 10:52:15 +02:00
Wim Taymans
d3748ef254
introspect: fix default source/sink
2020-07-01 15:38:42 +02:00
Wim Taymans
f30a8f6895
context: fix context_id, use the client bound id
2020-07-01 15:38:36 +02:00
Wim Taymans
813e2d22a6
context: fix sorted insert
2020-07-01 15:38:29 +02:00
Wim Taymans
34775b7577
context: use different variable to avoid confusion
2020-07-01 15:38:24 +02:00
Wim Taymans
f126501f83
context: don't enum profile/route when one is pending
2020-07-01 15:38:17 +02:00
Wim Taymans
dc7868a476
pulse: control volume on device or node
...
Send the mute and volume values in the route param when hw volume
is available.
Check if the route has volume/mute and then use that to control the
volume instead of them node volume.
2020-07-01 15:36:50 +02:00
Wim Taymans
9ad2732405
pulse: handle volume and mute with the Route params
...
Update the device volume with properties from the Route param is
available.
Rework pulse a little to make sure we have all the globals ready
before performing the operation.
Update the volume/mute in the device route
2020-07-01 15:31:19 +02:00
Wim Taymans
3695488241
spa: remove wrong comment
2020-07-01 15:27:55 +02:00
Wim Taymans
4d7d9484e6
pulse: use route param to set current active ports
2020-07-01 15:24:50 +02:00
Wim Taymans
2bffb3561f
pulse: handle error from volume set
2020-07-01 15:20:32 +02:00
Wim Taymans
ebd8695345
pulse: use route param to get/set current active routes
2020-07-01 14:02:59 +02:00
Wim Taymans
1277e6cded
context: update the Profiles and Routes in the card
...
Update the Profile and Route information directly into the card
info. Use this info to fill the port info for the sink and sources.
2020-07-01 13:57:14 +02:00
Wim Taymans
42cc30e1ee
pulse: use EnumRoute to collect and report port info
2020-07-01 13:52:25 +02:00
Wim Taymans
698509ef55
alsa: set classes in the profile
...
parse classes in the pulse layer
2020-07-01 13:39:10 +02:00
Wim Taymans
03cef06dd2
pulse: improve introspect of profile availability
2020-07-01 13:27:20 +02:00
Wim Taymans
f79f0de681
introspect: improve card info
2020-07-01 13:24:57 +02:00
Wim Taymans
1ee8944a2a
alsa: improve debug
2020-07-01 13:16:37 +02:00
Wim Taymans
8168dfdbc1
alsa-pcm: allow setting number of channels
...
Allow passing the number of channels when creating a device to
restrict the negotiated channels.
2020-07-01 12:54:27 +02:00
Wim Taymans
267eabaf69
alsa: add default channel map when not given
2020-07-01 12:46:03 +02:00
Wim Taymans
f65d71dd5b
alsa: support planar formats
2020-07-01 11:43:25 +02:00
Wim Taymans
6e03b4005d
increase amount of datas in a buffer
2020-07-01 11:43:22 +02:00
Wim Taymans
dfd3bd84b4
buffers: increase max datas and metadata in buffers
2020-07-01 11:43:18 +02:00
Wim Taymans
f678f4371d
state: always update state variables
...
Or else we might leak the error string.
2020-06-29 10:03:58 +02:00
Wim Taymans
ef0e5ee09e
param: rename properties, use info for key/value info
...
Add props field for configurable route properties (like volumue/mute)
2020-06-27 20:04:05 +02:00
Frédéric Danis
41d7ccc336
a2dpsink: Process right amount of data with sbc_encode
...
sbc_encode() can only process data with at least this->codesize bytes.
When encode_buffer() is called with less then codesize bytes, accumulate
those bytes in a temporary buffer up to codesize length, then SBC encode
them.
Maximum size for SBC buffer is (subbands * blocks * channels * 2) with max
subbands = 8, max blocks = 16, max channels = 2, i.e. 512.
Fixes !277
2020-06-27 13:03:24 +02:00
Wim Taymans
2e914ac10e
param: add properties to route and profile
2020-06-26 11:42:34 +02:00
Wim Taymans
43d0aa49c1
Route: add more fields
2020-06-24 19:37:50 +02:00
Wim Taymans
d22beb4d05
param: add classes to the PROFILE param
...
classes is an enumeration of class-name/count pairs to enumerate
the kinds of classes and count that are created from this profile.
2020-06-24 19:37:45 +02:00
Wim Taymans
cab833ade7
profiler: add docs for the param contents
2020-06-24 19:37:37 +02:00
Wim Taymans
0f7a488d61
param: add available to Profile params
2020-06-24 19:37:27 +02:00
Wim Taymans
5feedbfd42
context: ensure the registry exists
...
Make sure we are watching the registry before we try to enumerate
objects.
When we wait for new object info, resync the pending operations
because they might depend on the info.
2020-06-24 19:36:47 +02:00
Wim Taymans
d560499054
stream: handle NULL context
2020-06-24 12:52:50 +02:00