Commit graph

6884 commits

Author SHA1 Message Date
Wim Taymans
098b80aa0c protocol: pass state as id 2019-01-07 15:39:59 +01:00
Wim Taymans
de796d34ad pod: handle pod copy failure
Don't check NULL in pw_spa_pod_copy so that we can check for allocation
failures when the functions returns NULL.
2019-01-07 15:36:19 +01:00
Wim Taymans
7cd55c2c6b fix switch fallthrough cases 2019-01-07 15:11:34 +01:00
Wim Taymans
9573b24e52 cpu: add force cpu flags
Use PIPEWIRE_CPU to force cpu flags.
2019-01-07 15:02:18 +01:00
Wim Taymans
1ca7704d64 type-info: fully initialize structs 2019-01-07 13:56:08 +01:00
Jan Grulich
238be61364 Avoid invalid conversion error with C++ compilators 2019-01-03 11:13:08 +01:00
Wim Taymans
0c0bf3a62a thread-loop: fix leak of event
Destroy the event when the loop is destroyed
2018-12-20 10:36:20 +01:00
Wim Taymans
52a3a0c175 thread-loop: improve error checking 2018-12-20 10:36:14 +01:00
Wim Taymans
0984096089 free() can handle NULL just fine so skip the check
Fixes #117
2018-12-19 17:47:25 +01:00
Wim Taymans
a1e567b985 stream: remove listener on disconnect 2018-12-18 15:35:04 +01:00
Wim Taymans
6430ca0093 Add some more error checking
Fixes #116
2018-12-18 15:26:08 +01:00
Wim Taymans
e984c19f6c core: load and add cpu detection support 2018-12-17 13:26:04 +01:00
Wim Taymans
3be759ced2 stream: handle proxy destroy
When the proxy is destroyed, mark the stream as unconnected and remove
our reference to the proxy.
2018-12-14 16:38:46 +01:00
Wim Taymans
2025a9ad3b node: only move other nodes, not ourselves 2018-12-14 16:37:15 +01:00
Wim Taymans
4be368c957 media-session: handle dont-reconnect
If dont-reconnect is given and a target node, kill the stream when
the target node can't be found.
2018-12-14 16:35:57 +01:00
Wim Taymans
8e969c9d44 media-session: set media (sub)type on dsp nodes 2018-12-13 17:26:35 +01:00
Wim Taymans
3ab95f66f3 media-session: don't set audio profile on non-audio nodes 2018-12-13 17:18:37 +01:00
Wim Taymans
0a27040c9a port: keep track of mix port states
Keep track of the state of the mixer ports and update the port state
accordingly. This avoids clearing the format or buffers on the port
when mixers are still busy.
2018-12-13 12:04:02 +01:00
Wim Taymans
491dd785ad media-session: only try to link to nodes 2018-12-12 18:32:28 +01:00
Wim Taymans
02585c6ca9 merger: add monitor ports
Add an option to enable monitor ports. Use this in the audio dsp
to expose monitor ports on the audio dsp nodes.
2018-12-11 16:35:40 +01:00
Wim Taymans
2bd7f5c934 media-session: skip non-dsp ports on dsp nodes
Detect DSP nodes sooner, flag pads that have the dsp property, skip
ports on DSP nodes without the dsp flag.
2018-12-11 16:32:19 +01:00
Wim Taymans
626cdab268 node: log error 2018-12-11 15:23:12 +01:00
Wim Taymans
3476617cff node: only add node when active
When moving a node from one graph to another, only add the node if
it was actually added to the source graph. Because nodes are added when
activated, it might be possible the node was not added yet.
2018-12-10 15:09:04 +01:00
Wim Taymans
9805c2f413 stream: add DONT_RECONNECT flag 2018-12-05 16:01:42 +01:00
Wim Taymans
4d780e87aa client-stream: activate peaks resampler when monitoring 2018-12-05 16:00:52 +01:00
Wim Taymans
5fcbbb4d6b media-session: keep track of profile format
Also keep track of the profile format of a node, this is the profile we
choose for it and what we should use as a profile for the peer node.
2018-12-05 15:59:45 +01:00
Wim Taymans
bdc97ae140 client-stream: fix cleanup
first let the client-stream node cleanup and then destroy our
client-node.
2018-12-04 16:20:57 +01:00
Wim Taymans
53c2eb2625 stream: clear queued items when clearing buffers 2018-12-04 13:36:37 +01:00
Wim Taymans
dd28116f12 stream: set node name to stream name 2018-12-04 11:35:21 +01:00
Wim Taymans
3cdd52832e properties: add _clear function 2018-12-04 11:34:59 +01:00
Wim Taymans
e6c023cd34 properties: don't add NULL values 2018-12-04 11:34:30 +01:00
Wim Taymans
26958eabaa pipewire: add DISPLAY 2018-12-04 11:33:43 +01:00
Wim Taymans
ee307e9c48 port: also set buffers when 0 2018-12-03 17:59:57 +01:00
Wim Taymans
7091ad340d video-play: check valid metadata 2018-11-30 15:53:31 +01:00
Wim Taymans
537399bbe5 video-play: handle arbitrary cursor sizes
video-play: only allocate the texture when we know the size and
format of the cursor bitmap.
video-src: make cursor size defined with constants.
2018-11-30 15:31:55 +01:00
Wim Taymans
ac5f0b851d meta: add cursor metadata and examples
Add a moving and flashing circle cursor to video-src
Render the cursor in video-play
Alsa add VideoCrop metadata
2018-11-30 15:12:46 +01:00
Wim Taymans
c982f73779 remote: send start command before adding the source 2018-11-29 17:48:26 +01:00
Wim Taymans
67e6a66429 remote: pause with invoke 2018-11-29 17:31:47 +01:00
Wim Taymans
bf344a86e5 alsa: add on and off profiles 2018-11-29 15:24:13 +01:00
Wim Taymans
a195700eac node: also suspend node on destroy 2018-11-29 15:16:00 +01:00
Wim Taymans
cb2b1fb3ff handle enum_param errors on port, node and device 2018-11-29 15:15:06 +01:00
Wim Taymans
dfc464413b stream: set proxy to NULL in disconnect
The proxy is NULL while disconnected, handle this case.
2018-11-28 17:34:53 +01:00
Wim Taymans
20bcbbde78 node: handle errors from enum_param 2018-11-28 17:34:34 +01:00
Wim Taymans
6e66456381 device: implement param introspection 2018-11-28 17:34:16 +01:00
Wim Taymans
4810d91c58 media-session: use direction to derive CATEGORY
Try to use the stream direction to figure out the CATEGORY when missing.
Add some more debug
2018-11-28 17:32:35 +01:00
Wim Taymans
54f527ac02 introspect: remove ENUM_PARAM change
Remove the ENUM_PARAM change bit, we want to do this with a specific
event later that would allow us to specify which params changed etc.
2018-11-28 17:31:00 +01:00
Wim Taymans
7c54b4b89c audio-dsp: improve properties 2018-11-28 13:24:33 +01:00
Wim Taymans
5d30b31cec properties: add _update method and use it
Remove old unused _merge method
2018-11-28 12:22:41 +01:00
Wim Taymans
cff8ce8e99 media-session: set device name 2018-11-28 12:21:19 +01:00
Wim Taymans
417c1cd756 device: add media.class to global properties 2018-11-28 11:12:36 +01:00