SpeexComm is a voice communication engine for gaming that is based on Speex and can be used across multiple platforms.
Some of the key features of SpeexComm include its free and open-source nature, making it both libre and gratis. The software is also portable, as its engine requires only (uc)libc to function. Moreover, the engine is lightweight and does not do much work, with few call instances to mallocs and not many memcpys. However, audio encoding and preprocessing can be resource-intensive, and the software can handle such tasks with ease.
In terms of its open issues, SpeexComm developers are considering adding a new parameter for audio_read/write calls to get information about going ahead or falling behind. There is also a consideration to add client_version as a mandatory parameter for engine_alloc. When the server uses struct sample for stream downmixing from clients, this can result in cache misses, especially with smaller CPU caches. The developers are currently assessing possible solutions to the issue by tweaking the way data is received. Finally, there is a plan to fix USE_POOL in list.c (wnd).
Version 0.1.0: N/A