Max Kellermann 
							
						 
					 
					
						
						
							
						
						74c85811af 
					 
					
						
						
							
							decoder_api: make the audio_format parameter mandatory  
						
						... 
						
						
						
						There are no callers which pass audio_format==NULL, and it shouldn't
be allowed. 
						
						
					 
					
						2008-10-29 17:29:03 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c042faab42 
					 
					
						
						
							
							player: request new song only if there is no pending command  
						
						... 
						
						
						
						Request the next song from the playlist (by clearing pc.next_song)
only if the player command is empty.  If it is not, the player may be
clearing the song that has already been queued, leading to an
assertion failure. 
						
						
					 
					
						2008-10-29 17:28:49 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						be90199c5a 
					 
					
						
						
							
							decoder_api: removed decoder_clear()  
						
						... 
						
						
						
						Call ob_clear() in decoder_command_finished() instead of implementing
that call in every decoder plugin. 
						
						
					 
					
						2008-10-29 17:28:47 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d6c4441c78 
					 
					
						
						
							
							mp3: seek in background  
						
						... 
						
						
						
						Remember the seek_where argument and call decoder_command_finished()
immediately.  This way, the player thread can continue working, and we
can receive more commands.
This also fixes several issues which resulted in broken frames,
leading to erroneos "elapsed" values: frames weren't parsed properly,
since the code was checking for command!=NONE. 
						
						
					 
					
						2008-10-29 17:22:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						de588448df 
					 
					
						
						
							
							mp3: return from mp3_synth_and_send() on any command  
						
						... 
						
						
						
						Previously, the function would only return when a STOP was issued.  It
makes more sense to consider all possible commands. 
						
						
					 
					
						2008-10-29 16:17:21 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6158858f82 
					 
					
						
						
							
							mp3: moved code to mp3_synth_and_send()  
						
						... 
						
						
						
						Break the large function mp3_read() into smaller pieces. 
						
						
					 
					
						2008-10-29 16:14:08 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e0532ae0a8 
					 
					
						
						
							
							mp3: moved code to mp3_send_pcm()  
						
						... 
						
						
						
						Break the large function mp3_read() into smaller pieces. 
						
						
					 
					
						2008-10-29 16:14:02 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a6ad0e4047 
					 
					
						
						
							
							mp3: moved code to mp3_update_timer_next_frame()  
						
						... 
						
						
						
						Break the large function mp3_read() into smaller pieces. 
						
						
					 
					
						2008-10-29 16:13:51 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0d079ee515 
					 
					
						
						
							
							mp3: moved code to mp3_this_frame_offset()  
						
						... 
						
						
						
						Break the large function mp3_read() into smaller pieces. 
						
						
					 
					
						2008-10-29 16:13:01 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a6f8776c94 
					 
					
						
						
							
							mp3: moved code to mp3_time_to_frame()  
						
						... 
						
						
						
						Break the large function mp3_read() into smaller pieces. 
						
						
					 
					
						2008-10-29 16:12:26 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ec3083948f 
					 
					
						
						
							
							mp3: assert that the stream is seekable  
						
						... 
						
						
						
						dc_seek() won't send a SEEK command to the decoder thread unless the
stream is seekable.  No need to do another check; convert that to an
assertion. 
						
						
					 
					
						2008-10-29 16:11:16 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						78b08f03f2 
					 
					
						
						
							
							decoder_api: don't cast need_chunks() to int  
						
						... 
						
						
						
						need_chunks() returns a decoder_command enum.  Store its return value
as this type. 
						
						
					 
					
						2008-10-29 16:11:15 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a0b57f3782 
					 
					
						
						
							
							mp3: moved code to mp3_filesize_to_song_length()  
						
						... 
						
						
						
						The function mp3_decode_first_frame() is too large.  Move some code to
separate smaller functions. 
						
						
					 
					
						2008-10-28 20:44:08 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						898978a67d 
					 
					
						
						
							
							mp3: no "goto"  
						
						... 
						
						
						
						http://xkcd.com/292/  
					
						2008-10-28 20:43:17 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						28b47725ff 
					 
					
						
						
							
							mp3: use GLib allocation functions  
						
						... 
						
						
						
						This removes the need for util.h. 
						
						
					 
					
						2008-10-28 20:43:15 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						56ebdf1cd1 
					 
					
						
						
							
							mp3: use bool  
						
						... 
						
						
						
						Use the C99 bool data type for boolean values. 
						
						
					 
					
						2008-10-28 20:42:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e4bbc120ac 
					 
					
						
						
							
							mp3: no CamelCase  
						
						... 
						
						
						
						Renamed all functions and variables.  Also removed the mp3DecodeData
