操作系统 :debian 10.13_x64

rtpengine版本:10.5

最新的debian12环境可通过apt直接安装rtpengine,但工作中有时候还会涉及到debian10这样的老系统,今天记录下debian10环境安装rtpengine的笔记,并提供相关演示效果及资源下载。

我将从以下几个方面进行展开:

  • debian镜像资源

  • 源码编译及安装rtpengine

  • 使用apt安装rtpengine

  • 配套资源下载

一、debian镜像资源

如果要使用虚拟机进行实验,需要使用debian10的镜像进行安装,但debian10是老系统,官网不容易找(但还是能找到的):

https://cdimage.debian.org/cdimage/archive/

本文用到的镜像下载地址:
https://cdimage.debian.org/cdimage/archive/10.13.0/amd64/

二、源码编译及安装rtpengine

1、获取源码

GitHub地址:https://github.com/sipwise/rtpengine

可以在Releases里面下载源码的tar.gz包,这里选的版本是 10.5.3.5 ,文件名称是:

rtpengine-mr10.5.3.5.tar.gz

如果GitHub下载过慢,可从如下渠道获取:

关注微信公众号(聊聊博文,文末可扫码)后回复 20240817 获取。

2、更新apt源

文件:/etc/apt/sources.list
内容如下:

# deb cdrom:[Debian GNU/Linux 10.13.0 _Buster_ - Official amd64 DVD Binary-1 20220910-18:04]/ buster contrib main

#deb cdrom:[Debian GNU/Linux 10.13.0 _Buster_ - Official amd64 DVD Binary-1 20220910-18:04]/ buster contrib main

deb http://security.debian.org/debian-security buster/updates main contrib
deb-src http://security.debian.org/debian-security buster/updates main contrib # buster-updates, previously known as 'volatile'
# A network mirror was not selected during install. The following entries
# are provided as examples, but you should amend them as appropriate
# for your mirror of choice.
#
# deb http://deb.debian.org/debian/ buster-updates main contrib
# deb-src http://deb.debian.org/debian/ buster-updates main contrib deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ buster/updates main contrib non-free deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security/ buster/updates main contrib non-free

3、安装依赖及编译

rtpengine编译和安装,可参考文档:
https://rtpengine.readthedocs.io/en/latest/compiling_and_installing.html

使用apt安装依赖:

apt install gcc g++ autoconf automake make cmake
apt install pkg-config libglib2.0-dev libpcre2-dev zlib1g-dev libjson-glib-dev libpcap-dev libswresample-dev
apt install libavcodec-dev libspandsp-dev libhiredis-dev libavformat-dev libevent-dev libxmlrpc-c++8-dev
apt install gperf libtool libiptc-dev libmariadb-dev-compat libmariadb-dev libcurl4-gnutls-dev libcurl4
apt install libwebsockets-dev libavfilter-dev iptables-dev

编译:

make all

编译完成后,二进制文件路径:daemon/rtpengine

默认不支持729编码,只能解码:

4、添加729支持

如果需要支持 729编码,需要安装bcg729库。Github地址:

https://github.com/BelledonneCommunications/bcg729

这里用的是1.1.1版本,下载命令如下:

wget https://github.com/BelledonneCommunications/bcg729/archive/refs/tags/1.1.1.tar.gz

如果GitHub下载过慢,可从如下渠道获取:

关注微信公众号(聊聊博文,文末可扫码)后回复 20240817 获取。

编译并安装bcg729库:

tar zxvf bcg729-1.1.1.tar.gz
cd bcg729-1.1.1/
cmake .
make
make install

然后重新编译 rtpengine(需要执行ldconfig指令):

5、安装rtpengine

这里说下,源码根目录的make install无效:

可以直接使用copy命令进行安装:

cp daemon/rtpengine /usr/local/bin/

三、使用apt安装

debian10也可使用第三方源来安装rtpengine,具体参考:

https://dfx.at/rtpengine/

这里描述下大概思路。

1、安装第三方key

命令如下:

wget https://rtpengine.dfx.at/latest/pool/main/r/rtpengine-dfx-repo-keyring/rtpengine-dfx-repo-keyring_1.0_all.deb
dpkg -i rtpengine-dfx-repo-keyring_1.0_all.deb
apt install gnupg
apt-key add /usr/share/keyrings/dfx.at-rtpengine-archive-keyring.gpg
apt-key list

2、添加source源

文件:/etc/apt/sources.list.d/rtpengine.list
内容如下:

deb  https://rtpengine.dfx.at/10.5  buster  main

3、安装rtpengine

安装命令:

apt install rtpengine

查看状态:

systemctl status rtpengine

四、资源下载

本文涉及源码及相关文件,可从如下途径获取:

关注微信公众号(聊聊博文,文末可扫码)后回复 20240817 获取。

