Commit graph

162 commits

Author SHA1 Message Date
Wim Taymans
2176874687 doc: fix some spelling errors 2020-08-11 21:24:19 +02:00
Wim Taymans
e71936f870 Improve naming
master -> driving
priority_master -> priority_driver
segment_master -> segment_owner
2020-08-06 13:49:33 +02:00
Wim Taymans
edb3968c5c docs: some small fixes and updates 2020-08-02 20:14:04 +02:00
Wim Taymans
6e2d3feb07 doc: clarify version field in events 2020-07-27 16:47:30 +02:00
Wim Taymans
0f1df5aee5 doc: add tutorial about binding objects 2020-06-23 15:44:01 +02:00
Wim Taymans
9c049f23ae doc: add video capture tutorial 2020-06-19 16:37:14 +02:00
Wim Taymans
2bcbf62443 docs: add some more links 2020-06-19 13:41:42 +02:00
Wim Taymans
f2245ecbb1 doc: small fix 2020-06-16 12:28:22 +02:00
Wim Taymans
5778de090f doc: fix some typos 2020-06-13 21:31:32 +02:00
Wim Taymans
5e652612be doc: add tutorial for pw_stream playback 2020-06-13 21:26:21 +02:00
Wim Taymans
cdda6ca329 doc: add index 2020-06-11 16:52:47 +02:00
Wim Taymans
205c4a58f9 doc: fix navigation 2020-06-11 16:38:26 +02:00
Wim Taymans
4d3647acbb doc: add cleanup 2020-06-11 16:36:55 +02:00
Wim Taymans
00ca566b18 doc: cleanups 2020-06-11 16:30:27 +02:00
Wim Taymans
9b245da5c0 docs: add tutorial 3 2020-06-11 16:25:47 +02:00
Wim Taymans
44efab6c31 docs: more tutorial 2020-06-11 15:32:52 +02:00
Wim Taymans
0ee5feab67 doc: add tutorial index 2020-06-11 13:43:29 +02:00
Wim Taymans
0a84a77a21 add index 2020-06-11 13:39:09 +02:00
Wim Taymans
a33fac9f9a Update architecture.md 2020-06-11 11:33:29 +00:00
Wim Taymans
70ce1da29c doc: add some more docs 2020-06-11 13:29:30 +02:00
Wim Taymans
12afb23938 docs: add some more docs 2020-06-11 09:51:32 +02:00
Wim Taymans
b71efadb7a doc: add some more info 2020-06-10 17:08:12 +02:00
Wim Taymans
2c8292bef0 docs: add some more info 2020-06-09 17:29:40 +02:00
Wim Taymans
8696ad4480 docs: add some doc about SPA design 2020-06-09 17:08:26 +02:00
Wim Taymans
2b7e6e19dc doc: annotate code block as c 2020-06-09 15:34:02 +02:00
Wim Taymans
9fd6428314 docs: fix some typos 2020-06-09 15:28:26 +02:00
Wim Taymans
8f251fc7d4 docs: add some docs about SPA POD 2020-06-09 09:06:07 +02:00
Wim Taymans
c546167ad3 require meson 0.49 2020-05-20 15:26:35 +02:00
George Kiagiadakis
04b1881211 doc: add documentation about the design of media & session management objects 2020-02-21 14:15:27 +00:00
Arun Raghavan
8f1b840979 ci: Automate container building in Gitlab
This removes the need to manually build and push out the Docker images
for the build. This step is now in GitLab CI itself.
2019-11-21 17:24:21 +05:30
Arun Raghavan
5abab5d4da doc: Add some documentation on generating CI docker images 2019-11-19 14:45:53 +00:00
Wim Taymans
c63f0ed562 doc: add session-manager <-> pulseaudio mapping 2019-11-08 15:53:14 +01:00
Wim Taymans
36ac8a6545 update docs 2017-09-05 13:35:25 +02:00
Wim Taymans
1acba78234 API cleanups
Fix docs
Add some more versions to interfaces
Make types for the various proxy object + inline methods that does type
checking and create proxys etc.
Set owner client of client-nodes in the properties
Pass type to bind to in create-node
Don't place global id in the info structs
Improve registration of marshal functions
Pass more types around as ids
2017-07-18 10:06:40 +02:00
Wim Taymans
d1655196c3 move things around 2017-07-11 16:08:22 +02:00
Wim Taymans
68413d472f Update docs a little 2017-06-21 13:17:43 +02:00
AsciiWolf
8d5a3cdceb design: fix typo 2017-06-21 12:21:38 +02:00
Wim Taymans
ab9b3ba85a docs: update 2017-06-16 16:25:19 +02:00
Wim Taymans
83964cec87 pinos -> pipewire 2017-05-23 19:15:33 +02:00
Wim Taymans
0398f997d7 cleanups
Update some docs
Remove special structs for some events
Remove some unused flags
Update some plugins
2017-01-19 18:10:00 +01:00
Wim Taymans
7e858ff694 Improve state handling
Improve the state handling in v4l2
Send buffers in one message
Update design doc
2016-08-25 17:07:40 +02:00
Wim Taymans
de53315f6e Work on node creation
Implements the basics of the PORT_UPDATE control message
Add the ports to the proxy node with whe PORT_UPDATE control message.
Let the proxy node check the events and create dbus objects based on
added/removed ports.
2016-08-05 19:46:37 +02:00
Wim Taymans
3ace7e9648 More work on implementing remote protocol
Rework things so that we negotiate buffer pools beforehand and only pass
buffer ids around We can then remove the refcount of buffers, events and
commands.
More work on buffer reuse
Use the node state changes to trigger the next step in the configuration
sequence.
Move most of the client-node to a plugin
Do buffer allocation in the port link.
2016-08-02 16:34:44 +02:00
Wim Taymans
05829f33e6 Work on memory allocation
We now only allow per port preallocated buffers. We exchange the index
into the array instead of passing the buffers around. We still use the
refcount to track when a buffer can be reused.
Improve API a little, allow passing the node as the first argument of
the interface call.
Implement alloc_buffer in v4l2 and improve the test.
2016-07-30 20:35:34 +02:00
Wim Taymans
4cb90f3b86 Rework transport protocol
Remove the old PinosBuffer object and replace it with SpaControl, this
communication protocol is designed to make it possible to implement
remote nodes and so it is moved to Spa.
Move SpaBuffer into to API
Work on easier API to make formats, implement enumeration and support
for all formats in v4l2.
Improve format output in -inspect
2016-07-28 21:19:20 +02:00
Wim Taymans
e167d30296 reintroduce channels
Bring back the channel object. Making a node and port on the client side
was rather awkward because of the async nature of many methods. It feels
better to have a specific communication channel object to interface with
a server side port.
Use port activate/deactivate to start/stop streams
Remove links from the ports. We let other objects install a callback on
the port to receive and route buffers.
2016-07-20 17:29:34 +02:00
Wim Taymans
4a5ed1e1f5 Rework how clients connect.
Add buffer flags. The idea is to make it possible to easily check when a
buffer contains control information that we need to parse to update the
port fields.
Make the client create remote nodes and ports and set up proxies for
them.
Make a port base class implementing most of the logic to pass buffers
locally and remotely.
Remove most code from stream.c, it's now in the port.
Make a portsink and portsrc that can write and read to/from any port. We
use these in the server to send and receive data.
Rework format negotiation. The final format is now sent in-line before
the data. The server will select a format on output ports.
2016-05-17 09:38:30 +02:00
Wim Taymans
8407430891 rework: make client and server nodes
work on making nodes and ports on the client.
2016-05-12 17:03:28 +02:00
Wim Taymans
91385a782e Remove vfunc from port
Update docs
Remove virtual functions from port, we don't want this to be changed.
2016-05-09 12:16:04 +02:00
Wim Taymans
b885d40390 Introduce the concept of a Node
Make an object for a processing node.
Implement a sink node. Make it possible to implement Sink and Source
interfaces to provide input/output from the node.
Improve pinosdepay to track fds and handle format changes.
2016-05-05 13:31:18 +02:00