typedef. 
						
						
					 
					
						2008-10-28 20:42:01 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						1f7c53e619 
					 
					
						
						
							
							mp3: remove obsolete comments  
						
						
						
						
					 
					
						2008-10-28 20:41:25 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						25f98a41c4 
					 
					
						
						
							
							input_file: don't use buffered I/O  
						
						... 
						
						
						
						Yet another superfluous buffering layer.  input_file was using FILE*,
but we're better off with unbuffered I/O using open(), read(), ... 
						
						
					 
					
						2008-10-28 20:41:24 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0a61877702 
					 
					
						
						
							
							input_stream: convert offset and size to the off_t data type  
						
						... 
						
						
						
						size_t and long aren't 64 bit safe (i.e. files larger than 2 GB on a
32 bit OS).  Use off_t instead, which is a 64 bit integer if compiled
with large file support. 
						
						
					 
					
						2008-10-28 20:39:09 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						016d996131 
					 
					
						
						
							
							utils: use g_str_has_prefix() instead of prefixcmp()  
						
						... 
						
						
						
						Remove duplicated code from MPD. 
						
						
					 
					
						2008-10-28 20:33:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4a71f66256 
					 
					
						
						
							
							player: reset pc.command when decoder startup fails  
						
						... 
						
						
						
						When the decoder failed to start, the function do_play() returned,
still having pc.command==PLAY.  This is because pc.command was reset
only when the decoder started up successfully.  Add another
player_command_finished() call in the error handler. 
						
						
					 
					
						2008-10-27 10:10:40 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0d30d51f07 
					 
					
						
						
							
							input_file, input_curl: check URL type before attempting to open  
						
						... 
						
						
						
						Don't attempt to open a HTTP URL as a local file, and don't send a
local path to libcurl. 
						
						
					 
					
						2008-10-27 10:10:24 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						355108666c 
					 
					
						
						
							
							configure.ac: fix "xyes: command not found"  
						
						... 
						
						
						
						Due to a missing "test", the "xyes" token was interpreted as a
command. 
						
						
					 
					
						2008-10-26 22:03:26 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						0800c6f4ca 
					 
					
						
						
							
							output: don't compile plugins which are disabled  
						
						... 
						
						
						
						Don't compile the sources of disabled output plugins at all. 
						
						
					 
					
						2008-10-26 21:58:37 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3dac99034a 
					 
					
						
						
							
							dirvec: fixed GCC shadow warning  
						
						... 
						
						
						
						On some systems, string.h declares basename().  This emits a shadow
warning.  Change the variable name. 
						
						
					 
					
						2008-10-26 21:28:16 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5f2384001e 
					 
					
						
						
							
							curl: read stream name from HTTP response headers  
						
						... 
						
						
						
						If the server sends the headers "icy-name", "ice-name",
"x-audiocast-name", set the stream title. 
						
						
					 
					
						2008-10-26 21:20:02 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5d9ef0cd83 
					 
					
						
						
							
							input_curl: set input_stream.mime from Content-Type response header  
						
						
						
						
					 
					
						2008-10-26 21:19:32 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						1437a56a11 
					 
					
						
						
							
							input_curl: added local variable "value"  
						
						... 
						
						
						
						Replaced the local variable "colon" (which had only temporary meaning)
with the variable "value".  It is a pointer to the first byte of the
header value. 
						
						
					 
					
						2008-10-26 21:12:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d401589edf 
					 
					
						
						
							
							input_stream: use g_free() in input_stream_close()  
						
						... 
						
						
						
						g_free() allows passing the NULL pointer. 
						
						
					 
					
						2008-10-26 21:02:49 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5c19776f2f 
					 
					
						
						
							
							input_stream: use "bool" instead of "int"  
						
						... 
						
						
						
						For boolean values and success flags, use bool instead of integer (1/0
for true/false, 0/-1 for success/failure). 
						
						
					 
					
						2008-10-26 20:56:46 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						464b611772 
					 
					
						
						
							
							input_stream: input_stream_close() returns void  
						
						... 
						
						
						
						close() shouldn't fail with read-only streams. 
						
						
					 
					
						2008-10-26 20:54:52 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f08041f0eb 
					 
					
						
						
							
							input_stream: added struct input_plugin  
						
						... 
						
						
						
						Instead of managing a set of method pointers in each input_stream
