Max Kellermann 
							
						 
					 
					
						
						
							
						
						76fcf25898 
					 
					
						
						
							
							decoder/ffmpeg: use AVIOContext instead of ByteIOContext  
						
						
						
						
					 
					
						2012-01-04 21:47:47 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						56257f072b 
					 
					
						
						
							
							input/ffmpeg: use the new AVIOContext API  
						
						... 
						
						
						
						URLContext is deprecated. 
						
						
					 
					
						2012-01-04 21:47:19 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						44401158e8 
					 
					
						
						
							
							input/ffmpeg: define AV_VERSION_INT if not present  
						
						... 
						
						
						
						Support ancient ffmpeg versions. 
						
						
					 
					
						2012-01-04 21:47:01 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						95b2df8261 
					 
					
						
						
							
							output/osx: fix memory leak after AudioUnitSetProperty() failure  
						
						
						
						
					 
					
						2012-01-04 20:47:41 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						1ebadf8620 
					 
					
						
						
							
							output/osx: implement 32 bit playback  
						
						
						
						
					 
					
						2011-12-24 18:18:42 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						9179d9592d 
					 
					
						
						
							
							output/osx: allocate the device in enable()  
						
						... 
						
						
						
						Keep the device open as long as the output is enabled, but initialize
it only when playback starts. 
						
						
					 
					
						2011-12-24 18:15:24 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						43c5058682 
					 
					
						
						
							
							Merge branch 'v0.16.x'  
						
						
						
						
					 
					
						2011-12-24 18:15:17 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						97b4a6b51f 
					 
					
						
						
							
							output/osx: clear render buffer when there's not enough data  
						
						... 
						
						
						
						When we don't have enough data, generate some silence, hoping the
input buffer will fill soon.  Reducing the render buffer size is not
legal. 
						
						
					 
					
						2011-12-24 17:59:36 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f405d27c56 
					 
					
						
						
							
							output/osx: remove sleep call from render callback  
						
						... 
						
						
						
						Blocking inside the render callback is forbidden, and this sleep call
didn't make any sense. 
						
						
					 
					
						2011-12-24 17:56:10 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						99949c8f6f 
					 
					
						
						
							
							command: new command "seekcur"  
						
						... 
						
						
						
						For simpler seeking within current song. 
						
						
					 
					
						2011-12-24 11:20:02 +01:00 
						 
				 
			
				
					
						
							
							
								Maarten Sebregts 
							
						 
					 
					
						
						
							
						
						3a9697adf2 
					 
					
						
						
							
							Playlist: fix bug in moving after current song  
						
						... 
						
						
						
						Moving songs using either 'move' or 'moveid' to position -1 (after the
current song) would fail for a song which is just before the current
song.
This patch corrects the check to see if the current song is in the range
to be moved. Since the range is from `start` up to `end` (exclusive) the
check was incorrect, but is now fixed. 
						
						
					 
					
						2011-12-21 10:29:07 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						78c4351e04 
					 
					
						
						
							
							output/openal: improve synchronization  
						
						... 
						
						
						
						This plugin's use of the "Timer" library was wrong; it added the same
amount of virtual data in every iteration in _play(), but did not
actually play something.  This created an artificial, but useless,
delay.  This patch implements the method _cancel(), and implements
hard-coded sleep values.  This is only slightly better, but does not
attempt to look sane. 
						
						
					 
					
						2011-12-13 22:02:05 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0a427890fe 
					 
					
						
						
							
							output/openal: move code to inline functions  
						
						
						
						
					 
					
						2011-12-13 22:00:18 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e735abe334 
					 
					
						
						
							
							output/openal: use alGetSourcei(AL_BUFFER) to force-unqueue buffers  
						
						... 
						
						
						
						The implementation of cancel() did not work well: you cannot use
