Max Kellermann 
							
						 
					 
					
						
						
							
						
						8047102542 
					 
					
						
						
							
							output/osx: don't restart AudioUnit at the end of Cancel()  
						
						... 
						
						
						
						We shouldn't restart the AudioUnit while the ring buffer is empty, or
else our render callback may emit noise.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/771  
						
						
					 
					
						2020-07-02 15:20:43 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fe5b81e180 
					 
					
						
						
							
							output/osx: check started in Close() and Cancel()  
						
						
						
						
					 
					
						2020-07-02 15:19:40 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f032925c2d 
					 
					
						
						
							
							output/osx: add started flag  
						
						... 
						
						
						
						This will keep track of AudioOutputUnitStart() and
AudioOutputUnitStop().  This will provide some separation between "not
(yet) (re)started" and "paused". 
						
						
					 
					
						2020-07-02 15:18:37 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8125a5dddb 
					 
					
						
						
							
							output/osx: don't uninitialize AudioUnit if restart fails  
						
						... 
						
						
						
						This shall be done by Close(), which will be called automatically
after an error. 
						
						
					 
					
						2020-07-02 15:10:03 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						154170e475 
					 
					
						
						
							
							output/osx: clear pause flag only after successful AudioOutputUnitStart()  
						
						
						
						
					 
					
						2020-07-02 15:08:59 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fb83936feb 
					 
					
						
						
							
							apple/AudioUnit: add AudioUnitSetPropertyT()  
						
						
						
						
					 
					
						2020-07-02 14:59:40 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						db8bf52f7d 
					 
					
						
						
							
							apple/AudioObject: add AudioObjectGetStringProperty()  
						
						
						
						
					 
					
						2020-07-02 13:50:05 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						756f0b8027 
					 
					
						
						
							
							apple: build static library  
						
						... 
						
						
						
						Move build rules from src/output/plugins/meson.build 
						
						
					 
					
						2020-07-02 13:49:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b1fba8d3d7 
					 
					
						
						
							
							apple/AudioObject: add missing inline  
						
						
						
						
					 
					
						2020-07-02 13:49:52 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4d88bddfe2 
					 
					
						
						
							
							Merge branch 'v0.21.x'  
						
						
						
						
					 
					
						2020-07-01 23:07:57 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e606044271 
					 
					
						
						
							
							apple/AudioUnit: library wrapping AudioUnit*() functions  
						
						
						
						
					 
					
						2020-07-01 23:02:22 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bcbb3371ff 
					 
					
						
						
							
							apple/AudioUnit: rename to AudioObject.hxx  
						
						
						
						
					 
					
						2020-07-01 22:49:03 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						de632882d1 
					 
					
						
						
							
							output/osx: move code to FindAudioDeviceByName()  
						
						
						
						
					 
					
						2020-07-01 22:48:12 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						745e492d15 
					 
					
						
						
							
							output/osx: use [[maybe_unused]]  
						
						
						
						
					 
					
						2020-07-01 22:41:00 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c5dc615efe 
					 
					
						
						
							
							output/osx: use IsDigitASCII()  
						
						
						
						
					 
					
						2020-07-01 22:39:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a08d4b3d66 
					 
					
						
						
							
							Merge branch 'v0.21.x'  
						
						
						
						
					 
					
						2020-07-01 22:09:33 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						beeb02025e 
					 
					
						
						
							
							output/osx: use range-based for  
						
						
						
						
					 
					
						2020-07-01 22:06:36 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cdf7062597 
					 
					
						
						
							
							apple/AudioUnit: wrapper functions for AudioObject properties  
						
						
						
						
					 
					
						2020-07-01 22:05:11 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						346084da1e 
					 
					
						
						
							
							apple/Throw: new helper library replacing osx_os_status_to_cstring()  
						
						
						
						
					 
					
						2020-07-01 22:05:11 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bbceb5eb91 
					 
					
						
						
							
							output/osx: silently ignore some errors in osx_output_set_device()  
						
						
						
						
					 
					
						2020-07-01 22:05:11 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						90d85319c2 
					 
					
						
						
							
							apple/ErrorRef: new library wrapping CFErrorRef  
						
						
						
						
					 
					
						2020-07-01 22:05:10 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3d03683e7d 
					 
					
						
						
							
							output: use StringIsEqual()  
						
						
						
						
					 
					
						2020-07-01 22:04:26 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d8a74802d1 
					 
					
						
						
							
							apple/StringRef: new library wrapping CFStringRef  
						
						
						
						
					 
					
						2020-07-01 22:01:53 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						191919d1b1 
					 
					
						
						
							
							output/osx: remove trailing newline from exception messages  
						
						
						
						
					 
					
						2020-07-01 22:01:51 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						df38e7565b 
					 
					
						
						
							
							util/HugeAllocator: import std::swap()  
						
						
						
						
					 
					
						2020-07-01 21:56:58 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cb49a03fd7 
					 
					
						
						
							
							util/HugeAllocator: add noexcept  
						
						
						
						
					 
					
						2020-07-01 21:56:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						faee5bbb78 
					 
					
						
						
							
							decoder/opus: implement End Trimming (RFC7845 4.4)  
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/867  
						
						
					 
					
						2020-07-01 21:26:34 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						7befab7e83 
					 
					
						
						
							
							decoder/opus: keep track of the granulepos  
						
						... 
						
						
						
						Will be needed for End Trimming (RFC7845 4.4,
https://github.com/MusicPlayerDaemon/MPD/issues/867 ). 
						
						
					 
					
						2020-07-01 21:21:06 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4244e61214 
					 
					
						
						
							
							decoder/opus: simplify indentation in HandleAudio()  
						
						
						
						
					 
					
						2020-07-01 21:19:52 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						46eab05045 
					 
					
						
						
							
							decoder/opus: allocate buffer only in the first chained song  
						
						... 
						
						
						
						Fixes memory leak.  That's what we get for 
						
						
					 
					
						2020-07-01 21:07:49 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5ca137c73c 
					 
					
						
						
							
							decoder/opus: add API docs  
						
						
						
						
					 
					
						2020-07-01 20:55:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						760238fe16 
					 
					
						
						
							
							decoder/opus: apply pre-skip (RFC7845 4.2)  
						
						... 
						
						
						
						Fixes the first part of
https://github.com/MusicPlayerDaemon/MPD/issues/867  
						
						
					 
					
						2020-07-01 20:44:53 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a99b4abae8 
					 
					
						
						
							
							decoder/OpusHead: return pre-skip  
						
						
						
						
					 
					
						2020-07-01 17:51:07 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						472881cb95 
					 
					
						
						
							
							util/ByteOrder:  remove redundant inline keywords from constexpr functions  
						
						
						
						
					 
					
						2020-07-01 17:50:34 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c4efc37ad8 
					 
					
						
						
							
							system/ByteOrder: move to util/  
						
						
						
						
					 
					
						2020-07-01 17:49:57 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						691b6a236e 
					 
					
						
						
							
							output/osx: improve sample rate selection  
						
						... 
						
						
						
						The formula in osx_output_score_sample_rate() to detect multiples of
the source sample rate was broken: when given a 44.1 kHz input file,
it preferred 16 kHz over 48 kHz, because its `frac_portion(16)=0.75`
is smaller than `frac_portion(48)=0.91`.
That formula, introduced by commit 40a1ebee29https://github.com/MusicPlayerDaemon/MPD/issues/904  
						
						
					 
					
						2020-07-01 17:38:08 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5c7243d3ad 
					 
					
						
						
							
							output/osx: make several fields const  
						
						
						
						
					 
					
						2020-07-01 17:35:39 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						44cfdff39a 
					 
					
						
						
							
							output/osx: make variables more local  
						
						
						
						
					 
					
						2020-07-01 17:35:33 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5eedda691a 
					 
					
						
						
							
							output/osx: make more AudioObjectPropertyAddress instances static constexpr  
						
						
						
						
					 
					
						2020-07-01 17:35:19 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a30d5e1b6a 
					 
					
						
						
							
							output/osx: make AudioObjectPropertyAddress variables static constexpr  
						
						
						
						
					 
					
						2020-07-01 17:34:12 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8ef09a0a71 
					 
					
						
						
							
							output/osx: don't use C99 designated initializers  
						
						... 
						
						
						
						Fixes `-Wpedantic`. 
						
						
					 
					
						2020-07-01 17:34:06 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e8044663b3 
					 
					
						
						
							
							output/{alsa,osx}: use ConstBuffer::empty()  
						
						
						
						
					 
					
						2020-07-01 17:32:37 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8444c33514 
					 
					
						
						
							
							output/osx: don't use variable-length arrays  
						
						
						
						
					 
					
						2020-07-01 17:31:46 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2b7328b434 
					 
					
						
						
							
							output/osx: fix coding style  
						
						
						
						
					 
					
						2020-07-01 17:11:02 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3d7147390f 
					 
					
						
						
							
							Merge branch 'v0.21.x'  
						
						
						
						
					 
					
						2020-07-01 16:56:17 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						25b5ca6435 
					 
					
						
						
							
							output/plugins/meson.build: add dependency on libevent.a for ALSA  
						
						
						
						
					 
					
						2020-07-01 15:24:52 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fd217daad4 
					 
					
						
						
							
							meson.build: always write encoder/Features.h  
						
						... 
						
						
						
						Fixes a build failure in `CommandLine.cxx`.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/905  
						
						
					 
					
						2020-07-01 15:16:14 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d9f9b3df10 
					 
					
						
						
							
							input/file: detect premature end of file  
						
						... 
						
						
						
						A bug report (https://github.com/MusicPlayerDaemon/MPD/issues/912 )
suggests that on Linux, reading on `cifs` files may rarely return 0 (=
end of file) before the end of the file has really been reached.  But
that's just a theory which I need to validate, so this runtime check
shall catch this condition before the assertion in
DecoderBridge::Read() crashes MPD.  Let's see.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/912  
						
						
					 
					
						2020-07-01 15:14:27 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a43ee97746 
					 
					
						
						
							
							util/UriUtil: strip credentials from smb:// URIs  
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/910  
						
						
					 
					
						2020-06-22 22:48:56 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						43c32372e7 
					 
					
						
						
							
							util/UriUtil: make schemes array static  
						
						
						
						
					 
					
						2020-06-22 22:48:07 +02:00