struct, move these into the new input_plugin struct.  Each
input_stream has only a pointer to the plugin struct.  Pointers to all
implementations are kept in the array "input_plugins". 
						
						
					 
					
						2008-10-26 20:38:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						dbc7e9ba2f 
					 
					
						
						
							
							input_stream: no CamelCase  
						
						... 
						
						
						
						Renamed all functions and variables. 
						
						
					 
					
						2008-10-26 20:34:47 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						97a9c7a8e0 
					 
					
						
						
							
							input_file: removed global constructor  
						
						... 
						
						
						
						The global constructor is empty, and can be removed. 
						
						
					 
					
						2008-10-26 20:34:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						23552f89cc 
					 
					
						
						
							
							input_file: don't export internal methods  
						
						... 
						
						
						
						The methods are only used in inputStream_fileOpen(), and should not be
exported. 
						
						
					 
					
						2008-10-26 20:34:03 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						21b8590b53 
					 
					
						
						
							
							input_stream: removed the InputStream typedef  
						
						... 
						
						
						
						Everybody should use struct input_stream. 
						
						
					 
					
						2008-10-26 19:54:57 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bbaedb17d5 
					 
					
						
						
							
							input_stream: renamed sources, no CamelCase  
						
						... 
						
						
						
						Renamed inputStream.c and inputStream_file.c. 
						
						
					 
					
						2008-10-26 19:38:50 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3609de8685 
					 
					
						
						
							
							http: use libcurl  
						
						... 
						
						
						
						MPD's HTTP client code has always been broken, no matter how effort
was put into fixing it.  Replace it with libcurl, which is known to be
quite stable.  This adds a fat library dependency, but only for people
who need streaming. 
						
						
					 
					
						2008-10-26 19:32:43 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6b09e4daef 
					 
					
						
						
							
							input_stream: added input_stream_global_finish()  
						
						... 
						
						
						
						The hook input_stream_global_finish() deinitializes global structures
of all input stream implementations. 
						
						
					 
					
						2008-10-26 19:30:13 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4bc2def15c 
					 
					
						
						
							
							stored_playlist: fixed signed comparison warning  
						
						... 
						
						
						
						Cast playlist_max_length to off_t before comparing it to stat.st_size. 
						
						
					 
					
						2008-10-26 16:26:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4fa36a15bf 
					 
					
						
						
							
							command: removed range check from check_bool()  
						
						... 
						
						
						
						check_bool() accepts only "0" or "1".  The range check is superfluous. 
						
						
					 
					
						2008-10-26 16:19:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ece8c1347c 
					 
					
						
						
							
							renamed src/audioOutputs/ to src/output/  
						
						... 
						
						
						
						Again, no CamelCase in the directory name. 
						
						
					 
					
						2008-10-26 11:29:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e11355f47d 
					 
					
						
						
							
							renamed src/inputPlugins/ to src/decoder/  
						
						... 
						
						
						
						These plugins are not input plugins, they are decoder plugins.  No
CamelCase in the directory name. 
						
						
					 
					
						2008-10-26 11:29:25 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cbc71191f0 
					 
					
						
						
							
							configure.ac: reverted protocol version to 0.14.0  
						
						... 
						
						
						
						Several clients refuse to accept the protocol version "0.14~git",
because they think it is malformed.  This is clearly a client bug, but
we cannot wait for all clients to fix this bug right now.  For now,
change the version back to "0.14.0". 
						
						
					 
					
						2008-10-26 10:32:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						20ec1a4810 
					 
					
						
						
							
							Makefile.am: install documentation  
						
						
						
						
					 
					
						2008-10-25 21:32:10 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c7d556f739 
					 
					
						
						
							
							renamed ChangeLog to NEWS  
						
						... 
						
						
						
						The file name "NEWS" is standardized. 
						
						
					 
					
						2008-10-25 21:31:13 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f9d52dc968 
					 
					
						
						
							
							configure.ac: changed version number to "0.14~git"  
						
						... 
						
						
						
						For testers, it should be clear that they're not using version 0.14.0
final, but an inofficial intermediate version from the git repository.
The protocol version is set to the same string, since the protocol is
subject to change during MPD development. 
						
						
					 
					
						2008-10-25 21:23:54 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						befecb1d47 
					 
					
						
						
							
							configure.ac: disable libtool  
						
						... 
						
						
						
						Since we're not building the local mp4ff library anymore, we can
remove AC_PROG_LIBTOOL. 
						
						
					 
					
						2008-10-25 21:23:52 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						1110a6d410 
					 
					
						
						
							
							removed internal copy of libmp4ff  
						
						... 
						
						
						
						MPD shouldn't integrate sources of other libraries.  Since libmp4ff is
part of libfaad, we should remove the old copy from src/mp4ff and link
with the current version from libfaad instead. 
						
						
					 
					
						2008-10-25 20:59:36 +02:00