zoukankan      html  css  js  c++  java
  • 视频流媒体服务器EasyNVR通过ffmpeg集成H.264及H.265报not found错误

    根据摄像头不同的接入协议,我们的流媒体服务器分为不同的产品,有支持RTMP协议的EasyDSS,有支持国标GB28181协议的EasyGBS,以及支持RTSP协议的EasyNVR。目前我们的流媒体服务器及视频播放器Easy Player都能够支持H.265编码格式的视频。

    由于H.265是趋势,我们也逐渐将流媒体服务器集成H.265,首先就用的是ffmpeg进行集成。ffmpeg接收H.265的数据之后一帧一帧的发送,不能接收全部的数据,所以需要先把H.265解析成一帧数据。

    我们的研发在使用ffmpeg集成h264以及h265时,出现了以下问题:

    H.264报Libx264 not found错误,
    H.265报x265 not found using pkg-config错误

    在编译目录下,ffbuild目录下有个config.log,

    对于libx264 not found,详细错误如下:

    Libx264.a(opencl-8.0):undefind reference to symbol ‘dclose’
    X264中opencl有问题,重新编译x264,去除opencl, --disable-opencl
    重新编译x264,再配置ffmpeg,错误解决。

    对于x265 not found using pkg-config

    1.增加PKG_CONFIG_PATH路径,x265.pc所在路径
    export PKG_CONFIG_PATH=extra_dir/lib/pkgconfig:extradir/lib/pkgconfig:PKG_CONFIG_PATH
    2.ffmpeg 配置选项增加 --pkg-config=“pkg-config --static”

    问题解决

    1.x264 编译增加 --disable-opencl 配置选项
    2.X265增加PKG_CONFIG_PATH路径,ffmpeg编译增加–pkg-config=“pkg-config --static” 配置选项

  • 相关阅读:
    剑指offer---链表中倒数第k个结点
    剑指offer---反转链表
    剑指offer---从尾到头打印链表
    数据结构---链表ADT C++实现
    ubuntu解压zip文件出现乱码情况解决方法
    Ubuntu终端常用的快捷键(转载)
    requsets模块的学习
    爬虫的基本知识
    谈谈我们对userAgent的看法,为什么爬虫中需要userAgent?
    git的基本使用
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13431800.html
Copyright © 2011-2022 走看看