• ubuntu16.04 配置opensips服务器并编译pjsip测试


    一、版本相关

    1) ubuntu版本: 16.04 

    2) opensips版本:2.1.2

    3) pjsip版本 :2.5.5

    4) ffmpeg版本:3.3.4

    5) sdl版本:2.0

    6) vs版本:2015

    7) x-lite 测试sip客户端软件

    二、编译pjsip

    1)、目录 pjlibincludepj,把config_site_sample.h拷贝一份,改为config_site.h

    2) 、添加视频功能

    config_site.h 加上

    1 #define PJMEDIA_HAS_VIDEO         1
    2 
    3 #define PJMEDIA_VIDEO_DEV_HAS_SDL       1
    4 
    5 #define PJMEDIA_VIDEO_DEV_HAS_DSHOW     1
    6 
    7 #define PJMEDIA_HAS_FFMPEG         1

    3)、配置sdl和ffmpeg库

    下载sdl2.0 ffmpeg3.3.4

    在pjproject源码lib目录copy sdl和ffmpeg的lib文件

    在pjproject源码新建include目录,分别建立ffmpeg、sdl目录。

    将ffmpeg的inlude头文件copy到ffmpeg目录下

    将sdl的include头文件copy到sdl目录下

    打开pjproject-vs14.sln的解决方案

    对项目 pjmedia_videodev  添加sdl支持;

    对项目 pjmedia_videodev  添加ffmpeg支持;

    对项目 pjmedia_codec 添加ffmpeg支持;

    4)ffmpeg注意事项

    pjsua在链接的时候会报错avcodec.lib “模块对于SAFESEH映像是不安全的”。需要关闭pjsua项目的SAFESEH。

    在编译器的属性框链接器|高级的‘映像具有安全异常处理程序’,设置为否。

    5) vs2015编译完成后本地测试pjsip

    在 pjsip-appsin 目录,创建两个批处理文件

    1 sample-debug-i386-Win32-vc14-Debug.exe --local-port=5060 --auto-answer=200 --video
    2 sample-debug-i386-Win32-vc14-Debug.exe --local-port=5061 --auto-answer=200 --video

    启动这两个客户端,在5061端口的客户端命令行输入

    m

    sip:127.0.0.1:5060

    呼叫5060sip客户端,测试语音视频通话

     

    三、ubuntu opensips部署

    1)安装环境,配置mysql编译选项,编译:

     依赖库

    1 apt-get install gcc bison flex make openssl
    2 libmysqlclient-dev perl libdbi-perl libdbd-mysql-perl
    3 libdbd-pg-perl libfrontier-rpc-perl libterm-readline-gnu-perl
    4 libberkeleydb-perl mysql-server ssh libxml2 libxml2-dev
    5 libxmlrpc-core-c3-dev libpcre3 libpcre3-dev subversion
    6 libncurses5-dev git ngrep libssl-dev
    1 tar xcf opensips-2.1.2_src.tar.gz
    2 cd opensips-2.1.2-tls/
    3 sudo make menuconfig

    选中 [*]db_sql

    配置 Configure Install Prefix,输入安装路径 /usr/local/opensips_proxy

    编译安装 Compile And Install OpenSIPS

     

    2)配置opensip script,配置mysql

    进入安装目录下的sbin目录,执行osipsconfig生成有以下依赖的脚本

    [*] ENABLE_TCP 
    [*] USE_ALIASES 
    [*] USE_AUTH 
    [*] USE_DBACC 
    [*] USE_DBUSRLOC 
    [*] USE_DIALOG 
    [*] USE_NAT 

    vi /etc/opensips.cfg 更改服务器ip

     

    vi opensipsctlrc配置mysql数据库

     

    3 )创建数据库,添加账号

     

    添加两个数据

     

    添加1000 和1001,以供后面pjsip和x-lite sip客户端通讯测试

    3)开启opensips服务

    四、pjsip 和 x-lite sip客户端通过opensips服务器进行语音视频通话测试

    pjsip注册opensips mysql配置的账号1000

    x-lite注册opensips mysql配置的账号1001

    x-lite 1001 呼叫 1000

     

     

    参考:https://www.xdty.org/1709

     

     

  • 相关阅读:
    vscode git
    ionic2/cordova自定义插件集成aar包
    ui-router实现返回上一页功能
    《深入理解Spark:核心思想与源码分析》一书正式出版上市
    记一次Web服务的性能调优
    程序设计——冲突
    Oracle执行计划的查看
    程序设计——规则
    Tomcat源码分析——Session管理分析(下)
    Tomcat源码分析——Session管理分析(上)
  • 原文地址:https://www.cnblogs.com/Forever-Kenlen-Ja/p/7741776.html
Copyright © 2020-2023  润新知