summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-08-10Add enabled state as wellenable-2Wim Taymans12-33/+123
The idea is to have the client use the active/inactive flag to start negotiation and the enabled+active flag to start or stop the node. The session manager would then enable the node only after it was configured to make sure the server doesn't start the node before it's configured.
2020-08-07stream: use PIPEWIRE_NODE env as target_id fallbackWim Taymans1-0/+2
2020-08-07stream: use PIPEWIRE_LATENCY env as fallbackWim Taymans2-0/+8
2020-08-07remote-node: activate node after initWim Taymans1-2/+6
Activate the node after we successfully created a proxy and initialized it.
2020-08-07remote-node: clean node on errorWim Taymans1-1/+6
2020-08-07policy-node: only set peer when we actually linked somethingWim Taymans2-4/+5
2020-08-07adapter: only become started on successWim Taymans1-1/+5
2020-08-07improve debug and error messagesWim Taymans4-9/+29
2020-08-06node: add group_id propertyWim Taymans4-10/+46
Nodes with the same group id are scheduled by the same driver, even if they are not in any way linked to eachother.
2020-08-06client-node: improve debugWim Taymans1-0/+2
2020-08-06policy-node: small cleanupWim Taymans1-7/+9
to keep the orinal node around if we want to do something with it later
2020-08-06media-session: improve debugWim Taymans1-5/+5
2020-08-06gst: convert properties to strings when we canWim Taymans2-10/+22
2020-08-06Improve namingWim Taymans14-62/+63
master -> driving priority_master -> priority_driver segment_master -> segment_owner
2020-08-06gst: don't do set_caps from the pipewire callbackWim Taymans2-16/+25
Don't do any GStreamer data transport from the PipeWire callback because it might block in preroll and block our communication with PipeWire. Instead, take the caps and wake up the caller to continue with negotiation.
2020-08-06gst: increase buffers in sinkWim Taymans1-3/+10
2020-08-06gst: pool add support for DONT_WAIT flagWim Taymans1-0/+9
2020-08-06policy-node: don't fail on incomplete formatWim Taymans1-2/+9
Use some defaults when parsing the audio format.
2020-08-06Use fcnt F_DUPFD_CLOEXEC to dup an fdWim Taymans2-2/+3
Closes #38
2020-08-05param: add type info for volumeStep and BaseWim Taymans1-0/+2
2020-08-05port: only warn if we're not cleaning upWim Taymans1-1/+1
2020-08-05pw-cat: enable rtkitWim Taymans1-1/+5
2020-08-05context: make it possible to control loaded modulesWim Taymans1-1/+4
use the PIPEWIRE_PROFILE_MODULES env variable to load the modules when nothing else is given.
2020-08-05pulse: enable rtkit on the clientWim Taymans1-1/+5
2020-08-05stream: set the right NODE_NAMEWim Taymans2-2/+2
2020-08-05use global_update_keysWim Taymans9-72/+32
First set the properties in the object itself and then copy them over to the global. This ensure that the global properties are also in the object and makes code a bit cleaner. It also make it possible to use the global id to make the property values unique, if we want to later .
2020-08-05global: add method to update global keysWim Taymans2-0/+14
2020-08-05jack: Use out node name from the serverWim Taymans1-5/+19
Get the node name from the global info when we see it. Check if the name changed and set the right result flag for the app.
2020-08-05properties: use the _for_each iteratorWim Taymans1-3/+3
2020-08-04pulse: handle NULL pw_streamWim Taymans1-1/+2
The pipewire stream might have been destroyed when the pulse stream is freed.
2020-08-04pulse: always load the registryWim Taymans3-105/+7
Always get the registry, even if we're not using the introspect API we still need it to keep track of the linked devices.
2020-08-04pulse: handle device_name of NULL as errorWim Taymans1-4/+2
2020-08-04stream: let the operation emit the TERMINATED stateWim Taymans1-2/+1
When we disconnect, let the operation emit the TERMINATED state because some apps expect this state to be emited asynchronously. Makes GStreamer pulsesink work. Fixes #210
2020-08-04pulse: handle memory user_data of NULLWim Taymans1-1/+2
2020-08-04pulse: improve debugWim Taymans1-8/+8
2020-08-04pulse: actually remember the default sourceWim Taymans2-3/+3
2020-08-040.3.9Wim Taymans2-1/+39
2020-08-04link: don't connect to port destroy signalWim Taymans1-50/+13
Now that _port_destroy will first destroy all the links, there is no need to listen for the destroy signal anymore in the link.
2020-08-04alsa: use PIPEWIRE_REMOTE env variableWim Taymans2-0/+11
2020-08-04media-session: remove listenerWim Taymans1-0/+1
2020-08-04acp: fix size of arrayWim Taymans1-1/+1
2020-08-03stream: clear user data on flushWim Taymans1-3/+22
Or else we might add the memory to the free list again when we free the buffers. Fixes audacity using the pulseaudio backend in portaudio.
2020-08-03alsa: improve configuration of NICKWim Taymans1-7/+24
2020-08-03acp: pass all properties when creating a cardWim Taymans1-5/+6
They might contain other info like prefered card name etc.
2020-08-03jack: prefer nick for node nameWim Taymans1-2/+2
The nick is shorter and nicer for jack applications. We have the full description in the port alias 2.
2020-08-03client-device: first set implementation, then registerWim Taymans1-1/+1
Setting the implementation updates the properties so that we have more info when creating the global.
2020-08-03acp: use some existing keys and add some new onesWim Taymans2-5/+7
2020-08-03alsa: add profile description in node descriptionWim Taymans1-2/+6
2020-08-03alsa-util: fix check for digitWim Taymans1-1/+1
Fix the check for a digit by checking if the value is between the *character* '0' (not *value* 0) and '9'.
2020-08-03stream: fix printf modifierWim Taymans1-1/+1