Max Kellermann 
							
						 
					 
					
						
						
							
						
						46ab8d18e2 
					 
					
						
						
							
							playlist_song: calculate duration of last CUE track  
						
						
						
						
					 
					
						2010-11-08 20:16:26 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f384f8da93 
					 
					
						
						
							
							Merge release 0.15.15 from branch 'v0.15.x'  
						
						... 
						
						
						
						Conflicts:
	NEWS
	configure.ac 
						
						
					 
					
						2010-11-08 18:50:22 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cc1debc948 
					 
					
						
						
							
							output/shout: artist comes first in stream title  
						
						... 
						
						
						
						After popular demand, I've switched the order of "artist" and "title"
in the stream title.  There is no standard, and there is no reliable
way to parse those from the stream title. 
						
						
					 
					
						2010-11-08 18:46:14 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5a3aa1262a 
					 
					
						
						
							
							update_walk: explicitly check for permission problems  
						
						... 
						
						
						
						Call access() and print an extra error message when EACCES is
returned.  Hopefully this will reduce the number of support requests
due to wrong file permissions. 
						
						
					 
					
						2010-11-08 18:24:19 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ad52eb236d 
					 
					
						
						
							
							input/rewind: fix assertion failure  
						
						... 
						
						
						
						The assertion added in MPD 0.15.14 was too much, it failed when the
MIME type of a stream was NULL. 
						
						
					 
					
						2010-11-08 10:37:09 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4478b3ef74 
					 
					
						
						
							
							Merge release 0.15.14 from branch 'v0.15.x'  
						
						... 
						
						
						
						Conflicts:
	NEWS
	configure.ac
	src/decoder_control.c
	src/decoder_control.h
	src/input/rewind_input_plugin.c
	src/output_control.c
	src/output_thread.c
	src/player_thread.c 
						
						
					 
					
						2010-11-07 15:30:18 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						83ec0e5552 
					 
					
						
						
							
							player_thread: fix assertion failure due to wrong music pipe on seek  
						
						... 
						
						
						
						When one song is played twice, and the decoder is working on the
second "instance", but the first should be seeked, the check in
player_seek_decoder() may assume that it can reuse the decoder without
exchanging pipes.  The last thing was the mistake: the pipe pointer
was different, which led to an assertion failure.  This patch adds
another check which exchanges the player pipe. 
						
						
					 
					
						2010-11-05 19:24:42 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cc261872c2 
					 
					
						
						
							
							decoder_control: pass music_pipe to dc_start()  
						
						... 
						
						
						
						More abstraction for decoder_control.pipe. 
						
						
					 
					
						2010-11-05 19:18:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5223261f19 
					 
					
						
						
							
							player_thread: add helper function player_dc_at_next_song()  
						
						... 
						
						
						
						Some abstraction for decoder_control.pipe access. 
						
						
					 
					
						2010-11-05 19:08:59 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c594afeee7 
					 
					
						
						
							
							pipe: add helper function music_pipe_empty()  
						
						
						
						
					 
					
						2010-11-05 18:40:23 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						32d10eedbd 
					 
					
						
						
							
							input/rewind: remove redundant NULL check before g_free() call  
						
						
						
						
					 
					
						2010-11-05 18:40:14 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						dfd98eede7 
					 
					
						
						
							
							input/rewind: add two assertions  
						
						
						
						
					 
					
						2010-11-05 18:40:07 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a728d7a026 
					 
					
						
						
							
							input/rewind: fix double free bug  
						
						... 
						
						
						
						Duplicate the "mime" attribute of the inner input_stream object,
instead of copying the pointer. 
						
						
					 
					
						2010-11-05 18:39:40 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5a26320680 
					 
					
						
						
							
							output/alsa: dump buffer and period limits  
						
						
						
						
					 
					
						2010-11-05 10:35:46 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						90dc880e67 
					 
					
						
						
							
							output/httpd: implement delay()  
						
						
						
						
					 
					
						2010-11-05 09:49:22 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e11ff967d0 
					 
					
						
						
							
							output/shout: implement delay()  
						
						... 
						
						
						
						This makes the plugin more responsive to control commands, because it
will listen to control events while waiting. 
						
						
					 
					
						2010-11-05 09:49:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2dc6ed7b3a 
					 
					
						
						
							
							output_plugin: add method delay()  
						
						... 
						
						
						
						This method is used to reduce the delay of commands issued to the
shout plugin. 
						
						
					 
					
						2010-11-05 09:47:43 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ad430c6617 
					 
					
						
						
							
							timer: add function timer_delay()  
						
						
						
						
					 
					
						2010-11-05 09:39:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e8d8bd4c0d 
					 
					
						
						
							
							decoder/{mp4ff,ffmpeg}: add extension ".m4b" (audio book)  
						
						... 
						
						
						
						Same as ".m4a". 
						
						
					 
					
						2010-11-05 02:01:35 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8d5fa754e8 
					 
					
						
						
							
							output_thread: fix assertion failure due to race condition in OPEN  
						
						... 
						
						
						
						Change the assertion on "fail_timer==NULL" in OPEN to a runtime check.
