Commit graph

1148 commits

Author SHA1 Message Date
Rasmus Thomsen
165c441ced meson: add systemd option
This is handy for source distributions, which want to avoid
automagic dependencies
2018-08-17 10:29:39 +02:00
Rasmus Thomsen
90400b17d6 build: respect 'includedir' meson param 2018-08-17 10:28:35 +02:00
Wim Taymans
aea505425b man: add man page for config file 2018-08-17 10:18:41 +02:00
Wim Taymans
eab60c14c2 man: update man page 2018-08-17 09:38:13 +02:00
Wim Taymans
d70e027a99 daemon: add some options 2018-08-17 09:38:08 +02:00
Wim Taymans
5eac8f7675 remove last debug includes
Fixes #82
2018-08-16 13:26:49 +02:00
Wim Taymans
fb76b65dfb gst: fix clock handling again
Request periodic clock updates.
Interpollate clock times in the gstreamer clock
Make sure we don't read the clock after shutdown.
2018-08-15 17:27:17 +02:00
Wim Taymans
98f54c4135 pipewiresink: improve driver mode 2018-08-15 13:16:11 +02:00
Wim Taymans
c6f701588f link: improve debug 2018-08-15 13:15:54 +02:00
Wim Taymans
cc1062933b example: improve debug 2018-08-15 13:15:36 +02:00
Wim Taymans
d8525e3732 hooks: enforce version on hook emission
Pass the minimum required version to the hook emission and only call
events when the handler is recent enough.
Add some macros to make event emission easier to read.
2018-08-15 11:53:23 +02:00
Wim Taymans
150e30dfb9 map: make for_each use a return value
Make it possible to stop pw_map_for_each by adding a return value
to the callback.
2018-08-15 11:25:05 +02:00
Wim Taymans
2de7f9cc03 list: add iteration with a cursor
Iterating a list with a cursor is heavier but is safe against removal
of any element in the list. Move the hook cursor iterator to list.
2018-08-15 11:24:40 +02:00
Wim Taymans
813506a614 map: use invalid value for empty list 2018-08-14 17:03:17 +02:00
Wim Taymans
d93afe7f9b core: set version 2018-08-14 15:37:18 +02:00
Wim Taymans
4eae1f0c6f debug: add specific format debug 2018-08-14 13:05:10 +02:00
Wim Taymans
9d36b85dd6 remove spalib 2018-08-14 12:33:53 +02:00
Wim Taymans
d3b9a52ec4 don't link with spalib when we don't have to 2018-08-13 17:22:55 +02:00
Wim Taymans
872a1131fa pod: move compare and filter functions out of the library 2018-08-13 17:17:23 +02:00
Wim Taymans
d768a2d6da make spa-lib versioned
Fixes #60
2018-08-13 16:14:14 +02:00
Wim Taymans
336fd190b4 pipewire: debug version in init 2018-08-13 15:46:48 +02:00
Wim Taymans
6ba0ef7f2d stream: don't include stream.h twice
Fixes #67
2018-08-13 15:46:28 +02:00
Wim Taymans
d51fb8687b deviceprovider: fix memory leaks
Fix leaking of the node info and caps by tracking the proxy object
and freeing our stuff when it is destroyed.
2018-08-13 15:20:25 +02:00
Wim Taymans
a2cfb0882b gst: keep track of clock time
Invalidate the clock when the stream is destroyed and let the new
clock take the time of previous clock when no timing info is
available.
2018-08-13 15:19:20 +02:00
Wim Taymans
5a3883509b stream: return error when no timing info yet 2018-08-13 14:28:25 +02:00
Wim Taymans
e6b7dd1d0f pipewiresrc: fix refcounting of buffers 2018-08-13 12:07:05 +02:00
Wim Taymans
393917ac76 gstdeviceprovider: fix caps introspection
Enum the node port params to get the caps of the devices.
2018-08-09 11:10:00 +02:00
Wim Taymans
327ae5db6e add apiversion to pkgconfig as well 2018-07-31 15:05:17 +02:00
Wim Taymans
c5380162ac build: fix module install directory 2018-07-31 14:56:34 +02:00
Wim Taymans
887b9550ce Release 0.2.2 2018-07-31 14:39:42 +02:00
Wim Taymans
a223a35a5b Revert "Drop api version suffix from library name"
This reverts commit 76ab7eb9fb.
2018-07-27 11:26:29 +02:00
Jan Grulich
76ab7eb9fb Drop api version suffix from library name 2018-07-27 10:48:22 +02:00
Jan Grulich
07411e09cb Bump apiversion and soversion for PW 0.2.x 2018-07-23 18:52:08 +02:00
Wim Taymans
aa838eab94 Release 0.2.1 2018-07-20 12:44:54 +02:00
Wim Taymans
de766324b9 hook: add private data for future expansion 2018-07-20 10:35:31 +02:00
Wim Taymans
9e0bce4cb7 stream: update to latest API 2018-07-19 16:33:00 +02:00
Wim Taymans
061f2c82b5 bump version 2018-07-17 10:32:52 +02:00
Wim Taymans
36d883b8c8 version: add version file 2018-07-17 10:31:17 +02:00
Wim Taymans
8b919e89bd video-src: let stream map buffers 2018-07-12 11:10:59 +02:00
Wim Taymans
18bfa9ae6e stream: add empty new_simple 2018-07-12 11:08:07 +02:00
Wim Taymans
c362b1ccc5 stream: implement MAP_BUFFERS
video-play let the stream map our buffers
2018-07-12 11:05:53 +02:00
Wim Taymans
a2d2d75a25 remote: call disconnect to make sure we free all memory 2018-07-12 11:05:31 +02:00
Wim Taymans
d6f40cefa6 examples: improve examples 2018-07-12 10:02:42 +02:00
Wim Taymans
b9171b5e57 node: add Media/Category/Role properties 2018-07-12 09:46:30 +02:00
Wim Taymans
bcddac6e2b stream: schedule process from main thread when asked
Use 2 lockfree queues so that we can queue and dequeue from different
threads.
Call the process function from the main thread when requested
Rework the data push and pull logic to go through the queues
Update the examples for this new feature, video-play does not need
to schedule the process in the main thread anymore and block for it
to complete, this avoid a deadlock between the data and mainloop when
shutting down.
2018-07-11 17:56:36 +02:00
Wim Taymans
67e567b9c7 stream: API break
Add pw_buffer
Add queue/dequeue methods, remove old methods
Add get and set for properties
Update gst elements and examples

Update the API to work branch which is more future proof
2018-07-08 14:57:11 +02:00
Wim Taymans
4574adcd2e clean up listeners 2018-06-15 13:12:10 +02:00
Wim Taymans
1e54d9e00b hook: make safer
Also protect against removal of the next hook by using a cursor.
2018-06-15 13:11:00 +02:00
Wim Taymans
85f81ab4e2 config: fail when something fails 2018-06-15 13:10:27 +02:00
Wim Taymans
70bdb72857 loop: add back the destroy loop
We need to keep the sources around until all sources are dispatched. If
not: source A and B are active after poll, A is dispatched first and
removes B, when B is then dispatched, the memory is gone. We don't
free the source but simply mark the fd invalid and move it do a
destroy list. After all sources are dispatched we destroy.
This is safe because removing a source is either done from the poll
context (with invoke) or when holding the right locks.
2018-06-15 13:06:59 +02:00