Commit graph

30 commits

Author SHA1 Message Date
Wim Taymans
02d4dc0efd context: add option to disable registry 2017-04-21 16:39:14 +02:00
Wim Taymans
29cb7bf39a format: improve format parsing 2017-03-24 18:11:11 +01:00
Wim Taymans
5825c62d6d types: more work on types 2017-03-24 11:40:58 +01:00
Wim Taymans
acedfe71c0 clean up types 2017-03-23 21:15:52 +01:00
Wim Taymans
16b62de53a Rework formats
Use a POD for the format body. This allows us to more easily build
and copy the formats.
Remove obsolete code to make video and audio formats.
Use SpaVideo/AudioInfo to keep track of formats. Make functions to parse
the format into the structures.
Update plugins
2017-02-24 09:28:18 +01:00
Wim Taymans
b38ecafe81 Use int counters for iterating items
Use counters instead of void* to iterate items. This simplifies some
things and makes it easier to do over the wire.
Add format description to NodeInfo and use this to add format
descriptions to pinos devices.
Small fixes to fix leaks and crashes.
2017-02-01 08:58:21 +01:00
Wim Taymans
8b84d8fde6 fix some leaks
Fix some leaks
Remove some unused fields
Install a loop so that plugins can use it
Start on adding format introspection
2017-01-31 09:57:58 +01:00
Wim Taymans
ee0aa6a2ac Implement access control
Move send and dispatch functions to the implementation. This makes it
possible to place an access check before sending and dispatching.
Add module-access that allows to bind and notify on globals owned by
the client.
2017-01-10 17:26:43 +01:00
Wim Taymans
85d375e4bb Implement subscription with a signal
Use a signal for subscription events
Work on handling OOM errors and other errors.
2016-12-22 16:50:01 +01:00
Wim Taymans
8ce3f949e2 Add core introspection
Use global ids in info messages to refer to global objects.
2016-12-15 20:09:48 +01:00
Wim Taymans
b969623ec8 Work on introspection 2016-12-02 13:38:43 +01:00
Wim Taymans
3dada4731c rename signal -> sig
Meson puts the directory of the source file in the include path and then
it picks up our signal.h instead of the system one...
2016-11-28 16:24:10 +01:00
Wim Taymans
27bba6f587 Make native protocol
Remove DBus and work towards something like wayland.
Remove more glib stuff from the client code
2016-11-24 17:00:42 +01:00
Wim Taymans
67dd3adb87 port to meson 2016-09-26 12:15:52 +02:00
Wim Taymans
7d3e46e7f9 Remove port
Remove the port object. We don't use it as a dbus object and we don't
need it, we can use the link and node object directy.
Move poll code and event handler to the node.
2016-09-02 19:51:23 +02:00
Wim Taymans
fbd6304663 Cleanups
Remove old code
Only depend on GStreamer for the plugins
Rename STOP to PAUSE because that's what it really does
Start working on format_fixate.
Remove default property value from props
Fix framerate
2016-08-25 14:10:38 +02:00
Wim Taymans
bdbddaf75b improve introspection
Small cleanups
2016-08-18 12:17:31 +02:00
Wim Taymans
f7d02c8d77 client: add client object instrospection 2016-07-20 17:55:02 +02:00
David Svensson Fors
6fcd0985a3 pinos-monitor: show peer ports 2016-06-28 12:29:12 +02:00
David Svensson Fors
e8116fa68d main, gst-manager, pinos-monitor: plug leaks 2016-06-28 12:28:53 +02:00
Wim Taymans
5f10a933a1 remove client object
Remove the client object, it is not very useful now that we have the
nodes.
Fix some properties on the proxy objects.
Use sendmsg and recvmsg directly because the GIO ones do allocations.
make pinos_properties_merge and use it to combine properties from nodes
and ports.
2016-05-18 17:22: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
20c50772fa Add provide mode to pinossink
Add a mode to provide a stream to pinossink
Small improvements, leak fixes.
2016-05-06 17:54:23 +02:00
Wim Taymans
ba4ef9b5d9 Introduce the concept of a Port
A port is an input or output on a Node.
Channels are created from the ports and inherit the direction of the
port.
do automatic port selection based on the direction and caps and
node/port name.
Simplify stream_connect by passing the direction.
Fix pinossink to connect in setcaps so that we know the format and can
select a good sink to connect to.
2016-05-06 13:01:52 +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
Wim Taymans
7597e48e02 source-output -> channel
Rename the source-output object to channel because it is used for both
input and output.
Start the beginnings of sink support. This will make it possible to make
pinos consume data as well as provide data.
2016-05-03 18:00:56 +02:00
Wim Taymans
4149e34e67 monitor: put marks on all properties 2016-04-07 11:51:05 +02:00
Wim Taymans
068032e1dd pinos-monitor: Improve output of removed objects
Don't print NULL properties or formats
Don't print property values for removed objects because they are all
invalid anyway.
2016-02-01 16:29:56 +01:00
Wim Taymans
cdb2028f9b src -> pinos and fix include paths
Rename src to pinos and fix all the include paths so that they contain
pinos/ to avoid conflicts
2016-02-01 15:40:48 +01:00
Renamed from src/tools/pinos-monitor.c (Browse further)