Commit graph

1687 commits

Author SHA1 Message Date
Wim Taymans
b3189bb5e7 media-session: handle port without node
Don't crash when the node proxy is destroyed before the port proxy.
2018-10-11 15:56:49 +02:00
Wim Taymans
bfcaec75c7 daemon: put version in config
Fixes #88
2018-10-11 09:41:30 +02:00
Wim Taymans
9479a00871 update submodules 2018-10-10 18:50:49 +02:00
Wim Taymans
78444aba4e uninstalled: update uninstalled 2018-10-10 18:04:28 +02:00
Arun Raghavan
dcfe1ac613 meson: Add an uninstalled target and script
This makes it easier to run PipeWire from the build environment
2018-10-10 17:17:17 +02:00
Wim Taymans
456c01afbc meson: enable more options by default
Update submodules to latest version
2018-10-10 17:16:01 +02:00
Tapasweni Pathak
8d71d2dab8 pipewire: add enable/disable to meson for spa plugins 2018-10-10 16:01:28 +02:00
Wim Taymans
805240258b Improve channel positions
Sort the channel positions as the suggested format
Use the session node channel positions as the target profile
2018-10-09 20:11:01 +02:00
Wim Taymans
1edf2dd210 client-stream: just stop feeding the graph in paused
Stop feeding the graph in paused instead of going to idle. We might
want to idle in the future when we can get the clock resume as well.
2018-10-09 16:34:37 +02:00
Wim Taymans
9dba8f3a36 stream: add flush and drain command 2018-10-09 16:33:54 +02:00
Wim Taymans
754782f302 add some more debug 2018-10-09 15:17:31 +02:00
Wim Taymans
caa3e83eb1 client-stream: link controls after profile was set 2018-10-08 18:19:59 +02:00
Wim Taymans
822b033fb1 channelmix: fix copy multiple channels 2018-10-08 18:19:15 +02:00
Wim Taymans
f06c1723a8 fmtconvert: also return inio status 2018-10-08 17:47:52 +02:00
Tapasweni Pathak
43c8942be1 pipewire: enable travis ci 2018-10-08 13:02:47 +02:00
Wim Taymans
63333adca3 port: don't keep port_info around but make copy 2018-10-08 13:00:18 +02:00
Wim Taymans
e1ec1bad23 spa: add profile param
Make a profile param that can be used to configure a node with a
certain profile.
Use the profile to configure the ports on splitter and merger and
get rid of the dynamic ports.
Use the profile to configure the client-node and audio-dsp.
Don't try to link more ports than available between client-node and
dsp.
2018-10-08 11:45:52 +02:00
Wim Taymans
6de03418ca port: emit signal after properties are set
So that we can use the node properties in the signal handler.
Also use the channel name of the port to make a port name.
2018-10-08 11:43:57 +02:00
Wim Taymans
595daf86c6 spa: add some macros to events and object types 2018-10-08 11:43:18 +02:00
Wim Taymans
a95cd608e7 a2dp: improve negotiation 2018-10-05 11:10:36 +02:00
Wim Taymans
41d38e56df media-session: keep track of dsp proxy
Keep the dsp_proxy around because we need it to clean up the
session.
2018-10-05 10:28:20 +02:00
Wim Taymans
4764d69e26 merger/splitter: only dynamic ports are dsp ports 2018-10-05 10:26:30 +02:00
Wim Taymans
b2e84e85c6 media-session: query stream format
Query the stream format. We will use this later to decide what to link
to and how to convert.
2018-10-04 16:41:00 +02:00
Wim Taymans
f81588f439 client-stream: there is always and adapter 2018-10-04 16:36:09 +02:00
Wim Taymans
8f1ebe0c7e client-stream: enum_params works to the client node 2018-10-04 16:32:42 +02:00
Wim Taymans
8de1d03feb audioconvert: use splitter/merger
Remove the split/merge functionality from fmtconvert.
Make audioconvert use the splitter/merger.
Let client-stream decide what mode to configure audioconvert in.
2018-10-04 16:03:14 +02:00
Wim Taymans
d8827e2109 client-stream: add started variable 2018-10-04 15:53:49 +02:00
Wim Taymans
eb934dacef properties: better default size 2018-10-04 15:27:00 +02:00
Wim Taymans
31f4ceb137 properties: return if property changed
make property_set functions return 1 if there was a change.
Only emit property change notifications when something actually
changed.
Try to only copy property value when needed.
2018-10-04 15:18:31 +02:00
Wim Taymans
0e2885b599 client-node: make the client parent 2018-10-03 20:09:47 +02:00
Wim Taymans
294bba65a1 node: update state on suspend 2018-10-03 20:08:00 +02:00
Wim Taymans
ea739df26f remote: notify error
Don't fail on errors but emit a signal
2018-10-03 19:30:06 +02:00
Wim Taymans
f3dfe61aa0 link: add link state and error to info
Notify when state changes
2018-10-03 19:29:11 +02:00
Wim Taymans
0358e8b480 client-stream: there is always an adapter 2018-10-03 19:27:46 +02:00
Wim Taymans
f46a83dcb7 resource: pass the resource id in the error 2018-10-03 19:24:53 +02:00
Wim Taymans
4401e479c6 small cleanups 2018-10-02 17:37:38 +02:00
Wim Taymans
1ef1563591 node: add PortsChanged event
Add the PortChanged event and make it rescan the node ports.
2018-10-02 17:35:54 +02:00
Wim Taymans
8efabe051e remove obsolete modules
remove obsolete media-session and suspend-on-idle. This functionality
is to be handled by an external session manager
2018-10-02 17:34:31 +02:00
Wim Taymans
3d36755c4f audio-dsp: use type-info to get channel names 2018-10-02 10:17:12 +02:00
Wim Taymans
eb765b26b3 command: add exec command
Add exec command and use it to start the session manager by default
2018-10-02 09:17:07 +02:00
Wim Taymans
575e177a48 client-stream: run the driver graph 2018-10-02 07:11:45 +02:00
Wim Taymans
32e4d676b4 media-session: clear manager after cleanup 2018-10-02 05:45:50 +02:00
Wim Taymans
0f69a7b767 node: remove and add node from graph in idle/running
Add the node and all links to the graph when going to running and
remove them again when idle.
2018-10-02 05:10:55 +02:00
Wim Taymans
cd1c7b74af remote: improve cleanup
don't free the proxy when the node is destroyed, the proxy has
user data that we need to clean up the ports. Instead let the
remote take care of destroying the proxy later.
2018-10-01 17:59:25 +02:00
Wim Taymans
c1eeb89e18 stream: fix debug of control messages 2018-10-01 11:15:51 +02:00
Wim Taymans
392b217f81 client-stream: make adapter port variable
We need this to add control ports later
2018-10-01 11:15:12 +02:00
Wim Taymans
ec88101004 v4l2: move log to instance 2018-10-01 10:55:35 +02:00
Wim Taymans
18408dad81 port: handle control only ports
Mark ports with only control io as control ports and skip negotiation
of buffers and format for them.
2018-09-28 17:55:01 +02:00
Wim Taymans
909abdb6bf port: remove some checks, the mixer is always set 2018-09-28 17:52:47 +02:00
Wim Taymans
1ca399d4a6 link: pass id to _set_io 2018-09-28 17:50:22 +02:00