Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								a4e079e1cb 
								
							 
						 
						
							
							
								
								media-session: guard against invalid input  
							
							 
							
							... 
							
							
							
							See #304  
							
						 
						
							2020-09-22 12:39:39 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								cf2c32f0a9 
								
							 
						 
						
							
							
								
								alsa: rework device reservation  
							
							 
							
							... 
							
							
							
							Always try to first reserve the device name and then start the probing
so that we can be sure that the device is not in use. 
							
						 
						
							2020-09-21 15:23:36 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								2b8568e14f 
								
							 
						 
						
							
							
								
								reserve: don't call busy/available when we are the owner  
							
							 
							
							... 
							
							
							
							Also ignore acquired from our other devices. 
							
						 
						
							2020-09-21 14:35:32 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								cc470c048b 
								
							 
						 
						
							
							
								
								reserve: improve debug  
							
							 
							
							
							
						 
						
							2020-09-21 14:35:08 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Arun Raghavan 
								
							 
						 
						
							
							
							
							
								
							
							
								2c8e2f3a36 
								
							 
						 
						
							
							
								
								reserve: Fix check for whether acquire succeeded or not  
							
							 
							
							... 
							
							
							
							We only deem success if we successfully became the primary name owner. 
							
						 
						
							2020-09-19 11:02:04 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Arun Raghavan 
								
							 
						 
						
							
							
							
							
								
							
							
								272624fe83 
								
							 
						 
						
							
							
								
								alsa-monitor: Don't ignore device reservation failure  
							
							 
							
							... 
							
							
							
							We were ignoring the reservation status, which is incorrect as we might
not have succeeded in grabbing the device. 
							
						 
						
							2020-09-19 11:02:04 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Arun Raghavan 
								
							 
						 
						
							
							
							
							
								
							
							
								2acfa0ee10 
								
							 
						 
						
							
							
								
								alsa-monitor: Lower our device reservation priority  
							
							 
							
							... 
							
							
							
							For now, let's lower our priority in device reservation below that of
PulseAudio (which currently uses a priority of 0), so that it takes
priority while contending for the same device. 
							
						 
						
							2020-09-19 11:02:04 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								8ee07c3c66 
								
							 
						 
						
							
							
								
								policy-node: always boost default node priority  
							
							 
							
							... 
							
							
							
							Make sure the default node as the highest priority.
Fixes a problem with default nodes not being selected when their
priority happens to be too low (bluetooth devices) 
							
						 
						
							2020-09-17 12:35:33 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								30dfe16c52 
								
							 
						 
						
							
							
								
								media-session: destroy errored links  
							
							 
							
							... 
							
							
							
							When a link we create is in error, destroy it. 
							
						 
						
							2020-09-14 20:19:44 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Sanchayan Maity 
								
							 
						 
						
							
							
							
							
								
							
							
								f4a949dc3a 
								
							 
						 
						
							
							
								
								examples: media-session: Conform to XDG base directory spec  
							
							 
							
							... 
							
							
							
							Currently pipewire-media-session uses ~/.pipewire-media-session for
storing configuration. Use home directory as specified by XDG base
directory specification viz. XDG_CONFIG_HOME and fall back to using
a default of $HOME/.config as per the spec if XDG_CONFIG_HOME is not
set or empty. Also in addition, all cases are now handled the same
and always end up using "%s/.config/pipewire-media-session".
If neither XDG_CONFIG_HOME or HOME are set, fall back to the earlier
approach.
Fixes: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/271 
Signed-off-by: Sanchayan Maity <sanchayan@asymptotic.io>
Fixes  !298  
							
						 
						
							2020-09-09 17:51:30 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b6e78f5577 
								
							 
						 
						
							
							
								
								improve debug  
							
							 
							
							
							
						 
						
							2020-09-03 11:14:58 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								dd0f4c7295 
								
							 
						 
						
							
							
								
								policy-node: only send PortConfig on audio nodes  
							
							 
							
							... 
							
							
							
							0.2 version don't handle this correctly.
Possibly fixes  #270  
							
						 
						
							2020-09-02 14:25:11 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								1e2d5e6837 
								
							 
						 
						
							
							
								
								policy-node: force channel setup of target node  
							
							 
							
							... 
							
							
							
							When we are switching to a target node, force a downmix to the