debian10环境安装rtpengine的更多相关文章

  1. xfce-debian10 英文环境安装配置记录

    Centos还没有用利索(因为我听说debian是更纯正的社区开源项目???可是这对于我这样毫无技术菜鸟来说有什么关系呢???可是耐不住心中的悸动???悸动又从哪里了呢???哎,不管了),突然心血来潮 ...

  2. 使用专业的消息队列产品rabbitmq之centos7环境安装

      我们在项目开发的时候都不可避免的会有异步化的问题,比较好的解决方案就是使用消息队列,可供选择的队列产品也有很多,比如轻量级的redis, 当然还有重量级的专业产品rabbitmq,rabbitmq ...

  3. Linux下xampp集成环境安装配置方法 、部署bugfree及部署禅道

    XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.XAMPP 是一个易于安装且包含 MySQL.PHP 和 Perl 的 Apache 发行版.XAMPP 的确非 ...

  4. node.js环境安装,及连接mongodb测试

    1.node.js环境安装 npm config set python python2.7npm config set msvs_version 2013npm config set registry ...

  5. 谈谈React Native环境安装中我遇到的坑

    谈谈React Native环境安装 这个坑把我困了好久,真的是接近崩溃的边缘...整理出来分享给大家,希望遇到跟我一样问题的小伙伴能尽快找到答案. 首先,这是在初始化App之后,react-nati ...

  6. Kali Linux渗透测试实战 1.2 环境安装及初始化

    1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...

  7. Linux初学 - Elasticsearch环境安装

    下载 https://www.elastic.co/downloads/elasticsearch 安装 rpm -ivh 也可以双击rpm包安装 修改elastaticsearch host配置 修 ...

  8. Win7下Python2.7环境安装paramiko模块

    Win7下Python2.7环境安装paramiko模块,经过安装并测试成功,整理文档如下: 1.下载安装Windows版本的Python2.7,我默认装在C:\Python27 我的python已经 ...

  9. [ALM]一步一步搭建MS ALM环境 - 安装TFS + SQL SERVER

    描述: 安装SQL SERVER 2012,安装TFS 2013,配置TFS,挽起袖子,准备干活儿 步骤: 1,打开Hyper-V Manager,参考[Hyper-V]使用操作系统模板创建新的虚拟机 ...

  10. Sencha Toucha 2 —1.环境安装配置、在线打包、离线打包

    环境安装配置        1. 下载 1.1     Sencha Touch 下载 http://cdn.sencha.com/touch/sencha-touch-2.2.1-gpl.zip 1 ...

随机推荐

  1. .net core SM2加密+PKCS8实现

    前阵子在对接银行接口,对方给出的加密方式是SM2,在网上找了不少教程,都是使用Portable.BouncyCastle实现的,功能实现后发现对方给出的密钥格式是PKCS8,下面代码记录一下PKCS8 ...

  2. CLR via C# 笔记 -- 异常和状态管理(20)

    1. 异常是指成员没有完成它的名称所宣称的行动,异常类继承System.Exception. 2. .Net Framework 异常处理机制是用Microsoft windows提供的结构化异常处理 ...

  3. 更难、更好、更快、更强:LLM Leaderboard v2 现已发布

    摘要 评估和比较大语言模型 (LLMs) 是一项艰巨的任务.我们 RLHF 团队在一年前就意识到了这一点,当时他们试图复现和比较多个已发布模型的结果.这几乎是不可能完成的任务:论文或营销发布中的得分缺 ...

  4. gcc系列工具 介绍

    编译器相关知识学习 GNU GCC简介 GNU GCC是一套面向嵌入式领域的交叉编译工具,支持多种编程语言.多种优化选项并且能够支持分步编译.支持多种反汇编方式.支持多种调试信息格式,目前支持X86. ...

  5. 可重入锁思想,设计MQ迁移方案

    如果你的MQ消息要从Kafka切换到RocketMQ且不停机,怎么做?在让这个MQ消息调用第三方发奖接口,但无幂等字段又怎么处理?今天小傅哥就给大家分享一个关于MQ消息在这样的场景中的处理手段. 这是 ...

  6. Docker的使用和常用命令

    部署项目前基础服务准备 第一步:安装Docker环境 第二步:开启Docker远程带证书访问(可选) 第三步:拉取mysql,redis,nginx等等所需镜像 第四步:运行(创建)容器 # 本地远程 ...

  7. SpringBoot学习篇

    什么是SpringBoot?为什么要用SpringBoot 用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件) 创建独立的spring引用程序 ...

  8. ECMA标准ECMAScript(JavaScript的一个标准)和C#

    2024 年 6 月 26 日,第 127 届 ECMA 大会正式批准了 ECMAScript 2024 语言规范,这意味着它现在正式成为最新 ECMAScript 标准.ECMAScript是ECM ...

  9. 4 安卓h5分享功能未实现

    安卓h5点击分享没有复制链接到剪切板

  10. C#:SqlSugar中时间戳(TimeStamp)的使用

    1.数据库建表 CREATE TABLE dbo.Test ( tId INT IDENTITY NOT NULL , tName NVARCHAR (20) NOT NULL , tSalary D ...