pjsip的编译及简单使用

Linux系统下搭建pjsip 1.安装依赖:在开始之前,确保安装了所有必要的依赖。对于 pjsip,这通常包括开发工具和库,如 gcc、make、autoconf 等。你可以使用你的 Linux 发行版的包管理器来安装它们。例如,在基于 Debian 的系统(如 Ubuntu)上,你可以使用以下命令:2.下载pjsippjsip 官网下载最新的源代码。你可以使用 wget 或 curl 命令直接在终端下载。例如:这里的 x.y.z 应该替换为最新的版本号。(我这里下载的是2.14版本,可以直接点击下面链接下载。 阅读详情
1.下载
我下载的是pjproject-1.12.zip

2.编译
将下载的文件解压后,目录下有pjproject-vs8.sln,可以直接使用vs2005打开,
目录下的readme.txt文件中有编译说明,关于windows下的注意点如下:
  Building Win32 Target with Microsoft Visual Studio
          Generally we can just do these steps:

         1. Visual Studio 6: open pjproject.dsw workspace,
         2. Visual Studio 2005: open pjproject-vs8.sln solution,
         3. Create an empty pjlib/include/pj/config_site.h, and
         4. build the pjsua application.
新建一个空文件pjlib/include/pj/config_site.h后,编译pjsua工程出现以下错误:
1>LINK : fatal error LNK1104: cannot open file 'dsound.lib'

看名字dsound.lib像是directX里面的东本,试着在Microsoft DirectX 9.0 SDK (Summer 2004)/lib中查找(DirectX SDK需要单独下载),果然找到了,将路径添加进去后,编译通过了。在pjproject-1.12\pjsip-apps\bin目录中,可以看到编译好的程序 pjsua-i386-Win32-vc8-Debug.exe

3.测试
似乎不能在一台机子上打开两个客户端,所以借助虚拟机。 分别在在p1、p2上运行程序,根据提示信息,拨打电话过程如下:
1).在p1中输入"m",接着输入sip:192.168.9.81(p2的ip)
2).p2中会打印出接听提示信息,输入"a"接听,再输入200作为应答
3).现在连接建立成功了,p2输入"h"挂电话
截个图:


4.用Wireshark截获的sip命令


 
编译官方的pjsip export LDFLAGS+="-L/home/pjsip/alsa/alsa-lib-1.2.9/__install/lib " 注意空格。export CFLAGS+="-I/home/pjsip/alsa/alsa-lib-1.2.9/__install/include " 注意空格。https://www.alsa-project.org/files/pub/lib/ # 下载alsa-lib。vi pjlib/include/pj/config_site.h # 添加插件。 阅读详情

相关推荐

PJSIP编译

必须使用Linux编译,不要在Windows上浪费时间,编译好了再把so拷贝出来Windows即可。没有Linux?virtualbox搞一个Ubuntu不是什么难事,网速快的话半小时搞定。 源码目录说明 目录: lib: [PJPROJECT的lib库] pjlib:[基础框架库] pjlib-util:[辅助工具库] pjmedia:[开源的媒体栈] pjnath:[开源的NAT-T辅助库] pjsip:[开源的SIP协议栈] pjsip-apps[demo] 配置准备 VirtualBox6.1 Ub

ithouse的专栏 2725

全面掌握PJSIP:多媒体通信库的介绍与开发指南

PJSIP是一个开源的SIP协议栈,支持包括Windows、Linux、MacOS在内的多种操作系统,并且已经广泛应用于各种VoIP和实时通信系统中。PJSIP具备高度可移植性,轻量级、高效并且高度模块化,能够方便地集成到各类项目中。PJSIP项目(也称为PJproject)是一个高质量的开源库,用于实现SIP协议。SIP(Session Initiation Protocol)是IETF定义的一个信令协议,用于创建、修改和终止多媒体会话。

weixin_31860973的博客 2052

PJSIP视频通话客户端

目录前言语音功能实现编译环境编译视频功能实现编译环境编译客户端总结参考 前言 PJSIP 是一个免费的开源多媒体通信库,用 C 语言编写,实现了基于标准的协议,如 SIP、SDP、RTP、STUN、TURN 和 ICE。它将信令协议 (SIP) 与丰富的多媒体框架和 NAT 穿越功能结合到高级 API 中,该 API 具有便携性,适用于从台式机、嵌入式系统到移动手机的几乎任何类型的系统。 官方网站:https://www.pjsip.org/ PJSIP开源库的架构图如下: 项目实现: 用开源代码实

Yuan_mingyu的博客 7854

FFmpeg4.3系列之28:SIP+eXosip+pjsip小白入门