target channel layout if we can. Don't try to upmix for now and
don't try to mix when the dont-mix flag is set. 
							
						 
						
							2020-08-19 11:53:07 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								d878843c2b 
								
							 
						 
						
							
							
								
								policy-node: keep the original node format  
							
							 
							
							
							
						 
						
							2020-08-19 11:26:51 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								0c04481ba7 
								
							 
						 
						
							
							
								
								metadata: improve default sink/source  
							
							 
							
							... 
							
							
							
							Only check defaults when subject is PW_ID_CORE
Handle NULL keys: remove the defaults 
							
						 
						
							2020-08-18 17:56:05 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								3174e8b69e 
								
							 
						 
						
							
							
								
								media-session: fix spelling mistake  
							
							 
							
							
							
						 
						
							2020-08-17 19:30:26 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								14fdf07e8f 
								
							 
						 
						
							
							
								
								Run codespell on the entire codebase  
							
							 
							
							... 
							
							
							
							This tool detects and fixes common English spelling mistakes, with
generally very few mistakes.
Here is the command I used to generate this commit.  There were a few
changes that had to be done manually, and of course adding the ignore
file:
```shell
codespell -I .codespell-ignore -x .codespell-ignore -w
```
I didn’t add it to the CI, but this would be a good place for it. 
							
						 
						
							2020-08-17 17:16:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								688a1ab082 
								
							 
						 
						
							
							
								
								media-session: add module to restore stream settings  
							
							 
							
							
							
						 
						
							2020-08-17 17:55:20 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								6b7928aee5 
								
							 
						 
						
							
							
								
								media-session: only debug param when loglevel set  
							
							 
							
							
							
						 
						
							2020-08-17 17:52:25 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								28bb212630 
								
							 
						 
						
							
							
								
								policy-node: improve move  
							
							 
							
							... 
							
							
							
							Don't try to do work when not needed 
							
						 
						
							2020-08-17 17:50:42 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								f9a5053c73 
								
							 
						 
						
							
							
								
								media-session: improve cleanup in some modules  
							
							 
							
							
							
						 
						
							2020-08-17 17:50:15 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								e544f82004 
								
							 
						 
						
							
							
								
								Revert "default-profile: keep a restore and save list"  
							
							 
							
							... 
							
							
							
							This reverts commit de71618b99 .
Doesn't work when the device is removed and added again. 
							
						 
						
							2020-08-17 16:04:22 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								d337abf690 
								
							 
						 
						
							
							
								
								media-session: escape and unescape keys when saving  
							
							 
							
							... 
							
							
							
							So that we can allow space in the keys. 
							
						 
						
							2020-08-17 12:12:11 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								de71618b99 
								
							 
						 
						
							
							
								
								default-profile: keep a restore and save list  
							
							 
							
							... 
							
							
							
							Load the settings into the restore list, when we see a device and it's
in the restore list, restore the profile and remove from restore list.
All updates to profiles go into the save list and it is then saved. 
							
						 
						
							2020-08-17 11:48:52 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								48a7e83fab 
								
							 
						 
						
							
							
								
								media-session: add module to restore route volumes  
							
							 
							
							
							
						 
						
							2020-08-17 11:17:21 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								31a3fab554 
								
							 
						 
						
							
							
								
								media-session: use name from Profile param  
							
							 
							
							
							
						 
						
							2020-08-17 11:15:44 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								05416b497c 
								
							 
						 
						
							
							
								
								media-session: improve property save/load  
							
							 
							
							... 
							
							
							
							Allow spaces in the property values. 
							
						 
						
							2020-08-17 11:10:16 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								4ad6c627a0 
								
							 
						 
						
							
							
								
								media-session: add module to restore card profile  
							
							 
							
							... 
							
							
							
							Save card profiles to file and restore. 
							
						 
						
							2020-08-13 17:01:47 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								cf6ffcacb8 
								
							 
						 
						
							
							
								
								media-session: do some more cleanup  
							
							 
							
							
							
						 
						
							2020-08-13 17:00:08 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								efdeceddab 
								
							 
						 
						
							
							
								
								media-session: Add module to load/save default nodes  
							
							 
							
							... 
							
							
							
							Nodes are stored with their (unique) name and restored with their
ID on the metadata. 
							
						 
						
							2020-08-13 11:33:48 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								8a4dd83883 
								
							 
						 
						
							
							
								
								media-session: add API to load/store state  
							
							 
							
							
							
						 
						
							2020-08-13 11:33:48 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								4b42639541 
								
							 
						 
						
							
							
								
								metadata: only emit signal when metadata changed  
							
							 
							
							
							
						 
						
							2020-08-12 18:59:59 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								a0777d7806 
								
							 
						 
						
							
							
								
								policy-node: only set peer when we actually linked something  
							
							 
							
							
							
						 
						
							2020-08-07 10:50:30 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								46b8b67ee6 
								
							 
						 
						
							
							
								
								policy-node: small cleanup  
							
							 
							
							... 
							
							
							
							to keep the orinal node around if we want to do something with it