alSourceUnqueueBuffers() to unqueue queued buffers, and our function
openal_unqueue_buffers() left the OpenAL library in a rather undefined
state; nothing was supposed to be queued, but the "filled" variable
was not reset. 
						
						
					 
					
						2011-12-13 21:59:10 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c0070b2f13 
					 
					
						
						
							
							output/openal: make attribute "filled" unsigned  
						
						
						
						
					 
					
						2011-12-13 21:58:13 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cfedc6e9b4 
					 
					
						
						
							
							output/openal: remove bogus format check from _open()  
						
						... 
						
						
						
						The expression "!format" does not make sense, and cannot occur. 
						
						
					 
					
						2011-12-13 21:58:09 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b66d7f7e0b 
					 
					
						
						
							
							output/fifo: implement output_plugin method delay()  
						
						
						
						
					 
					
						2011-12-13 21:58:07 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e01df06cd7 
					 
					
						
						
							
							output/null: implement output_plugin method delay()  
						
						
						
						
					 
					
						2011-12-13 21:58:02 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6584897b69 
					 
					
						
						
							
							output/null: don't initialize the "timer" attribute in _init()  
						
						... 
						
						
						
						Unnecessary overhead. 
						
						
					 
					
						2011-12-13 21:57:59 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						aa4f45b9a5 
					 
					
						
						
							
							Merge branch 'v0.16.x'  
						
						... 
						
						
						
						Conflicts:
	NEWS
	configure.ac 
						
						
					 
					
						2011-12-13 21:57:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						96ad5b8444 
					 
					
						
						
							
							output/openal: force 16 bit playback, as 8 bit doesn't work  
						
						... 
						
						
						
						The OpenAL specification says that AL_FORMAT_MONO8 and
AL_FORMAT_STEREO8 expect unsigned 8 bit samples, but MPD uses unsigned
samples. 
						
						
					 
					
						2011-12-13 21:32:19 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						097e5dfbdc 
					 
					
						
						
							
							timer: fix time unit mixup in timer_delay()  
						
						... 
						
						
						
						The local variable was already divided by 1000, and the return value
was being divided by 1000 again - doh!  This caused delays in the
httpd output plugin that were too small by three orders of magnitude,
and the buffer was filled too quickly. 
						
						
					 
					
						2011-12-13 21:02:48 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2ef7ee6ca7 
					 
					
						
						
							
							update_walk: print debug message for song_file_load()  
						
						
						
						
					 
					
						2011-12-13 20:26:24 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						533e4fcdad 
					 
					
						
						
							
							decoder/mp4ff: work around assertion failure in read() callback  
						
						... 
						
						
						
						This workaround leads to an infinite loop instead of an assertion
failure, but hey, now it's libmp4ff's fault. 
						
						
					 
					
						2011-12-13 20:08:31 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						006b8fa3f0 
					 
					
						
						
							
							pcm_buffer: poison the old buffer before returning it  
						
						... 
						
						
						
						Make valgrind find more buffer misuses.  Buffer contents are not
persistent, they get invalidated by pcm_buffer_get(), because this
function may allocate a new buffer, but will not copy old data. 
						
						
					 
					
						2011-12-13 19:55:41 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6a01153ce4 
					 
					
						
						
							
							pcm_buffer, output_plugin, ...: include config.h  
						
						
						
						
					 
					
						2011-12-13 19:48:37 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						34aab116ae 
					 
					
						
						
							
							pcm_buffer: eliminate merge conflict fallout  
						
						
						
						
					 
					
						2011-12-13 19:48:33 +01:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						33232face9 
					 
					
						
						
							
							winmm_output_plugin: fail if wrong device specified instead of using fallback.  
						
						... 
						
						
						
						Silently choosing default is misleading and can cause hours of investigation.
It's better to fail immediately telling user what is wrong with config. 
						
						
					 
					
						2011-12-13 19:12:33 +01:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						b88b2b3d79 
					 
					
						
						
							
							output_init: initialize replay gain filters to NULL in ao_base_init()  
						
						... 
						
						
						
						If output plugin fails to init it will try to call ao_base_finish() immediately,
which segfaults because replay gain filters are not initialized yet and contain
garbage values. 
						
						
					 
					
						2011-12-13 19:12:30 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						744d729dab 
					 
					
						
						
							
							input/soup: disable -Wcast-qual to work around libsoup header problem  
						
						
						
						
					 
					
						2011-12-12 10:15:04 +01:00 
						 
				 
			
				
					
						
							
							
								Avuton Olrich 
							
						 
					 
					
						
						
							
						
						f5d3859238 
					 
					
						
						
							
							cmdline: Remove duplicate g_free()s  
						
						
						
						
					 
					
						2011-12-12 09:20:00 +01:00 
						 
				 
			
				
					
						
							
							
								Avuton Olrich 
							
						 
					 
					
						
						
							
						
						ef39da5973 
					 
					
						
						
							
							configure/utils: Add ipv6 support for mingw build  
						
						
						
						
					 
					
						2011-12-12 09:19:34 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4f093d5b97 
					 
					
						
						
							
							Merge branch 'v0.16.x'  
						
						... 
						
						
						
						Conflicts:
	Makefile.am
	NEWS
	configure.ac
	src/encoder/flac_encoder.c
	src/log.c
	src/pcm_buffer.c 
						
						
					 
					
						2011-11-28 11:56:01 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e1b032cbad 
					 
					
						
						
							
							decoder/ffmpeg: work around bogus channel count  
						
						... 
						
						
						
						Initialize the audio_format before calling avcodec_open(), because
