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
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
471c1a071c
policy: improve debug
2020-07-03 16:25:28 +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
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
8f8083b963
examples: add signal handlers to quit nicely
2020-06-18 15:47:50 +02:00
Wim Taymans
8ee91bd738
examples: don't hardcode dimensions for crop info
2020-06-18 11:43:34 +02:00
Simon McVittie
b852b58f82
Optionally install examples and tests
...
This makes it easier to test PipeWire in its "as-installed" state,
for example in an OS distribution.
The .test metadata files in ${datadir}/installed-tests/${package} are
a convention taken from GNOME's installed-tests initiative, allowing a
generic test-runner like gnome-desktop-testing to discover and run tests
in an automatic way.
The installation path ${libexecdir}/installed-tests/${package} is also
a convention borrowed from GNOME's installed-tests initiative.
In addition to the automated tests, I've installed example executables
in the same place, for manual testing. They could be separated into
a different directory if desired, but they seem like they have more
similarities with the automated tests than differences: both are there
to test that PipeWire works correctly, and neither should be relied on
for production use. Some examples are installed in deeper subdirectories
to avoid name clashes.
Signed-off-by: Simon McVittie <smcv@debian.org>
2020-06-16 17:58:02 +00:00
Wim Taymans
f278ded975
example: use thread loop in example
2020-06-08 17:14:36 +02:00
Wim Taymans
ade5bcb58d
local-v4l2: fix leaks
2020-06-05 12:43:26 +02:00
Wim Taymans
cecbf3191b
example: use bound event to find node id
2020-06-05 12:43:26 +02:00
Wim Taymans
ed31ca30cd
media-session: improve cleanup of objects
...
Don't try to use the proxy destroy event to destroy the objects.
It is not called automatically anymore, only when we call
pw_proxy_destroy() ourselves.
Destroy the proxy objects when we destroy the session managed
object instead, either when the global is removed or when we
explicitly call _destroy()
Add an object free signal to clean up final resources after the
proxies have been destroyed, like closing libraries.
Track and destroy our link proxies.
2020-06-04 17:41:01 +02:00
Wim Taymans
704d504a44
media-session: mark enabled modules with *
2020-06-04 10:51:03 +02:00
Wim Taymans
0b47b47b6c
libcamera: disable by default
...
Until it is at least more comon available in distros.
2020-06-04 10:50:54 +02:00
raghu447
39974903df
Rebasing
2020-06-04 10:36:39 +02:00
raghu447
d93870fdeb
Removed redundant logs
2020-06-04 10:36:39 +02:00
raghu447
af263187ea
Reverting redundant changes
2020-06-04 10:36:39 +02:00
raghu447
9024cc4444
Integrating libcamera
2020-06-04 10:36:39 +02:00
Wim Taymans
33cd2495b8
examples: add signal handler for clean exit
2020-06-04 10:10:08 +02:00
Wim Taymans
3060c57ba6
examples: add cleanup
2020-06-03 16:51:17 +02:00
Wim Taymans
6b313de2ae
examples: catch signal and clean up
2020-06-03 15:26:54 +02:00
Wim Taymans
8d0913c9d8
examples: add audio DSP source
2020-06-03 12:06:44 +02:00
Wim Taymans
e4e03fa7dd
media-session: always activate DSP nodes
...
They don't need to be activated with a profile.
2020-06-03 12:03:20 +02:00
Wim Taymans
fda9e4d5c8
call _deinit(() in session manager exit
2020-06-02 17:37:45 +02:00
Wim Taymans
34dada9c4c
media-session: install ctrl-C handler
...
..so that we can clean up.
2020-06-01 18:14:53 +02:00
Wim Taymans
bf483242eb
alsa-monitor: don't use NULL device reserve
2020-05-28 18:03:27 +02:00
Wim Taymans
d31c057b42
Remove some useless checks
2020-05-20 15:24:25 +02:00
Wim Taymans
c2028a1695
Fix some leaks in error cases
2020-05-20 15:24:25 +02:00
Wim Taymans
eb93f259e0
avoid some useless assignments
2020-05-20 15:24:25 +02:00
Wim Taymans
a19bab4b16
avoid following NULL pointers
2020-05-20 15:24:25 +02:00
Wim Taymans
d22cb01c6e
alsa-monitor: remove listener after destroy
...
The destroy event will free all the nodes of the device.
2020-05-08 17:08:53 +02:00
Wim Taymans
181ca167e7
media-session: make sure to only remove hooks once
2020-05-08 16:18:38 +02:00
Wim Taymans
13fd6be747
media-session: only subscribe to readable params
2020-05-07 20:58:53 +02:00
Wim Taymans
649448fb5f
array: add and use pw_array_consume
2020-05-06 15:56:31 +02:00
Wim Taymans
720b7b5c6a
metadata: emit removed messages from clear
...
Consume the array until we have removed all subjects.
2020-05-06 15:47:14 +02:00
Wim Taymans
5e99e7da49
alsa-monitor: remove timeout in destroy
2020-04-29 17:12:22 +02:00
Wim Taymans
0380c6d91e
suspend-node: remove idle handler in destroy
...
Or else the idle handler might go off when we are already destroyed.
2020-04-29 16:41:41 +02:00
Wim Taymans
aafd1e7298
improve debug
...
Improve log so that debug level 3 gives a reasonably readable overview
of what is going on.
2020-04-22 12:47:18 +02:00
Wim Taymans
539296069d
jack: implement more metadata API
...
Rework the metadata implementation without pw_properties to make
it easier to delete all subjects and implement the metadata API.
Remove metadata from all objects when they are destroyed.
2020-04-20 15:19:06 +02:00
Wim Taymans
a5b0553328
Fix some -Wenum-conversion errors
...
Make pw_direction and spa_direction the same
Explicitly cast some enums or use the right enums
2020-04-04 20:03:08 +02:00
Wim Taymans
c20100eabb
media-session: Add method to destroy a global
...
Destroy the stream when it is disconnected and it was marked as
DONT_RECONNECT.
2020-04-02 15:27:23 +02:00
Wim Taymans
b87c0a9270
clean up options
...
make sure we can use -v for verbose mode
2020-04-02 14:34:02 +02:00
Wim Taymans
2b7f01f5af
media-session: add getopt support
...
Add options to media-session
Add an option to enable or disable modules
Add an option to set properties for later use
2020-03-30 14:09:44 +02:00
Wim Taymans
4c80656a7b
examples: small improvements
...
Don't set EXCLUSIVE flag on video-play
2020-03-20 11:24:29 +01:00
Wim Taymans
2948d504c8
example: fix v4l2 example
...
We need to emit a port param update to notify of new Buffer
parameters.
2020-03-19 18:08:34 +01:00
Wim Taymans
c4708f97ff
examples: don't use lrintf for each sample
2020-03-18 17:40:26 +01:00
Wim Taymans
13d66df2df
example: fix buffer size calculation
2020-03-18 17:23:14 +01:00
Wim Taymans
e13e81881f
examples: use dataType mask
...
Set the dataType mask to MemFd because that is what we can
produce. Check the negotiated buffer data types.
2020-03-09 18:05:51 +01:00