aboutsummaryrefslogblamecommitdiffstats
path: root/TODO
blob: 28789239e9b23e81f98e2b312941bf83cf35f74a (plain) (tree)
1
2
3
4
5
6
7
8
9
10

    
                                                          



                                                                            


                                                                               






















                                                                             
 


                                                                

                                                                       



                                                       



                                                                    
                                                                 

                                                                       
 


                                                  
                                       
 

                                                         


                                                                           


                                                                                
                     
 
                           
 
                             
 

                                                                              



                                          
0.12
----
*) rewrite search, find, locate to tag LocateTagItem pairs

*) rewrite filename handling
	*) use memory more efficiently, by iteratively constructing filename
	*) create a function for creating directory names:
		*) when creating the string, check that the same directory
		 	string wasn't just created (store last Directory * ptr)
		*) this should be very fast! and save memory
		*) static char * buffer, that only grows in size during life 
				span
		*) implement like:
			static char * buffer = NULL;
			static int bufferSize = 0;
			static int lastDirectory * last = NULL;
			static int pos;

			if(last == thisOne) return buffer[pos];
		
			pos = bufferSIze;
			for(parentDir; !rootDir; parent = parent->parent) {
				pos -= strlen(parent);
				if(pos < 0) i{
					realloc(-pos bytes);
					pos = 0;
				}
				/* we don't want to append a '\0', so use
					strncpy */
				strncpy(buffer[pos], parent, strlen(parent));
			}

			return buffer;

*) implement listener socket protocol as documented here:
	http://www.musicpd.org/wiki/moin.cgi/MpdListenerProtocol

*) add support for coverart using freedesktop standard for icons/images

*) rewrite saved playlist code
	*) abstract out saved playlists from playlist.c
	*) command for displaying playlist contents
	*) command for appending to playlist
	*) new commands
		*) clear <playlist> /* synonym for rm */
		*) add <playlist> <path>
		*) playlist <playlist> /* displays saved playlist */
		*) replace <playlist> /* replace current playlist
						with saved playlist and
						keep playing */

*) state
	*) abstract out state code from playlist.c
	*) save states of audioOutput devices
	*) put MPD Version in statefile

*) add command for inserting songs in a specific position

*) put more debugging info when failing to read/write db and other similar 
	errors

*) make libao optional during configure, but check that some form of audioOutput
	is enabled (either oss, shout, or ao)

*) Fix id3v1 encoding

*) Cleanup Config File Code

*) Optimize read() on clients

*) Handle mp1 and mp2 files (including mp2's that are disguised as mp3's with 
	a mp3 suffix)

0.13
----
*) support for dynamically loading plugins