aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
blob: 56f6a15ca5279a7a24a9fb8e6d1095744dbb90dc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
0.12
----
*) Fix id3v1 encoding

*) Cleanup Config File Code

*) Steal resampling code from ices (i think this code works only for 16-bit)

*) Rewrite replaygain stuff:
	*) Replay gain struct with album and track gain's and peak's
	*) Pass these to replaygain function
	*) Don't have deocder plugins inquire weather or not to use replaygain,
		they should just parse tags and pass these to replaygain func
	*) If replaygain tag info present, average the replaygain gain's
		and peak's on the fly
	*) If NULL replaygain struct, then use the average replaygain gains
		and peak's to compute the the scale for files missing
		replaygain tags (make this a config file option)

*) Optimize read() on clients

*) Add libshout && vorbis encoding support
	*) clean up code to make more robust (only works for 16-bits)
	*) flush buffer on clearEncoder, it produces a little hiccup currently
	*) cleanup configure script stuff (shout needs vorbisenc)

*) Make each audioOutput device enable/disable by the client

*) add command
	*) command that takes file/url's (no directory's) and returns the songid
	*) allow to specify position in playlist where to insert song(s)

*) rewrite saved playlist code
	*) abstract out saved playlists from playlist.c
	*) command for displaying playlist contents
	*) command for appending to playlist

*) max http buffering configurable

*) use getaddrinfo instead of gethostbyname (check libshout)

Post-1.0
--------
*) crosslink "list" stuff, for example, artists are crosslinked to alubms and 
vice versa, this way you can do list album artists or list artist albums, this 
will make life easier when we add genre and other metadata

*) rewrite linked list impelmentation to be more flexible
	*) remove "key" stuff
	*) allow assigning a compare function for a list

*) allow find/search commands take arbitrary search pairs

*) add configurable metadata, and add newmetadata items