A free, high-performance, extensible SIP media server for VoIP services like announcements, voicemail, conferencing, and session border control.
SIP Express Media Server (SEMS) is an open-source media server for SIP-based VoIP networks that handles server-side audio processing. It provides essential VoIP services like announcements, voicemail, conferencing, and session border control, complementing existing proxy/registrar infrastructure. SEMS is highly extensible, supporting a wide range of codecs and offering both pre-built applications and a framework for custom development.
VoIP engineers, telecom service providers, and developers building or extending SIP-based telephony systems, especially those needing scalable audio processing, conferencing, or session border control capabilities.
Developers choose SEMS for its high performance, modular architecture, and comprehensive feature set—it combines a robust B2BUA/SBC with a flexible application framework (DSM scripting, Python, C++), all under a dual-license model that supports both open-source and proprietary deployments.
Sip Express Media Server
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
SEMS demonstrates excellent scalability from embedded systems to multi-core servers, handling up to 5000 channels on dual quad Xeon and 19000 TPS for B2BUA, as per the README's performance claims.
Offers DSM state machine scripting, embedded Python interpreters (ivr, py_sems), and a C++ API, enabling rapid development of custom VoIP services without deep C++ knowledge.
Supports patent-free codecs like G.711, GSM, Speex, Opus, and iLBC, with optional G.729, MP3, and ZRTP, and allows easy integration of additional codecs, as detailed in the features.
CMake options enable tailoring deployments by excluding specific modules (apps, DSM, core) and activating features like Opus or ZRTP support, providing flexibility for different use cases.
Building from source requires managing numerous optional dependencies (e.g., Python 3, spandsp, OpenSSL) and CMake flags, which can be daunting and error-prone for newcomers.
Documentation is limited to the doc/ directory and doxygen-generated files, with support primarily via GitHub issues, lacking extensive tutorials or a large active community compared to alternatives like Asterisk.
The GPL and proprietary licensing requires contacting FRAFOS GmbH for non-GPL use, adding legal and financial complexity for commercial deployments that need proprietary terms.