敬告:该系列的课程在抓紧录制更新中,敬请大家关注。敬告: 该系列的课程涉及:FFmpeg,WebRTC,SRS,Nginx,Darwin,Live555,等。包括:音视频、流媒体、直播、Android、视频监控28181、等。我将带领大家一起来学习:学习sip协议的基本原理、流程、结构;编译开源库源码osip,eXosip,pjsip(包括windows和Linux两套环境);使用eXosip或pjsip进行案例实战;具体内容包括:  1.sip协议讲解,包括原理、结构、协议内容、流程分析等。2.osip与eXosip的源码编译,使用eXosip进行案例实战并详解流程。3.pjsip的源码编译,使用pjsip进行案例实战并详解流程。

pjsip学习笔记之一 –pjsip编译使用

pjsip学习笔记之一 –pjsip编译使用最近出于兴趣,想学习下开源的sip协议栈,然找了很多文章,依然没有找到想要的答案。下面就pjsip编译使用进行说明: pjsip编译pjsip官网()下载最新的源码,将其解压到linux下。 1) cd pjsip-xx 2) ./configure 此处采用默认配置,若想进行一些配置,请查阅官网说明,此处主要是让一个

静夜聆风的专栏 4220

【整理】PJSIP开源库详解

PJSIP是一个包含了SIP、SDP、RTP、RTCP、STUN、ICE等协议实现的开源库。它把基于信令协议SIP的多媒体框架和NAT穿透功能整合成高层次、抽象的多媒体通信API,这套API能够很容易的一直到各种构架中,不管是桌面计算机,还是嵌入式设备等 PJSIP组织架构 PJSIP开源库中主要包含两个模块,SIP协议栈(SIP消息处理)和媒体流处理模块(RTP包的处理)。 静态库布...

行到水穷处,坐看云起时 9148

PJSIP开源库详解

当流需要发送外送RTP/RTCP包中,它将调用媒体传输端口API中的pjmedia_transport_send_rtp()和pjmedia_transport_send_rtcp()函数,那个在媒体传输端口的“虚函数指针”(pjmedia_transport_op)中称作“send_rtp()”和“send_rtcp()”方法的简单封装。例如:对于UDP媒体传输端口,它使用pjmedia_transport_udp_create()或pjmedia_transport_udp_create2()函数。..

Lce的专栏 4545

Windows环境下编译pjsip

pjsip大体上是一套开源SIP协议栈,更多内容可以参考pjsip背景组成等。项目需求在 Windows上部署运行,并开发客户端,客户端打算用MicroSip改造。MicroSip依赖pjsip。 首先编译pjsip。依赖ffmpeg和sdl2。 下载pjsip源码 https://www.pjsip.org/download.htm 源码主要结构: lib: [PJPROJECT的lib库] pjlib:[基础框架库] pjlib-util...

moyebaobei1的博客 5049

iOS之PJSIP编译简单使用

公司要做网络通话及网络视频,故研究了一下,初试,希望各位多多指点。 首先先谈一下PJSIP编译,及在编译中我所遇到的问题。 在官网下载http://www.pjsip.org

丫丫 3445

VS2015使用pjsip编译一个helloworld工程

本文主要讲使用编译好的pjsip库来做一个自己的工程。以helloworld为例。 第一步:首先编译pjsip源码,这个网上有教程,最好看官网的。本人使用pjproject-2.5.1编译环境为vs2015。 第二步:vs2015下新建一个win32控制台应用helloworld,全新工程,准备调用pjsip库。 第三步:配置helloworld,加入pjsip库。 参考h

jite777的博客 5557

pjsip demo 完整案例

pjsip demo 完整案例 【下载地址】pjsipdemo完整案例 这是一个基于pjsip的完整开源案例,展示了从初始化、注册、建立通话到挂断通话的全流程。pjsip作为开源的SIP协议栈和媒体框架,支持语音、视频和即时消息等多种功能,广泛应用于跨平台开发。本案例经过内部测试,确保实际可运行,旨在帮助开发者更好地理解...

gitblog_06725的博客 500

simple_pjsua.c | PJSIP使用说明 | 福大嵌入式实时系统课学习 | 音频通话

本文在simple_pjsua.c基础上,记录一些踩坑点。

m0_65890285的博客 1706

iOS开发之使用pjsip开发VoIP应用程序

一、网络电话---pjsip---环境需求: iPhone应用推荐使用SDK 4.x,当然3.x也支持;iPad应用只支持SDK 3.2以上。 二、编译之前的准备工作: 1、下载pjsip源代码; 2、在目录/pjsip/pjlib/include/pj/中新建config_site.h,粘贴如下代码入内: #define PJ_CONFIG_IPHONE 1 #include <pj/config_site_sample.h> 三、编译pjsip:......

2872

PJSIP2.5.5 linux下编译

PJsip官网 http://www.pjsip.org/ 编译: 1、./configure 2.make dep 3、make 4、make install 遇到的问题: 缺少一个库: alsa/asoundlib.h: No such file or directory apt-get install libasound2-dev OK!

songhuanlinux的专栏 5337
上一篇: live555 关于使用ffmpeg扩展文件格式
下一篇: windows上的tomcat配置
gavinr
博客等级 码龄15年 373粉丝 95原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值