GB28181 设备端移植 :环境搭建
设备端移植:主要实现GB28181 的下级功能,向平台注册功能与给到平台设备信息能力以及向平台推流的能力。
这里选择SIP的开源库为osip和eXosip
第一步 下载osip和eXosip
http://www.antisip.com/download/exosip2/libeXosip2-4.0.0.tar.gz
其他版本下载链接
Index of /releases/exosip/ (nongnu.org)
第二步 解压,并编译
1.进入libosip2-4.0.0\platform\vsnet目录,用VS2010直接打开osip.sln文件,项目自动转换
2.更改libosip2-4.0.0\platform\vsnet\osip2.def 文件,在文件末尾追加
osip_transaction_set_naptr_record @138
3.更改libosip2-4.0.0\platform\vsnet\osipparser2.def 文件,在文件末尾追加
osip_realloc @416
osip_strcasestr @417
__osip_uri_escape_userinfo @418
4.先编译osipparser2,再编译osip2,最后在libosip2-3.6.0\platform\vsnet\Debug DLL下生成库文件:
- osip2.lib osip2.dll osipparser2.lib osipparser2.dll
第三步,解压,编译eXosip
进入libeXosip2-4.0.0\platform\vsnet目录,用VS2010直接打开eXosip.sln文件,项目自动转换:
1.将osip2.lib,osip2.dll,osipparser2.lib,osipparser2.dll拷贝到Debug目录下
2.C/C++ --> 预处理器 --> 预处理器定义: 删除HAVE_OPENSSL_SSL_H
3.C/C++ --> 常规 --> 附加包含目录: 将osip的头文件libosip2-3.6.0\include包含进来
4.编译,生成eXosip.lib
编译时会报错eXtl.c找不到。.c文件怎么也会找不到呢。那我们展开eXosip的源文件目录,发现里面有eXtl.c,但是双击说文件不存在,在工程中将其删除之后进行编译即可编译通过
第四步,搭建GB28181的服务器
服务器使用的是青柿的LiveGBS进行搭建:
服务介绍:
[LiveGBS GB28181流媒体服务 | 青柿视频流媒体服务解决方案 (liveqing.com)](https://www.liveqing.com/docs/download/LiveGBS.html)
安装使用说明:
[LiveGBS GB28181 国标方案安装使用说明 | 青柿视频流媒体服务解决方案 (liveqing.com)](https://www.liveqing.com/docs/manuals/LiveGBS.html)
参考链接:
Windows下编译eXosip、osip,以及UAC和UAS的例子 - jlins - 博客园 (cnblogs.com)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库