forked from alsaplayer/alsaplayer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
81 lines (66 loc) · 3.41 KB
/
TODO
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
TODO list (March 2011, Erik de Castro Lopo)
- Check that malloc result isn't cast.
- Remove #Include "message.c" from app/Main.cpp
- Check all usage of strncpy, strcpy, strcat etc.
- Switch to float as internal data format.
- Clean up input/output/etc plugin APIs.
- Improve interpolation quality of varispeed.
- Clean out GTK+/Glib 1.x cruft.
- Add streaming support for all plugins.
- Look into using libmagic to determing file types.
- Improve the can_handle() function of all input plugins.
- Accept audio files as well as playlists in the file open dialog.
User request:
-------------
Add support for multi-channel audio files.
This will probably require substantial rewriting.
Some voluteer? If so, add you in the TODO list.
Old TODO list follows. These have not necessarily been dropped.
--------------------------------------------------------------------------------
TODO list (2007 June 23)
- The gtk2 interface is in fast progress. It provide the same level of functionality
as the gtk1 one and more is under development. A big thanks to Madej for his work
on this interface.
* sound quality improvements:
- convert all internal sound representation to 32 bits floats and convert back
to int for alsa (doing that globally will be the easiest way).
- use libsamplerate for resampling (pref option for quality).
- sndfile input plugin reduce everything to 16 bits. Floating point wav files
produce silence (such as Ardour generated files). Fix it.
* Other important things to do:
- Modify threading to use conditional wait; more portable
- global: move libalsaplayer to a standalone application with unix-sockets or
TCP- (UDP-?) based interface.
This will include (list of ideas at that time):
- Adding TCP-based control module in parallel with unix-socket based one.
- Separating libalsaplayer and checking for crossplatform-readiness.
- Separating all the interfaces.
- gtk2: traslation in more languages; check the actual translations.
- flac: check the Makefile. With flac>= 1.3, the oggflac test is not needed.
Maybe separate the flac>1.3 patch into separated files.
- flac: stream support.
- scope plugins: option to scale some of the scopes (at least Synaescope) at
full screen or double size. (double size will be faster and easier to implement).
- Check if the MIME types in the desktop file are correct.
- freedesktop icon.
- cddb: fix the multiple DTITLE line so at both lines are displayed and not only
the first one as now.
- cddb: Switch from C-style string to C++ style coding should help eliminate
buffer overflow. Maybe adapt xine support or use http://libcddb.sourceforge.net
- check for possible buffer overflows in CorePlayer.
- Change the default playlist drag and drop to LMB=>move and LMB+shift=copy
- Improve the input plugins in trunk/experimental in order to merge them into
AP (at least those compatible with the GPL).
- gtk2: playlist prints "Unknown" and the filename for untagged files. Print
the last 2 folder names in the path so at the user can use */Author/Album/file
for such files.
Know bugs:
- fix the quiet option, see http://bugs.debian.org/cgi-bin/bug-report.cgi?bug=412112
Old TODO list order according to priority, highest first
- Write proper documentation for the plugin APIs
- Complete default interface redesign
- Proper CD player controls
- Skin support (only the main window)
- Remember position when saving playlists
- accomplish suitability for small/embedded systems
(Frank Baumgart)