Commit graph

4055 commits

Author SHA1 Message Date
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
Wim Taymans
65f961fca0 impl-device: don't warn for unknown node id
Just debug the node id and remove it when known. It's possible that
no node was created for the id because it did not have a factory.
2020-06-24 12:52:50 +02:00
Gleb Popov
9905d249ba Bump FreeBSD version in Cirrus CI and remove pkg bootstrap command, which shouldn't be needed now. 2020-06-23 18:57:10 +04:00
Jordan Christiansen
e404979a2f Fix trivial typo 2020-06-23 14:30:01 +00:00
Wim Taymans
0f1df5aee5 doc: add tutorial about binding objects 2020-06-23 15:44:01 +02:00
Wim Taymans
cb1a2ed769 midifile: check return of write and fail on error 2020-06-23 15:26:23 +02:00
Wim Taymans
29282b8d50 module-device: remove impossible case 2020-06-23 15:26:04 +02:00
Wim Taymans
35bb7d794b dlclose on errors 2020-06-23 15:25:45 +02:00
Wim Taymans
f08c35259c avoid uninitialized variables 2020-06-23 15:25:27 +02:00
Wim Taymans
95192b21f1 mem: reset the map in clear
Or else the free list is not cleared.
2020-06-19 16:58:22 +02:00
Wim Taymans
9c049f23ae doc: add video capture tutorial 2020-06-19 16:37:14 +02:00
Wim Taymans
f78e44c28a impl-core: clear the mempool
When a client sends hello, clear the mempool again to make sure
it get's the new memory.
2020-06-19 15:20:50 +02:00
Wim Taymans
2bcbf62443 docs: add some more links 2020-06-19 13:41:42 +02:00
Wim Taymans
93e04aebce example: add example of renegotiation
Add an example of renegotiating a producer and consumer format.
2020-06-19 12:17:47 +02:00
Wim Taymans
0dad6c5852 impl-link: start of renegotiation
Handle an EnumFormat param change on the link ports and start
the renegotiation process.
2020-06-19 12:14:46 +02:00
Wim Taymans
ebede91239 impl-link: reset state before starting allocation
Reset our state before checking the state of the ports or else
we might still think a port has buffers while they are being
allocated.
2020-06-19 12:12:48 +02:00
Wim Taymans
4be29c1124 resample: load more data on aarch64 because we can 2020-06-19 11:47:57 +02:00
Wim Taymans
ecead2b7e4 buffer: add more debug 2020-06-18 18:28:13 +02:00
Wim Taymans
67b692396b v4l2: remove format checks
When a caller sets a format, we do this regardless of the currently
configured format.
2020-06-18 18:26:00 +02:00
Wim Taymans
6e74edc14e v4l2: always stop and clear buffer when setting a format
The caller frees the buffers after setting a new format.
2020-06-18 18:23:36 +02:00
Wim Taymans
8f8083b963 examples: add signal handlers to quit nicely 2020-06-18 15:47:50 +02:00
Wim Taymans
8e366a17ee port: add param_changed event 2020-06-18 15:47:29 +02:00
Wim Taymans
4c8f8671d7 client-node: improve error reporting 2020-06-18 15:40:53 +02:00