安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

键盘手 (Keyboardist)
• 阅读 443

背景分析

从视频智能化相关技术研发开始计算,智能化在视频行业内已经发展了十余年,但是视频行业的智能化应用一直没有达到预期。目前视频智能化主要的表现还是集中在前端设备摄像机产品的某些智能功能,以及一些配备智能分析的NVR/DVR和后端的智能分析平台系统。无插件直播和智能化水平还处在初级阶段,周边的硬件及软件设备还未完善,还有很多环境和应用限制条件。

例如传统安防行业,智能安防的技术门槛有了极大程度的提高,系统的复杂性和技术性都呈指数增长。大数据、云计算、深度学习、人工智能应用等等技术,是安防智能化发展的关键技术。对于企业来说,安防智能化的建设需要的专业知识面非常广,并且要求有相当的整合能力,这一切都对安防摄像头内容无插件直播的技术发展提出了不小的要求。无插件直播平台EasyNVR顺应而生。

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

无插件直播平台EasyNVR中AI_Filter功能无法使用自编的ffmpeg库

问题需求

客户在使用无插件直播平台EasyNVR的时候,使能Ai Filter功能,并且使用自己编译的ffmpeg,编译生成了libEasyAiFilter.so,但是在NVR调用Ai Filter功能模块的时候,使用的还是NVR编译的ffmpeg库。

问题分析

根据log显示ffmpeg版本,NVR在调用libEasyAiFilter库的时候,Ai Filter使用的一直是编译到NVR里面的ffmpeg库,使用的不是客户编译的ffmpeg库。

问题解决

为了避免大范围的修改前提下,保存NVR不动,只是修改Ai Filter,那就是在编译Ai Filter的时候,使用ffmpeg的静态库,把ffmpeg静态库编译到Ai Filter的动态库中,这样保证Ai Filter在ffmpeg的接口函数与时候与NVR保持独立,互不影响。

步骤

1.编译生成ffmpeg静态库:

1)下载所需要版本代码。下载地址:http://ffmpeg.org/download.html
各个历史版本下载:http://www.ffmpeg.org/releases/

2)下载完成后进行解压

tar –vxf ffmpeg-4.1.4.tar.xz
cd ffmpeg-4.1.4
./configure --enable-static –disable-shared --disable-yasm --enable-libx264 --enable-gpl --enable-libfreetype –enable-pic

配置完成后,进行编译

      make
      make install

2.把编译生成的.a 文件copy到ai Filter项目下的 Lib/FFmpeg/linux/ 目录下,同时需要copy libx264.a libfreetype.a。

如果需要增加其他外部第三方库,如增加libx264方法一样。
Ffmpeg也提供了需要的地方库的下载地址
https://johnvansickle.com/ffmpeg/release-source/

注意在生成libEasyAIFilter的时候可能会出现Relocation相关的错误,此类解决方法
1)ffmpeg 编译成静态库,需要增加—enable-pic,否则aifilter 库无法调用
2)Aifilter需要"-Wl,-Bsymbolic"编译选项

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

3)对于在编译ffmpeg的时候使用的第三方库,也需要加入-fPIC编译选项,如libx264
编译的时候./configure --enable-static --enable-pic --disable-opencl

如在编译x246有遇到如下问题

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

解决:重新更新配置

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

重新编译x264解决

专业团队

为了保障我们的服务器正常稳定运作,无插件直播平台EasyNVR有专业的运维(售前支撑、商务咨询、售后维护)团队,随时对客户各种突发情况快速响应处理,保证互联网直播的顺利进行。我们也希望实现“0延时”,但理想丰满,现实骨感。每一个完美的直播背后都需要设备、网络、并发量等流程配合完成,正所谓“蝴蝶效应”,任何一个小环节都会对直播延时产生影响,无插件直播平台EasyNVR团队要做的就是不断完善开发互联网直播系统,保证直播的低延时、稳定性,同时视频播放高清流畅。

安防摄像头网页无插件直播方案流媒体服务器EasyNVR之AI_Filter功能无法使用自编的ffmpeg库问题解决

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
EasyNVR硬件云终端与EasyNVR综合对比
背景分析互联网视频直播越来越成为当前大势;对于传统的安防监控,一般都是局限于内网,无法成批量上云台。传统的海康和大华的平台虽然可以通过自身私有协议上云平台集总管控,但是往往只是支持自身的私有协议接入,对于市面其他安防摄像头没有很好的接入。对于播放的客户端方面,往往是需要集成自身的插件才可以完成是视频的直播。种种限制都是我们限制安防上面的一个个痛
Stella981 Stella981
3年前
RTSP摄像头实现H265 H264 Web端无插件直播流媒体服务EasyNVR在集成iframe无法自动播放问题解决方法
背景说明由于互联网的飞速发展,传统安防摄像头的视频监控直播与互联网直播相结合是大势所趋。传统安防的直播大多在一个局域网内,在播放的客户端上也是有所限制,一般都需要OCXWeb插件进行直播。对于安防监控的视频直播需求,根据不同的业务需求,对视频直播需求也不尽相同。针对这样的行业大环境背景,立足于开源社区的EasyDarwin团队推出了EasyN
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Stella981 Stella981
3年前
EasyNVR安防互联网化流媒体服务器直播平台如何获取授权的机器码?
背景分析随着平安城市、智慧城市、雪亮工程、智能交通等各项建设的持续开展,安防逐渐得到普及,面对如此广阔的市场,对安防企业来说不仅仅是机遇更多的是挑战。现今大多数摄像头一直没能摆脱人工监控的传统监控方式,由此导致了大量视频数据堆积占用存储资源、实时性差、检索困难等问题,海量摄像头带来的海量视频数据检索工作需要耗费大量警力。!15.jfif
E小媛同学 E小媛同学
1年前
车牌识别 OCR API 的实际应用:智能停车、安防与数据统计
车牌识别OCR技术作为一种智能化的识别系统,在现代城市的交通管理和安全领域发挥着越来越重要的作用。本文将探讨车牌识别OCR接口在智能停车、安防监控以及数据统计方面的实际应用。
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
键盘手 (Keyboardist)
键盘手 (Keyboardist)
Lv1
们两个爱好一样,但性格大有不同
文章
3
粉丝
0
获赞
0