avcodec_open() will fill bogus values. 
						
						
					 
					
						2011-11-28 11:39:21 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6f365c30eb 
					 
					
						
						
							
							mapper: check "r" permission on music directory  
						
						... 
						
						
						
						Yet another common support case. 
						
						
					 
					
						2011-11-28 09:57:21 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						718e180423 
					 
					
						
						
							
							mapper: check "x" permission on music directory  
						
						... 
						
						
						
						This is a common support case, and hopefully, the new error message
will allow the user to understand the error without requiring support. 
						
						
					 
					
						2011-11-28 09:51:21 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cead5e5bd7 
					 
					
						
						
							
							mapper: fix the bogus "not a directory" error message  
						
						... 
						
						
						
						Use stat() instead of g_file_test() to detect other types of errors,
such as "permission denied". 
						
						
					 
					
						2011-11-28 09:50:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cf15629aea 
					 
					
						
						
							
							mapper: move code to check_directory()  
						
						
						
						
					 
					
						2011-11-28 09:35:50 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a727d0bb0b 
					 
					
						
						
							
							log: print reason for failure  
						
						
						
						
					 
					
						2011-11-28 09:31:43 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0a218ee56a 
					 
					
						
						
							
							encoder/wave: support packed 24 bit samples  
						
						... 
						
						
						
						Convert to padded 24 bit samples, instead of falling back to 16 bit. 
						
						
					 
					
						2011-11-28 09:25:42 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						74beefcaf6 
					 
					
						
						
							
							encoder/null: use fifo_buffer instead of pcm_buffer  
						
						... 
						
						
						
						This fixes a buffer corruption bug; pcm_buffer is not designed to be a
persistent buffers, and will discard anything between two consecutive
calls. 
						
						
					 
					
						2011-11-28 09:23:36 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						399a3abefc 
					 
					
						
						
							
							encoder/wave: use fifo_buffer instead of pcm_buffer  
						
						... 
						
						
						
						This fixes a buffer corruption bug; pcm_buffer is not designed to be a
persistent buffers, and will discard anything between two consecutive
calls. 
						
						
					 
					
						2011-11-28 09:23:12 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cee5036aca 
					 
					
						
						
							
							encoder/flac: use fifo_buffer instead of pcm_buffer  
						
						... 
						
						
						
						This fixes a buffer corruption bug; pcm_buffer is not designed to be a
persistent buffers, and will discard anything between two consecutive
calls. 
						
						
					 
					
						2011-11-28 09:21:32 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						790823abb4 
					 
					
						
						
							
							growing_fifo: new utility library for growing fifo_buffer  
						
						
						
						
					 
					
						2011-11-28 09:11:11 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f546849352 
					 
					
						
						
							
							fifo_buffer: add function fifo_buffer_realloc()  
						
						... 
						
						
						
						For growing FIFO buffers. 
						
						
					 
					
						2011-11-28 07:45:15 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a85af593f1 
					 
					
						
						
							
							fifo_buffer: add functions _capacity() and _available()  
						
						
						
						
					 
					
						2011-11-27 21:11:47 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						07067f8b95 
					 
					
						
						
							
							pcm_buffer: add assertions  
						
						
						
						
					 
					
						2011-11-27 20:17:52 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a1e824ada0 
					 
					
						
						
							
							pcm_buffer: move formula to new function align_8k()  
						
						
						
						
					 
					
						2011-11-27 20:17:14 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f5f1bfbef1 
					 
					
						
						
							
							pcm_buffer: un-inline pcm_buffer_get()  
						
						... 
						
						
						
						This method is too complex for inlining. 
						
						
					 
					
						2011-11-27 20:17:12 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cd108ba3aa 
					 
					
						
						
							
							directory: rename attribute "stat" to "have_stat"  
						
						... 
						
						
						
						"stat" is a macro on mingw32, which is a pretty stupid thing, and this
commit works around this build failure. 
						
						
					 
					
						2011-11-27 20:15:25 +01:00