Skip to content

RTP.IO module

The RTP.io module provides an integrated solution for handling RTP traffic within OpenSIPS, enabling RTP relaying and processing directly inside the OpenSIPS process. This eliminates the need for external processes such as RTPProxy, resulting in a more streamlined, efficient, and manageable system for certain use cases.

The rtp.io module starts RTP handling threads in the main OpenSIPS process and allows the rtpproxy module to access these threads via a one-to-one socket pair. This tight integration facilitates efficient RTP traffic management within OpenSIPS without relying on external RTP handling services.

The module requires RTPProxy version 3.1 or higher, compiled with the --enable-librtpproxy option to build. It utilizes the librtpproxy library to manage RTP traffic and interfaces with the existing rtpproxy module to generate commands, parse responses, and process SIP messages.

When the rtpproxy module is loaded without arguments and the rtp.io module is also loaded, the sockets exported by rtp.io are used automatically in set 0. Alternatively, these sockets can be incorporated into other sets by using the "rtp.io:auto" moniker.

Command-line parameteres passed down to the embedded RTPProxy module upon initialization. Refer to the RTPProxy documentation for the full list.

Parameter has no default value.

Set rtpproxy_args parameter
...
modparam("rtp.io", "rtpproxy_args", "-m 12000 -M 15000 -l 0.0.0.0 -6 /::")
...

Top contributors by DevScore(1), authored commits(2) and lines added/removed(3)

#NameDevScoreCommitsLines++Lines—
1.Maksym Sobolyev (@sobomax)716600
2.Stefan Darius (@dariusstefan)648920
3.Razvan Crainea (@razvancrainea)3122
4.Liviu Chircu (@liviuchircu)2130

(1) DevScore = author_commits + author_lines_added / (project_lines_added / project_commits) + author_lines_deleted / (project_lines_deleted / project_commits)

(2) including any documentation-related commits, excluding merge commits

(3) ignoring whitespace edits, renamed files and auto-generated files

#NameCommit Activity
1.Stefan Darius (@dariusstefan)Jun 2026 - Jul 2026
2.Razvan Crainea (@razvancrainea)Jun 2026 - Jun 2026
3.Liviu Chircu (@liviuchircu)May 2025 - May 2025
4.Maksym Sobolyev (@sobomax)Jun 2024 - Jun 2024

(1) including any documentation-related commits, excluding merge commits

Last edited by: Razvan Crainea (@razvancrainea), Maksym Sobolyev (@sobomax).

All documentation files (i.e. .md extension) are licensed under the Creative Common License 4.0