【Catalogue】Guo Lao Er's Blog Post: Summary of Images and Videos
1 Overview
PJSIP is a free and open source multimedia communication library written in C that implements standards-based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE. It combines Signaling Protocol (SIP) with a rich multimedia framework and NAT traversal capabilities into a high-level API that is portable to almost any type of system: desktop (x86), embedded ( arm-linux), mobile phone (Android).
Composition of PJSIP:
低级库:
pjlib 抽象操作系统差异,例如,文件操作、IO处理等
pjlib-util 工具库,例如,base64、crc、MD5、sha1、xml等
功能库:
pjsip SIP协议栈
pjmedia 媒体库,例如,ffmpeg、opengl、sdl、v4l2等
pjnath NAT穿透库,例如,stun、turn、upnp、ice等
高级库:
pjsip-apps/src/pjsua C接口高级库,使用上面的库,做封装、抽象,一般开发用这个库
pjsip-apps/src/pjsua2 C++接口高级库
Library frame diagram: