Don't directly expose the state change methods. Only expose an activate
method for nodes that indicates if the node should be scheduled or not.
Let the link automatically negotiate two active nodes.
Make some defines for properties.
Use link property to make passive links. Passive links don't activate
the nodes.
Make sure the mainloop quits when quit is called before run.
Add an extra input and output node for remote nodes. We link this
node to all remote inputs and outputs to make it easier to use
the scheduler.
Improve scheduler debug
Sometimes we insert NULL into the client object map to mark the object
freed. Now that the map also returns those NULL's, don't try to free
them.
Small cleanups
Make some port methods private.
Replace the v4l2 example with a more generic version that can add
any spa node to a remote graph
Make the dictionary items const
Add some info to nodes and factories. Add the node info to the node
properties. We can then set the media.class directly on the node,
instead of letting the monitor set it.
Debug node info in spa-inspect.
Do async operation on the audiotestsrc and videotestsrc differently.
* Fix use after free in error path
Memory pointed by 'handle' is used in error path but it is freed before jumping to interface_failed. Remove the wrong free. Memory pointed by 'handle' gets freed in the error handling path.
* Free 'bus' when dbus_bus_get_private fails
If dbus_bus_get_private fails memory pointed by 'bus' is never freed. Free it.
* Free 'impl' if dbus_bus_get_private fails
When dbus_bus_get_private fails the memory pointed by 'impl' is not freed. Free it.
When compiling some application and include spa/loop.h, it needs hook.h,
so install it.
Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
* Fix clang warnings about comparing uint32 < 0
clangs complains about an uint32 compared to < 0:
warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
So remove these comparisos and an uint32 never will be less than 0.
Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
* module-jack.c: Differentiate error msg from protocol-native
Signed-off-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Avoid duplicating API, remove implementations from port and node and
always use an spa_node as the implementation, it's just as easy to
implement a spa node. With the implementation always being a spa_node
we will be able to better implement the negotiation of the mixers.