Peter Hutterer 
								
							 
						 
						
							
							
							
							
								
							
							
								e0471c6757 
								
							 
						 
						
							
							
								
								pipewire: allow NULL pointers in pw_properties_free()  
							
							 
							
							... 
							
							
							
							Just like the real free() we should just ignore a NULL pointer, makes the
caller code easier for those instances where properties are optional.
Patch generated with concinelle with a few manual fixes. 
							
						 
						
							2021-06-02 10:56:46 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								5a186ece01 
								
							 
						 
						
							
							
								
								alsa: handle plugin errors better  
							
							 
							
							... 
							
							
							
							When the plugins can't be loaded, we fail to make a main_loop.
Handle this case instead of segfaulting.
See #1239  
							
						 
						
							2021-05-28 11:38:02 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Peter Hutterer 
								
							 
						 
						
							
							
							
							
								
							
							
								f3f915e897 
								
							 
						 
						
							
							
								
								pipewire-alsa: fix scan-build errors for unused variables  
							
							 
							
							... 
							
							
							
							All cases of value stored but never read 
							
						 
						
							2021-05-26 07:51:27 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Peter Hutterer 
								
							 
						 
						
							
							
							
							
								
							
							
								7697ed0757 
								
							 
						 
						
							
							
								
								treewide: replace strcmp() == 0 with spa_streq()  
							
							 
							
							... 
							
							
							
							This change is only done in source files for now, header files will be done
separately. 
							
						 
						
							2021-05-18 22:10:27 +10:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								0999f3cf93 
								
							 
						 
						
							
							
								
								alsa-plugin: handle context create error  
							
							 
							
							
							
						 
						
							2021-05-10 13:28:36 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Peter Hutterer 
								
							 
						 
						
							
							
							
							
								
							
							
								2405f0942b 
								
							 
						 
						
							
							
								
								spa/buffer: rename SPA_MEMBER to SPA_PTROFF  
							
							 
							
							... 
							
							
							
							SPA_MEMBER is misleading, all we're doing here is pointer+offset and a
