天天看点

海思3518E开发笔记3.2——ORTP的移植源码准备源码修改安装库查看相关文件

目录

  • 源码准备
  • 源码修改
  • 安装库
  • 查看相关文件

源码准备

https://github.com/dmonakhov/ortp

下载好后存放到临时工作目录并解压

源码修改

ortp是通过网络传输信息,但是不限于视频。由于我们下载的源码中没有h264的payload,所以要手动添加

avprofile.c

的357行将h264的payload加上

rtp_profile_set_payload(profile,96,&payload_type_h264);

安装库

进入ortp目录执行

./autogen.sh

海思3518E开发笔记3.2——ORTP的移植源码准备源码修改安装库查看相关文件

会有一些错误,就是一些工具没有安装

错误1:./autogen.sh: line 44: libtoolize:command not found

解决:sudo apt-get install libtool*

错误2:libtoolize: error: please install GNU M4, or ‘export M4=/path/to/gnu/m4’.

解决:sudo apt-get install m4

错误3:Automake - aclocal:command not found

解决:sudo apt-get install automake

./autogen.sh

继续执行

./configure --prefix=/tmp/ortp --host=arm-hisiv300-linux

/tmp/ortp 为安装目录,交叉编译工具链为arm-hisiv300-linux

make && make install

查看相关文件

[email protected]:/tmp/ortp$ cd /tmp/ortp/lib/;ls
libortp.la  libortp.so  libortp.so.9  libortp.so.9.0.0  pkgconfig
           

以上这些就是编译出来的库文件

[email protected]:/tmp/ortp/lib$ cd /tmp/ortp/include/ortp/;ls
b64.h      ortp_srtp.h    rtp.h             sessionset.h  telephonyevents.h
event.h    payloadtype.h  rtpprofile.h      str_utils.h   zrtp.h
logging.h  port.h         rtpsession.h      stun.h
ortp.h     rtcp.h         rtpsignaltable.h  stun_udp.h

           

以上为ortp库的头文件,工程若想使用ortp动态库,就需要包含ortp的头文件,链接的时候要用

由于是动态链接,所以要将这些头文件放到运行环境中