-*** $Id$ ***
+Build System:
+- Use own name mangling scheme instead of ltdl's, which will eliminate the
+ need for .la files or extra trickery.
+
+Porting:
+- rtp module ported to Win32 (sendmsg/recvmsg emulation)
+
+I18N:
+- iconv stuff sent from utils to server (UTF-8)
+- iconv sample loading in server
+- gettextify pulseaudio
+
+Cleanups:
+- drop dependency of libpulse on libX11, instead use an external mini binary
-Post 0.9.0:
-- alsa mmap driver
-- dbus/hal
-- polish for starting polypaudio as root/system-wide instance
-- chroot()
+Network:
- module-tunnel: improve latency calculation
-- port from howl to avahi
-- multiline configuration statements
+- module-tunnel: more reliable audio streaming over wifi
+- Compressed network streams for tunnels/rtp streams. (Might be a good GSoC project)
+ This builds on passthrough support. A good candidate codec would be CELT.
+
+Test:
+- autoload
+
+Auth/Crypto:
+- ssl
+- key rings for auth
+- challenge response auth
+- sasl auth
+
+Features:
- use scatter/gather io for sockets
-- rtp module ported to Win32 (sendmsg/recvmsg emulation)
-- CODECs to reduce bandwidth usage (plug-in based)
-- Remove symdef files and use macros (like most other projects)
-- Use own name mangling scheme instead of ltdl's, which will eliminate the
- need for .la files or extra trickery.
-- use software volume when hardware doesn't support all channels (alsa done)
-- paplay needs to set a channel map. our default is only correct for AIFF.
- (we need help from libsndfile for this)
-- silence generation should be moved into the core to avoid races and code
- duplication in the backends
- examine if it is possible to mimic esd's handling of half duplex cards
(switch to capture when a recording client connects and drop playback during
that time)
-- Fix a way for the threading API to handle state and subscription callbacks
- in a nice way.
-- iconv stuff sent from utils to server (UTF-8)
-- iconv sample loading in server
-- Document utf8.h, timeval.h and util.h
-- fix clock of the NULL sink
-- gettextify polypaudio
-- use send() with MSG_NOSIGNAL instead of write() wherever possible, and than drop that SIGPIPE warning
-- drop dependency of libpolyp on libX11, instead use an external mini binary
-- "hot" moving of streams between sinks
-- check if using prctl(PR_GET_NAME) makes sense in pa_get_binary_name()
-- gconf module + frontend
-- hooks for creating sink inputs
+- add an API to libpulse for allocating memory from the pa_context memory pool
+- configuration file syntax:
+ - multiline configuration statements
+ - recursive .if
Long term:
- pass meta info for hearing impaired
Backends for:
- portaudio (semi-done)
-- sdl
-- xine (needs update)