George Kiagiadakis
df66edd9ab
session-manager: implement 'endpoint' factory
...
This is modeled after the 'metadata' factory and provides
a way to use the pw_endpoint interface directly to implement
an endpoint object in a client.
2020-03-27 14:56:07 +00:00
George Kiagiadakis
0a8ec0380b
session-manager: check error code when registering the marshallers
2020-03-27 14:56:07 +00:00
George Kiagiadakis
e971a79fce
session-manager: implement export functions for session-manager objects
2020-03-27 14:56:07 +00:00
George Kiagiadakis
234c642746
session-manager: move files into client-endpoint / client-session subdirs
...
To clean up space for the new implementation.
The existing code is exclusively for use with the client-endpoint
and client-session factories.
2020-03-27 14:56:07 +00:00
George Kiagiadakis
bc3a92e950
session-manager: add impl marshallers for endpoint, -stream, -link and session
2020-03-27 14:56:07 +00:00
Wim Taymans
b3d0aa6f8c
pw-cat: allow latency=none
2020-03-26 11:34:59 +01:00
Wim Taymans
125f1f109c
context: allow quantum up to configured max
...
Clip the quantum values between absolute min and max.
If a client selected a quantum, allow this to exceed the default
quantum up to the max-quantum.
If a client doesn't select a quantum, use the default.
2020-03-26 11:27:36 +01:00
Wim Taymans
7693834a81
pw-profiler: report error when we can't bind
2020-03-26 10:24:14 +01:00
Wim Taymans
413bda908a
pw-cli: continue after parsed options
2020-03-25 18:00:50 +01:00
Wim Taymans
c292a6d54e
pw-cli: add non-interactive mode
...
You can now pass a command to pw-cli and it will execute immediately
and exit.
Fixes #195
2020-03-25 11:17:02 +01:00
Wim Taymans
646088b90c
tools: add getopt argument parsing
...
Add some help, version, remote options for tools
Add option for output filename in pw-profiler
Add option to start pw-cli as daemon or not, make it connect to the
default PipeWire instance by default (instead of local instance)
2020-03-24 16:36:48 +01:00
Wim Taymans
4c80656a7b
examples: small improvements
...
Don't set EXCLUSIVE flag on video-play
2020-03-20 11:24:29 +01:00
Wim Taymans
67eb89689d
stream: only warn about mlock when in RT mode
...
Only warn about mlock failure when the stream is configured to
operate in REALTIME mode.
2020-03-20 11:21:44 +01:00
Wim Taymans
0d3aa1fd30
Fix export type prototype
...
Pass the type as provided by the export type. This way we can
look up the owner of the export type later.
2020-03-19 18:12:07 +01:00
Wim Taymans
2948d504c8
example: fix v4l2 example
...
We need to emit a port param update to notify of new Buffer
parameters.
2020-03-19 18:08:34 +01:00
Wim Taymans
acccccd2c0
Use SPA_IO_BUFFERS_INIT when we can
...
We should not have to initialize the state to NEED_DATA, anything
that is not HAVE_DATA is good. Also we need to set the buffer to
INVALID because else it might be recycled.
2020-03-19 13:09:21 +01:00
Wim Taymans
6d673cc77c
conf: update defaults
2020-03-18 17:53:46 +01:00
Wim Taymans
c4708f97ff
examples: don't use lrintf for each sample
2020-03-18 17:40:26 +01:00
Wim Taymans
13d66df2df
example: fix buffer size calculation
2020-03-18 17:23:14 +01:00
Wim Taymans
8a2af908a7
small optimizations
...
Add some SPA_LIKELY
Enable FASTPATH by default
2020-03-18 15:43:29 +01:00
Wim Taymans
72d70b0f48
Add and fix some more warnings
...
Fixes #216
2020-03-17 11:37:56 +01:00
Wim Taymans
cb7bfdf98a
sprinkly SPA_LIKELY/UNLIKELY around
2020-03-16 12:52:28 +01:00
Wim Taymans
d762d57665
impl-node: the mix output port is always 0
2020-03-16 11:11:35 +01:00
Wim Taymans
e13e81881f
examples: use dataType mask
...
Set the dataType mask to MemFd because that is what we can
produce. Check the negotiated buffer data types.
2020-03-09 18:05:51 +01:00
Wim Taymans
f94c24af97
buffers: negotiate dataType in buffers
...
Use the dataType in the Buffers param. It contains a bitmask
of compatible types between ports.
2020-03-09 17:44:42 +01:00
Wim Taymans
c66d60fbdb
buffers: handle param enum errors
...
When filtering parameters, return an error when something went
wrong as opposed to 0. This way we can see if there was an error
or just no parameters. Fail when there was an error negotiating
the buffer size because that means incompatible values.
2020-03-09 17:04:00 +01:00
Rasmus Thomsen
fba9d8931d
module-protocol-native: fix build on s390x
2020-03-09 08:52:16 +00:00
Rasmus Thomsen
cfd829913e
meson: add rpath on the modules_install_dir for all modules
...
Otherwise the dynamic loader won't be able to find libraries in
modules_install_dir we link against
fixes #214
2020-03-09 08:51:49 +00:00
Wim Taymans
1b0ad00fb1
conf: update and document the config file a little
2020-03-06 18:13:13 +01:00
Wim Taymans
e93d235208
command: add -nofail to create-object
2020-03-06 18:08:44 +01:00
Wim Taymans
bb15472e7c
context: "none" is a valid profile that loads nothing
2020-03-06 18:07:55 +01:00
Wim Taymans
54eef8bb9d
pw-cat: write midi bytes directly.
2020-03-06 16:47:02 +01:00
Wim Taymans
6700e332f9
Revert "pw-cli: Collect and display parameters from global symbols"
...
This reverts commit 3b53a6e049 .
2020-03-06 16:33:50 +01:00
Wim Taymans
524f9fd96d
Revert "Implement JSON/YAML command for graph tree traversal"
...
This reverts commit 7ead270265 .
2020-03-06 16:33:36 +01:00
Wim Taymans
8644e80304
Revert "Fix change_mask string generation"
...
This reverts commit b445bdea27 .
2020-03-06 16:33:14 +01:00
Wim Taymans
b7f952e02b
Revert "Fix printf attribute compilation errors"
...
This reverts commit 4175191d19 .
2020-03-06 16:30:32 +01:00
Wim Taymans
d880db3933
Revert "pw-cli: use core object to map id to proxy"
...
This reverts commit 918acd61ef .
2020-03-06 16:30:18 +01:00
Wim Taymans
e9884fcfb5
pw-*: Use user data to track param changes
...
Use the new param_info user field to track individual param
changes and only notify thos that changed.
2020-03-06 15:41:02 +01:00
Wim Taymans
43601ad722
introspect: use the user flag to count changes
...
Whenever a param change was found, increment the user counter
of the spa_param_info. We can use this to detect changes in
individial param_info items without having to track them
ourselves.
2020-03-06 15:40:58 +01:00
Wim Taymans
b070752add
context: don't load rtkit by default
...
Don't load and use rt-kit by default because it can cause sigkill in
the app, which is not good when it happens in a compositor.
Make the module profile a comma-separated list of profiles and make
it possible to explicitly load rtkit as well.
load the rtkit profile as well in jack.
2020-03-05 12:12:46 +01:00
Wim Taymans
c4b2be2aad
use true and false for boolean properties
...
So that it's easier to convert them to booleans in introspection
code later.
2020-03-03 18:17:46 +01:00
Wim Taymans
b60d7bf2bc
examples: always use last buffers
...
Skip buffers and always use the last buffer in the queue. This
compensates for slow reading clients.
2020-03-03 13:28:21 +01:00
Wim Taymans
b9916ea5b2
impl-node: don't warn when setting io fails
...
It's ok to not implement the io_position area. Don't warn when this
happens but always configure the area in the node.
2020-03-03 13:18:36 +01:00
Wim Taymans
913cf29dcd
context: always set unassigned node driver to NULL
...
When a node is unassigned and doesn't need a driver, set the driver
to NULL and the node to IDLE.
2020-03-03 13:04:33 +01:00
Wim Taymans
fd262aa0f2
adapter: add some debug
2020-03-03 13:04:13 +01:00
Wim Taymans
205828a244
daemon: add create-object command
...
Add a command to create an object from a factory. Add some example
lines in the config file on how to wrap an audiotestsrc in an
adapter with this.
2020-03-03 12:15:49 +01:00
Wim Taymans
11fc529fa0
stream: don't call trigger in dequeue
...
Dequeue should not ever trigger the start of a cycle.
2020-03-03 11:17:47 +01:00
Wim Taymans
2d88970dab
examples: use better Buffer values
2020-03-03 11:17:22 +01:00
Wim Taymans
ce275e5917
small cleanups
2020-03-03 10:25:03 +01:00
Wim Taymans
3d9f54d8a4
midifile: count channels from 1 to 16
2020-03-03 10:25:03 +01:00