jrtplib版本:3.11.1
jthread版本:1.3.3
libsrtp版本:1.6.0 jrtplib库有两种编译方式:
1. 使能jthread编译,此方式可使jrtplib自动在后台轮询结束数据,
而不必用户自己调用RTPSession类中的poll方法轮询。(推茅,本例采用)
2. 不使能jthread编译, 这就要用户调用RTPSession类中的poll方法轮询。 首先编译libsrtp:
源码网站:github.com/cisco/libsrtp
下载后解压,进入源码目录。执行一项命令
./configure --prefix="安装目录" (交叉编译则需指定--host="交叉编译工具链")
make
make runtest
make install 其次编译jthread:
源码网站:https://github.com/j0r1/JThread
下载后解压,进入源码目录。
采用cmake编译(没安装则自行安装apt-get install cmake、apt-get install cmake-qt-gui)
1. 在目录下建立build目录 mkdir build
2. vi toolchain.cmake
3. 添加:
###########user defined#############
set( CMAKE_SYSTEM_NAME Linux ) #设置系统名
#set( CMAKE_SYSTEM_PROCESSOR arm ) #设置处理器名
set( CMAKE_C_COMPILER gcc ) #设置C语言编译器
set( CMAKE_CXX_COMPILER g++ ) #设置c++编译器
###########user defined#############
set(CMAKE_INSTALL_PREFIX "安装目录") #设置安装目录
###########user defined#############
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY )
######################################
4. 执行 cmake -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
5. make
6. make install 最后编译jrtplib:
源码网站:https://github.com/j0r1/JRTPLIB
下载后解压,进入源码目录。(采用cmake编译)
1. 在目录下建立build目录 mkdir build
2. vi toolchain.cmake
3. 添加:
set(JTHREAD_FOUND 1)
set(JTHREAD_INCLUDE_DIRS "jthread安装目录/include")
set(JTHREAD_LIBRARIES "-Ljthread安装目录/lib" "-ljthread" "-lpthread") set(LIBSRTP_FOUND 1)
set(LIBSRTP_INCLUDE_DIR "libsrtp安装目录/include")
set(LIBSRTP_LIBRARY_DIR "-Llibsrtp安装目录/lib" "-lsrtp") ###########user defined#############
set( CMAKE_SYSTEM_NAME Linux )
#set( CMAKE_SYSTEM_PROCESSOR arm )
set( CMAKE_C_COMPILER gcc )
set( CMAKE_CXX_COMPILER g++ )
###########user defined#############
set(CMAKE_INSTALL_PREFIX "jrtplib安装目录") #设置安装目录
###########user defined#############
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY )
######################################
4. 执行 cmake -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
5. make
6. make install

jrtplib移植的更多相关文章

  1. Linux下几种RTP协议实现的比较和JRTPLIB编程讲解

    流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议. IP电话等应用场合的技术基础.RTP是进行实时流媒体传输的标准协议和关 ...

  2. 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——收流篇:(一)简介

    关于实时流媒体传输的开源库,目前流行的主要有两个:live555和jrtplib. 其中live555将rtp.rtcp和rtsp的传输协议实现集于一身,功能齐全,是个超强的集合体.但是对于嵌入式系统 ...

  3. MVVM框架从WPF移植到UWP遇到的问题和解决方法

    MVVM框架从WPF移植到UWP遇到的问题和解决方法 0x00 起因 这几天开始学习UWP了,之前有WPF经验,所以总体感觉还可以,看了一些基础概念和主题,写了几个测试程序,突然想起来了前一段时间在W ...

  4. IIC驱动移植在linux3.14.78上的实现和在linux2.6.29上实现对比(deep dive)

    首先说明下为什么写这篇文章,网上有许多博客也是介绍I2C驱动在linux上移植的实现,但是笔者认为他们相当一部分没有分清所写的驱动时的驱动模型,是基于device tree, 还是基于传统的Platf ...

  5. Linux主机上使用交叉编译移植u-boot到树莓派

    0环境 Linux主机OS:Ubuntu14.04 64位,运行在wmware workstation 10虚拟机 树莓派版本:raspberry pi 2 B型. 树莓派OS: Debian Jes ...

  6. STM32F429 LCD程序移植

    STM32F429自带LCD驱动器,这一具有功能给我等纠结于屏幕驱动的程序员带来了很大的福音.有经验的读者一定有过这样的经历,用FSMC驱动带由控制器的屏幕时候,一旦驱动芯片更换,则需要重新针对此驱动 ...

  7. 将MPM雪模拟移植到Maya

    同事实现了一个迪士尼的MPM雪模拟论文,我将其移植到Maya中 论文题目是 A material point method for snow simulation 代码在这里: https://git ...

  8. ucos实时操作系统学习笔记——操作系统在STM32的移植

    使用ucos实时操作系统是在上学的时候,导师科研项目中.那时候就是网上找到操作系统移植教程以及应用教程依葫芦画瓢,功能实现也就罢了,没有很深入的去研究过这个东西.后来工作了,闲来无聊就研究了一下这个只 ...

  9. DM9000驱动移植在mini2440(linux2.6.29)和FS4412(linux3.14.78)上的实现(deep dive)篇一

    关于dm9000的驱动移植分为两篇,第一篇在mini2440上实现,基于linux2.6.29,也成功在在6410上移植了一遍,和2440非常类似,第二篇在fs4412(Cortex A9)上实现,基 ...

随机推荐

  1. spring不同环境下用不同的配置文件

    @Configuration @PropertySource("xx-${spring.profiles.active}.properties") public class Top ...

  2. JPA教程

    http://www.yiibai.com/jpa/jpa_criteria_api.html

  3. JS——定时器

    定时器在JS中的作用: 1)制作动画.时钟.倒计时 2)异步操作 3)函数缓冲与节流 定时器类型: 1)setTimeout 只执行一次的定时器 2)clearTimeout 关闭只执行一次的定时器 ...

  4. LeetCode 128 Longest Consecutive Sequence 一个无序整数数组中找到最长连续序列

    Given an unsorted array of integers, find the length of the longest consecutive elements sequence.Fo ...

  5. How to Install VMware Tools on RHEL 7/CentOS 7

    The original address Mware Tools is one of important components for virtual machine (VM) in order ge ...

  6. [Environment Build] 工作中遇到的关于Git的问题

    修改已经提交的commit中的author, commit git commit --amend --author 'Your Name <Your Email>' git commit ...

  7. UICollectionView笔记1

    WWDC 2012 Session笔记——205 Introducing Collection Views 这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里.如果您是首次来到本站 ...

  8. Java中的continue语句——通过示例学习Java编程(12)

    作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=23 continue语句主要是用在循环代码块中.当 ...

  9. Linux软件相关记录

    Pidgin+lw-web的聊天记录的文件对应的目录为.purple/logs/webqq/你的QQ号码/,进入之后有选择的删除. mkdir -p 递归创建目录:pwd 显示当前目录:cd .. 回 ...

  10. Duplicate Emails

    Write a SQL query to find all duplicate emails in a table named Person. +----+---------+ | Id | Emai ...