This assertion crashed when the output thread failed while the player
thread was calling audio_output_open(). 
						
						
					 
					
						2010-11-04 23:44:23 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2ee047a1dd 
					 
					
						
						
							
							output_internal: protect attribute "fail_timer" with mutex  
						
						
						
						
					 
					
						2010-11-04 23:40:43 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						9562f66741 
					 
					
						
						
							
							output_control: lock object in audio_output_open()  
						
						... 
						
						
						
						Protect the attributes "open" and "fail_timer". 
						
						
					 
					
						2010-11-04 23:28:18 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						21223154aa 
					 
					
						
						
							
							output_control: lock object in audio_output_close()  
						
						... 
						
						
						
						Protect the attributes "open" and "fail_timer". 
						
						
					 
					
						2010-11-04 21:51:02 +01:00 
						 
				 
			
				
					
						
							
							
								Mantas Mikulenas 
							
						 
					 
					
						
						
							
						
						ec48b5ea3a 
					 
					
						
						
							
							server_socket: remove AI_ADDRCONFIG  
						
						... 
						
						
						
						When you pass the flag AI_ADDRCONFIG to getaddrinfo(), it does not
consider address families on the loopback device.  When run on a
machine without an external network card, just with "lo", it was
unable to look up any address. 
						
						
					 
					
						2010-11-04 20:17:45 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						754015544f 
					 
					
						
						
							
							output/ffado: transfer_playback_buffers() returns a boolean  
						
						... 
						
						
						
						libffado documentation says this function returns -1 on error, but
that is a lie - it returns a boolean value, and "false" means error. 
						
						
					 
					
						2010-11-04 20:08:04 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3f89f77429 
					 
					
						
						
							
							decoder/ffmpeg: check AVCodecContext.sample_fmt value  
						
						... 
						
						
						
						.. instead of av_get_bits_per_sample_format().  The SampleFormat enum
value is authoritative. 
						
						
					 
					
						2010-11-04 20:04:15 +01:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						9dee419b7c 
					 
					
						
						
							
							winmm_output: handle empty string case when parsing device id  
						
						
						
						
					 
					
						2010-11-04 11:09:50 +05:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						7612bf1bfa 
					 
					
						
						
							
							winmm_output: added "device" configuration option  
						
						... 
						
						
						
						Device can be specified either by magic index (starting with 0)
or by device name. 
						
						
					 
					
						2010-11-04 00:51:18 +05:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						ad56e10e5b 
					 
					
						
						
							
							winmm_output: improved test_default_device  
						
						... 
						
						
						
						If no device is available test_default_device returns false. 
						
						
					 
					
						2010-11-03 23:31:49 +05:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						75f4772ba2 
					 
					
						
						
							
							output: new output plugin "ffado"  
						
						... 
						
						
						
						Using libffado, to play on firewire audio devices.
Warning: this plugin was not tested successfully.  I just couldn't
keep libffado2 from crashing.  Use at your own risk.
For details, see my Debian bug reports:
  http://bugs.debian.org/601657 
  http://bugs.debian.org/601659  
						
						
					 
					
						2010-10-27 21:25:41 +02:00 
						 
				 
			
				
					
						
							
							
								Alder Hornbridge 
							
						 
					 
					
						
						
							
						
						fe1b626f76 
					 
					
						
						
							
							decoder/sidplay: play mus, str, prg, x00 files  
						
						
						
						
					 
					
						2010-10-27 21:18:43 +02:00 
						 
				 
			
				
					
						
							
							
								Alder Hornbridge 
							
						 
					 
					
						
						
							
						
						4e94516912 
					 
					
						
						
							
							decoder/sidplay: play monaural SID tunes in mono  
						
						
						
						
					 
					
						2010-10-27 21:16:24 +02:00 
						 
				 
			
				
					
						
							
							
								Tony Miller 
							
						 
					 
					
						
						
							
						
						dadb6747ad 
					 
					
						
						
							
							Container support for gme decoder.  
						
						
						
						
					 
					
						2010-10-14 17:11:59 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						188e1b440e 
					 
					
						
						
							
							playlist/rss: new playlist plugin for RSS feeds  
						
						
						
						
					 
					
						2010-10-11 20:33:41 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a57f9e712d 
					 
					
						
						
							
							Merge release 0.15.13 from branch 'v0.15.x'  
						
						... 
						
						
						
						Conflicts:
	NEWS
	configure.ac
	src/input/rewind_input_plugin.c
	src/output/httpd_output_plugin.c 
						
						
					 
					
						2010-10-11 20:33:17 +02:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						e6fc88a758 
					 
					
						
						
							
							mixer: winmm_mixer implemented  
						
						
						
						
					 
					
						2010-10-09 02:45:08 +06:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						20004b7ee0 
					 
					
						
						
							
							win32_output: renamed win32 output plugin to winmm  
						
						... 
						
						
						
						Win32 has many audio APIs. New name is slightly more correct. 
						
						
					 
					
						2010-10-08 23:55:14 +06:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						84e037631d 
					 
					
						
						
							
							output/httpd: use the new server_socket library  
						
						
						
						
					 
					
						2010-10-05 21:18:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						18e3d0b504 
					 
					
						
						
							
							listen: move generic code to server_socket.c  
						
						
						
						
					 
					
						2010-10-05 21:18:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						04c4398bfc 
					 
					
						
						
							
							output/httpd: don't close socket in open() failure  
						
						... 
						
						
						
						This cleanup call is obsolete, since we moved the binding code to