type-casting the result. Rename to SPA_PTROFF which is more expressive (and
has the same number of characters so we don't need to re-indent). 
							
						 
						
							2021-05-06 09:39:39 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								184bdbeb4c 
								
							 
						 
						
							
							
								
								alsa-plugin: Implement query_chmaps again  
							
							 
							
							... 
							
							
							
							Return a list of our supported channel positions.
Fixes  #825  
							
						 
						
							2021-03-04 11:56:28 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Jonas Holmberg 
								
							 
						 
						
							
							
							
							
								
							
							
								29be757598 
								
							 
						 
						
							
							
								
								pipewire-alsa: fix drain for capture  
							
							 
							
							... 
							
							
							
							Since pw_stream doesn't call the drained callback after flush for
capture it has to be called explicitly from process. 
							
						 
						
							2021-03-03 19:00:13 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								0aadc0450d 
								
							 
						 
						
							
							
								
								alsa: implement poll_descriptors  
							
							 
							
							... 
							
							
							
							In there we can evaluate the poll fd and make sure it blocks or not
in the following poll based on the buffer filled levels. Some API
is very sensitive about this, it seems.
Fixes  #433  
							
						 
						
							2021-03-02 15:03:27 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								8386ddff78 
								
							 
						 
						
							
							
								
								alsa-plugin: Fix default channel layout  
							
							 
							
							... 
							
							
							
							We need to use the default channel layout that alsa clients expect.
Remove query chmap, nobody uses that, we need to use the alsa default
channel map.
Implement set_chmap in case anybody wants to set a custom map. 
							
						 
						
							2021-02-25 17:42:32 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								555d5db384 
								
							 
						 
						
							
							
								
								alsa: make sure we are started when draining  
							
							 
							
							... 
							
							
							
							We need to be started before waiting for drain.
Fixes  #787  
							
						 
						
							2021-02-25 12:14:42 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b9241b1d73 
								
							 
						 
						
							
							
								
								alsa: set application.name  
							
							 
							
							
							
						 
						
							2021-02-19 10:06:40 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								7053936ffd 
								
							 
						 
						
							
							
								
								don't attempt to connect to empty remote name  
							
							 
							
							... 
							
							
							
							Fixes jconvolver startup.
See #744  
							
						 
						
							2021-02-18 10:22:39 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								972e740519 
								
							 
						 
						
							
							
								
								Don't advertize formats we don't yet support  
							
							 
							
							... 
							
							
							
							We don't handle the reverse endian formats yet so make sure we
don't advertize them. 
							
						 
						
							2021-02-05 12:12:44 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								32a3913933 
								
							 
						 
						
							
							
								
								alsa-plugin: use MIN_BUFFERS for max as well  
							
							 
							
							... 
							
							
							
							To get a more reasonable max 
							
						 
						
							2021-02-04 17:15:46 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									thedannysmith 
								
							 
						 
						
							
							
							
							
								
							
							
								5e9246e1f7 
								
							 
						 
						
							
							
								
								alsa-plugin: change hw-constrainy buffer-size  
							
							 
							
							
							
						 
						
							2021-02-04 17:14:19 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								675a12ef33 
								
							 
						 
						
							
							
								
								alsa: clamp elapsed time to delay  
							
							 
							
							... 
							
							
							
							If the elapsed time is larger than the delay, we are dealing with
an older timestamp.
Fixes  #597  
							
						 
						
							2021-01-20 11:54:19 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								fd520c4b39 
								
							 
						 
						
							
							
								
								alsa-plugin: set buffer size correctly  
							
							 
							
							... 
							
							
							
							Our output buffer size is always what is needed to produce one
period of samples. We use nframes from the hardware and the rest
we fill with silence. 
							
						 
						
							2021-01-18 10:03:19 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								d2aee61880 
								
							 
						 
						
							
							
								
								alsa: don't write more than wat is requested  
							
							 
							
							
							
						 
						
							2021-01-17 17:20:59 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b4e3d546e0 
								
							 
						 
						
							
							
								
								alsa: fill frames with silence when underrun  
							
							 
							
							... 
							
							
							
							Keep track of how many samples we need to produce. If we don't have
enough samples in the ringbuffer, fill the rest with silence.
See #564  
							
						 
						
							2021-01-15 18:34:38 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								0c2b4df8e5 
								
							 
						 
						
							
							
								
								alsa: implement _delay to get smoother timestamps  
							
							 
							
							... 
							
							
							
							Fixes  #536  
							
						 
						
							2021-01-09 10:50:39 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								3f0cadfa00 
								
							 
						 
						
							
							
								
								alsa: use rate_match to read exactly what we need  
							
							 
							
							... 
							
							
							
							Use the rate match from the resampler to get the exact amount
of samples we need to provide in this cycle. 
							
						 
						
							2021-01-08 16:55:24 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								55c5e48578 
								
							 
						 
						
							
							
								
								alsa: set offset to 0 for playback streams  
							
							 
							
							
							
						 
						
							2020-12-18 15:32:27 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b8300c663b 
								
							 
						 
						
							
							
								
								improve some errors  
							
							 
							
							... 
							
							
							
							Silence some -ENOENT warnings, they can happen when the object we
are introspecting is destroyed 
							
						 
						
							2020-11-29 16:22:50 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Oschowa 
								
							 
						 
						
							
							
							
							
								
							
							
								92c541ea03 
								
							 
						 
						
							
							
								
								pipewire-alsa: Make sure to always fill the pipewire buffers with  
							
							 
							
							... 
							
							
							
							silence on process if there is not enough data.
This fixes noise with the retroarch alsa backend on pause, which doesn't
actually pause the device. 
							
						 
						
							2020-11-01 19:28:38 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Oschowa 
								
							 
						 
						
							
							
							
							
								
							
							
								86acbabe8f 
								
							 
						 
						
							
							
								
								pipewire-alsa: implement pause  
							
							 
							
							
							
						 
						
							2020-11-01 19:04:37 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Oschowa 
								
							 
						 
						
							
							
							
							
								
							
							
								d960724dfc 
								
							 
						 
						
							
							
								
								pipewire-alsa: fix inconsistent formating (tabs vs. spaces)  
							
							 
							
							
							
						 
						
							2020-11-01 18:38:46 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								e571c0bcb1 
								
							 
						 
						
							
							
								
								alsa: Use "PipeWire ALSA" as the node name  
							
							 
							
							... 
							
							
							
							So that it is easier to know it is the PipeWire one. 
							
						 
						
							2020-10-27 16:11:14 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Mersad Jelacic 
								
							 
						 
						
							
							
							
							
								
							
							
								9de98df1b7 
								
							 
						 
						
							
							
								
								pipewire-alsa: Use monotonic clock  
							
							 
							
							... 
							
							
							
							Use monotonic clock instead of gettimeofday for timestamps. 
							
						 
						
							2020-10-27 14:53:17 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								3567efb7f8 
								
							 
						 
						
							
							
								
								alsa: allow setting playback/capture_node as node name  
							
							 
							
							... 
							
							
							
							See !314  
							
						 
						
							2020-10-24 15:53:48 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Jan Grulich 
								
							 
						 
						
							
							
							
							
								
							
							
								743cf58fb7 
								
							 
						 
						
							
							
								
								Define SPA_FALLTHROUGH to make fall-through annotations work for all compilers  
							
							 
							
							... 
							
							
							
							This is needed for example for Clang compiler which uses different
annotations than GCC. It will make WebRTC to happily use PipeWire
since the spa library is header-only and WebRTC defaults to use
Clang with -Wimplicit-fallthrough. 
							
						 
						
							2020-10-22 13:31:19 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								1bd31c1cf1 
								
							 
						 
						
							
							
								
								don't force a MEDIA_ROLE property  
							
							 
							
							... 
							
							
							
							The application has to set a media role. 
							
						 
						
							2020-10-14 12:11:35 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								9dfd261c71 
								
							 
						 
						
							
							
								
								add some more debug info  
							
							 
							
							
							
						 
						
							2020-09-25 17:01:52 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								368366b88d 
								
							 
						 
						
							
							
								
								alsa: avoid loading the plugin when linked against 0.2  
							
							 
							
							... 
							
							
							
							chromium is linked against 0.2, avoid trying to load the alsa
plugin that is linked against 0.3
See #275  
							
						 
						
							2020-09-07 17:41:50 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b6e84ded75 
								
							 
						 
						
							
							
								
								alsa: protect against SIGPFE  
							
							 
							
							... 
							
							
							
							Make sure we don't try to divide by 0 when the app calls the status
before we are PREPARED.
Fixes  #283  
							
						 
						
							2020-09-07 14:57:47 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								030bef8dd3 
								
							 
						 
						
							
							
								
								alsa: use PIPEWIRE_PROPS for extra stream properties  
							
							 
							
							
							
						 
						
							2020-09-04 16:53:45 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								64ee110356 
								
							 
						 
						
							
							
								
								alsa: rework process function to support planar formats  
							
							 
							
							
							
						 
						
							2020-09-04 15:40:22 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								bfc91c27a6 
								
							 
						 
						
							
							
								
								alsa: implement planar formats some more  
							
							 
							
							
							
						 
						
							2020-09-04 13:49:51 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								6f4f9e5abb 
								
							 
						 
						
							
							
								
								alsa: support planar types  
							
							 
							
							... 
							
							
							
							We can support 2 buffers. 
							
						 
						
							2020-09-04 12:23:11 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								5bf6acad06 
								
							 
						 
						
							
							
								
								alsa: use PIPEWIRE_REMOTE env variable  
							
							 
							
							
							
						 
						
							2020-08-04 14:13:07 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								b517a2a6ec 
								
							 
						 
						
							
							
								
								alsa: use server name to connect  
							
							 
							
							
							
						 
						
							2020-07-23 20:43:08 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								e11d35107f 
								
							 
						 
						
							
							
								
								alsa: don't leak properties on error  
							
							 
							
							
							
						 
						
							2020-07-02 15:53:16 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								ac54b7ace1 
								
							 
						 
						
							
							
								
								alsa: don't leak structure on error  
							
							 
							
							
							
						 
						
							2020-07-02 15:52:50 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								6e03b4005d 
								
							 
						 
						
							
							
								
								increase amount of datas in a buffer  
							
							 
							
							
							
						 
						
							2020-07-01 11:43:22 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								09b6ef41a8 
								
							 
						 
						
							
							
								
								alsa: compare the scaled value to decide on xrun  
							
							 
							
							
							
						 
						
							2020-05-13 15:46:50 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								56730197d9 
								
							 
						 
						
							
							
								
								alsa: report xrun  
							
							 
							
							... 
							
							
							
							When we record but there is not enough space in the ringbuffer, report
xrun. 
							
						 
						
							2020-05-13 12:09:28 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								029f431418 
								
							 
						 
						
							
							
								
								alsa: implement drain function  
							
							 
							
							... 
							
							
							
							Implement a drain function that blocks and waits for the drain to
complete. 
							
						 
						
							2020-04-07 17:48:28 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								70f5abfe35 
								
							 
						 
						
							
							
								
								alsa: report error from server when we can  
							
							 
							
							
							
						 
						
							2020-04-07 17:38:39 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Wim Taymans 
								
							 
						 
						
							
							
							
							
								
							
							
								c658574c01 
								
							 
						 
						
							
							
								
								alsa: improve drain  
							
							 
							
							
							
						 
						
							2020-04-06 17:53:46 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Jonas Holmberg 
								
							 
						 
						
							
							
							
							
								
							
							
								b99313a59e 
								
							 
						 
						
							
							
								
								pipewire-alsa: Get period_bytes from config  
							
							 
							
							... 
							
							
							
							Use period_bytes constraint from config if present. 
							
						 
						
							2020-03-12 15:00:50 +01:00