All Samples
PJSUA2 Samples
Sample |
Library(s) |
Description |
---|---|---|
PJSUA2 |
Demonstrates basic usages of PJSUA2. |
|
PJSUA2 (Python) |
Python GUI application supporting audio calls, presence, and instant messaging. |
|
PJSUA2 (Python) |
Simple audio conference and chatroom server |
|
PJSUA2 (Android, Java) |
Java GUI application supporting audio/video calls. See Building and running pjsua2 sample applications (Java & Kotlin). |
|
PJSUA2 (Android, Kotlin) |
Kotlin GUI application supporting audio/video calls. See Building and running pjsua2 sample applications (Java & Kotlin). |
|
PJSUA2 (SWIG, Java) |
This requires the Java SWIG module. After building the SWIG module, run |
|
PJSUA2 (iOS, Swift) |
Simple iOS app to make an audio and video call. |
|
PJSUA2 (iOS and Android, C#) |
Simple Xamarin app to make an audio and video call. |
PJSUA-LIB Samples
Sample |
Library(s) |
Description |
---|---|---|
PJSUA-LIB |
This small app (~200 LoC) is a fully functional SIP user agent, supporting registration and audio call (P.S. you need to modify credentials in the source code to register). Use this sample to study the general pattern and flow of PJSUA-LIB. |
|
PJSUA-LIB |
This is the reference implementation of PJSIP, demonstrating everything that PJSIP has to offer. We use this for any testing and for actual communications as well. |
|
PJSUA-LIB |
Perform series of tests to detect problems and measure the performance of the system, especially the audio subsystem, such as playback test, recording test, measuring audio device performance such as bursts, latency, and drifts, AEC performance, as well as displaying basic audio system information. |
|
PJSUA-LIB |
GUI user agent supporting video. Requires Qt toolkit. |
PJSIP Samples
Sample |
Library(s) |
Description |
---|---|---|
PJSIP (core) |
This is the simplest SIP application if using the low level PJSIP (core) library. It demonstrate the core concept of PJSIP handling of SIP messages using PJSIP module. This simple program responds any incoming requests (except ACK, of course!) with 501/Not Implemented. It supports UDP and TCP. |
|
PJSIP (core) |
Simple implementation of pure stateless proxy as spec-ed by RFC 3261. |
|
PJSIP (core) |
Simple implementation of stateful proxy as spec-ed by RFC 3261. |
|
PJSIP-UA |
Accepts all incoming calls with SDP to make caller send media to itself. Useful for auto-responding test server. Supports UDP, TCP, IPv6. |
|
PJSIP-UA |
Utility to send INVITE or re-INVITE without SDP, for testing. |
|
PJSIP-UA |
SIP call generator/load testing/performance measurement, can be used as both server and client. Only performs signaling (SIP and SDP negotiation) and does not do RTP. |
|
PJSIP-UA, PJMEDIA (Codec, AudioDev, VideoDev) |
Full implementation of a SIP user agent, supporting SIP, SDP, RTP, audio, and video, with actual sound device and camera, using the low level PJSIP and PJMEDIA libraries. |
|
PJSIP-UA, PJMEDIA |
A specialized program to measure audio quality under load by using RTCP feedback. Can be used to generate/handle load testing with many calls. This program establishes SIP INVITE session and media, and calculate the media quality (packet lost, jitter, rtt, etc.). Unlike normal pjmedia applications, this program bypasses all pjmedia stream framework and transmit encoded RTP packets manually using own thread. |
PJMEDIA Samples
Below are PJMEDIA samples. Open the source file for more information.
Sample |
Library(s) |
Description |
---|---|---|
PJMEDIA |
Tests the effectiveness of the AEC in PJMEDIA by feeding it with playback and (simulated) captured WAV files from the microphone, and outputs the results of AEC processing as another WAV file. |
|
PJMEDIA-(core, audiodev) |
Interactively demonstrates operations to the sound devices, such as listing, refreshing, recording, playback, getting/setting latencies, and performing timing tests. |
|
PJMEDIA-(core, codec, audiodev, videodev) |
AVI media player. |
|
PJMEDIA |
Internal utility to benchmark the conference bridge |
|
PJMEDIA |
Interactive demo of the conference bridge, allowing mixing, audio level setting, and audio level meter. |
|
PJMEDIA-(core, codec) |
Encoding and decoding WAV file to demonstrate how to use the codec framework. |
PJNATH Samples
Below are PJNATH samples. Open the source file for more information.
Sample |
Library(s) |
Description |
---|---|---|
PJNATH |
Interactive demo of ICE without (SIP) signaling, by creating two instances of this program, and copy/pasting the candidates to the other instance for the “signaling”. Tip Press |