enable()/disable(). 
						
						
					 
					
						2010-10-05 21:18:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						39e42394bd 
					 
					
						
						
							
							output_all: disable outputs on shutdown  
						
						... 
						
						
						
						Call output_plugin.disable() before output_plugin.finish().  This
ensures that all outputs are properly cleaned up, to make valgrind
happy. 
						
						
					 
					
						2010-10-05 21:18:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5923cfcde3 
					 
					
						
						
							
							output/httpd: MIME type audio/ogg for Ogg Vorbis  
						
						... 
						
						
						
						RFC 5334 10.3 defines the MIME type "audio/ogg".  We could use
"application/ogg" as well, but we know for sure that we only emit
audio data. 
						
						
					 
					
						2010-10-03 16:22:03 +02:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						e10b872fc3 
					 
					
						
						
							
							main_win: replaced g_error usages with MPD_ERROR  
						
						
						
						
					 
					
						2010-09-28 22:38:57 +06:00 
						 
				 
			
				
					
						
							
							
								Denis Krjuchkov 
							
						 
					 
					
						
						
							
						
						2b78358af5 
					 
					
						
						
							
							mpd_error: more correct MPD_ERROR implementation  
						
						... 
						
						
						
						Original implementation does not handle
	if (...)
		MPD_ERROR("die");
	else
		...
case well. This change fixes handling of such cases. 
						
						
					 
					
						2010-09-28 18:12:14 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Jansen 
							
						 
					 
					
						
						
							
						
						e3f4c7b91c 
					 
					
						
						
							
							input/rewind: enable for MMS  
						
						
						
						
					 
					
						2010-09-28 12:56:47 +02:00 
						 
				 
			
				
					
						
							
							
								Andrew Morgan 
							
						 
					 
					
						
						
							
						
						a59ab3e2ee 
					 
					
						
						
							
							playlist: make single mode 'sticky'  
						
						
						
						
					 
					
						2010-09-28 12:52:52 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Jansen 
							
						 
					 
					
						
						
							
						
						28bcb8bdf5 
					 
					
						
						
							
							eliminate g_error() usage  
						
						... 
						
						
						
						Replaced all occurrences of g_error() with MPD_ERROR() located in a new header
file 'mpd_error.h'. This macro uses g_critical() to print the error message
and then exits gracefully in contrast to g_error() which would internally call
abort() to produce a core dump.
The macro name is distinctive and allows to find all places with dubious error
handling. The long-term goal is to get rid of MPD_ERROR() altogether. To
facilitate the eventual removal of this macro it was added in a new header
file rather than to an existing header file.
This fixes  #2995  and #3007 . 
						
						
					 
					
						2010-09-25 15:00:43 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Jansen 
							
						 
					 
					
						
						
							
						
						9af9fd1400 
					 
					
						
						
							
							output/httpd: bind_to_address support (including IPv6)  
						
						... 
						
						
						
						Added support for a new optional configuration setting for the httpd output
named "bind_to_address". Setting it to a specific IP address (v4 or v6) will
cause the httpd output to bind to that address exclusively. Supporting
multiple addresses in parallel is future work.
This implements the feature requests #2998  and #2646 . 
						
						
					 
					
						2010-09-25 15:00:43 +02:00 
						 
				 
			
				
					
						
							
							
								Thomas Jansen 
							
						 
					 
					
						
						
							
						
						0c80bd5fc0 
					 
					
						
						
							
							conf: Whitespace cosmetics  
						
						
						
						
					 
					
						2010-09-25 15:00:43 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a14cd97f56 
					 
					
						
						
							
							playlist: fix "queued" check in playlist_sync()  
						
						... 
						
						
						
						The check was meant to fix an assertion failure, but it was the wrong
way around.  This broke cross-fading most of the time. 
						
						
					 
					
						2010-09-23 23:29:36 +02:00