later 
							
						 
						
							2020-08-06 17:58:42 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								7cdef8aa32 
								
							 
						 
						
							
							
								
								media-session: improve debug  
							
							 
							
							
							
						 
						
							2020-08-06 17:11:35 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								e71936f870 
								
							 
						 
						
							
							
								
								Improve naming  
							
							 
							
							... 
							
							
							
							master -> driving
priority_master -> priority_driver
segment_master -> segment_owner 
							
						 
						
							2020-08-06 13:49:33 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								4b56574ce0 
								
							 
						 
						
							
							
								
								policy-node: don't fail on incomplete format  
							
							 
							
							... 
							
							
							
							Use some defaults when parsing the audio format. 
							
						 
						
							2020-08-06 12:51:20 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								64067bafe3 
								
							 
						 
						
							
							
								
								media-session: remove listener  
							
							 
							
							
							
						 
						
							2020-08-04 13:46:22 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								66816580bc 
								
							 
						 
						
							
							
								
								alsa: improve configuration of NICK  
							
							 
							
							
							
						 
						
							2020-08-03 18:16:53 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								79937676a4 
								
							 
						 
						
							
							
								
								alsa: add profile description in node description  
							
							 
							
							
							
						 
						
							2020-08-03 16:28:09 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								f2cc0e6723 
								
							 
						 
						
							
							
								
								media-session: add some debug for enum-param  
							
							 
							
							
							
						 
						
							2020-07-31 15:21:39 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								5bdd65e066 
								
							 
						 
						
							
							
								
								device: pass original seq in async reply  
							
							 
							
							... 
							
							
							
							When we get an async reply from the implementer, use the original
seq from the caller in the reply.
Fixes  !287  
							
						 
						
							2020-07-31 15:19:45 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								5e51cbe48e 
								
							 
						 
						
							
							
								
								media-session: improve param enumeration  
							
							 
							
							... 
							
							
							
							Don't use subscribe, enum is more manageable.
Use user data field to check for changes.
Only enumerate readable params.
Enum all node params. 
							
						 
						
							2020-07-31 13:59:25 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								6fd373ac83 
								
							 
						 
						
							
							
								
								examples: add support for YUV data  
							
							 
							
							
							
						 
						
							2020-07-31 11:44:20 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								91d4806611 
								
							 
						 
						
							
							
								
								permission: add some helpers  
							
							 
							
							... 
							
							
							
							Add PW_PERM_ALL as a shortcut for all permissions
Add PW_PERMISSION_FORMAT and PW_PERMISSION_ARGS to nicely format
permissions. 
							
						 
						
							2020-07-30 16:26:29 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								0d6bbaa7e1 
								
							 
						 
						
							
							
								
								policy-node: only configure devices when active  
							
							 
							
							... 
							
							
							
							Wait until a node is active before we attempt to configure it or
else we don't yet have a format to configure it with. 
							
						 
						
							2020-07-29 12:20:24 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								a2de3b0873 
								
							 
						 
						
							
							
								
								policy-node: add default video source metadata  
							
							 
							
							
							
						 
						
							2020-07-28 11:17:36 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								9e8851e0ae 
								
							 
						 
						
							
							
								
								policy-node: do downmix in monitor streams  
							
							 
							
							... 
							
							
							
							Monitor streams usually have 1 channel so ask for all monitored
channels to be downmixed.
Don't try to configure video or unknown streams 
							
						 
						
							2020-07-28 10:50:00 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								a96fcf5c19 
								
							 
						 
						
							
							
								
								policy-node: rework node configuration  
							
							 
							
							... 
							
							
							
							Add a configure stage to the node where the PortConfig is
determined.
Wait until we link a stream and then configure the node with the
portconfig of the peer.
Configure devices with the their best portconfig by enumerating
the formats. 
							
						 
						
							2020-07-28 10:21:01 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								e35586cd15 
								
							 
						 
						
							
							
								
								media-session: link MONO/UNKNOWN channels only once  
							
							 
							
							... 
							
							
							
							Try to only link the MONO and UNKNOWN input ports once 
							
						 
						
							2020-07-27 17:41:52 +02:00