Ubuntu下编译ffmpeg(2)

Ubuntu 14.04下成功安装ffmpeg编译配置opencv-2.4.10 最近在Linux下配置交叉编辑环境,安装Qt、ffmpeg编译安装OpenCV各种版本,各种郁闷,终于都搞定了,趁着热乎着,赶紧吐槽一下!     好了,言归正传。 1. 关于交叉编译环境的配置,Qt与qtcreator的安装有很多博客已经详细讲解了,这里就不作为重点了,列出几个链接:  1)交叉编译环境——arm-xilinx-linux-gnueabi-     参考rainysky 阅读详情

背景:

(Ubuntu系统)上次已经编译了ffmpeg,但是我发现我上次编译的ffmpeg在configure的时候没有配置x265 以及 x264这导致我在运行代码的时候没有办法打开h265的编码器(总是返回null),因此要重新配置一次,其实是可以直接在原有的基础上进行更改的,但是当时不清楚的情况下直接删掉了,因此这里直接重新来一遍,同时记录一些在编译过程中遇到的问题与解决方法。

过程:

0.准备工作:

(1)下载并编译x265,地址:https://bitbucket.org/multicoreware/x265/wiki/Home

这个网页有关于编译x265的命令以及解释。

(2)下载ffmpeg的源码:http://ffmpeg.org/download.html#build-linux

(3)删除原有的ffmpeg(这个很重要,一开始由于我没有删除原有的配置,总是失败)

1.配置操作:

我们在下载的ffmpeg目录中打开命令行,然后输入:

./configure --prefix=test --enable-shared --disable-static --disable-doc --enable-gpl  --enable-libx264 --enable-libx265

然后你会发现返回:

ERROR: x265 not found using pkg-config


已经安装了x265但是没有找到,我们查看一下具体错误,打开ffmpeg的编译日志(大概所有编译安装都会有一个这样的文件,它会记录编译信息)

先查找一下在哪里,使用这个命令:

locate config

你会发现有一个文件叫config.log,然后打开它,直接拉到最底下,就能看到具体的错误信息(或许是因为日志是按顺序写的,所以失败的地方应该在文件的最底部)

我们会看到这样一段话:

pkg-config --exists --print-errors x265
Package x265 was not found in the pkg-config search path.
Perhaps you should add the directory containing `x265.pc'
to the PKG_CONFIG_PATH environment variable
No package 'x265' found
ERROR: x265 not found using pkg-config

大概就是说在pkg-config的搜索路径中没有发现x265这个包,它建议把x265.pc所在目录加到PKG_CONFIG_PATH这个路径中。

使用下面的命令添加路径:

export PKG_CONFIG_PATH=/usr/lib/pkgconfig:$PKG_CONFIG_PATH

这个弄完之后再编译一次我们会发现编译成功。

2.测试工作

在命令行输入ffmpeg,发现提示 error while loading shared libraries: xxxxx.so.x: cannot open shared object file: No such file or directory

有两种原因:

(1)你没有下载共享库

(2)下载了共享库,但是系统按照默认共享库路径找不到该共享库文件. 

解决方法:

Case 1 如果共享库在目录/usr/lib 或 /lib 中

这种情况下我们只用执行ldconfig命令,这个命令主要是在默认搜索路径(usr/lib 与 /lib)和 动态库配置文件/etc/ld.so.conf 中的路径搜索出有效的动态库链接。所以只用在命令行中输入ldconfig即可

Case 2 如果在/usr/local/lib中(很多软件的共享库编译默认会安装到这个路径中)

那么我们需要修改动态库配置文件中的内容,也就是在这个文件中加上文件路径/usr/local/lib

具体操作:

sudo vi  /etc/ld.so.conf (这个命令结束后我们会进入ld.so.conf文件中)

/usr/local/lib

:wq (保存并退出)

ldconfig (更新动态库链接)

除了上述方法之外还有设置全局变量的方法

可以参考blog:https://blog.csdn.net/bi_hu_man_wu/article/details/61664220

现在我们重新在命令行中输入ffmpeg,得到如下信息:

ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-27ubuntu1~18.04)
  configuration: --enable-shared --disable-static --disable-doc --enable-gpl --enable-libx264 --enable-libx265
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

 

可以看到我们已经成功安装!

ffmpeg2.6.2Ubuntu下使用NDK编译成.so文件 参考文章:http://www.cnblogs.com/wainiwann/p/3785485.html ------------------------------------------------------------------------- 1、 配置环境: 安装Ubuntu 10.04.4 2、下载ffmpeg-2.6.2.tar.bz2 3、下载android-ndk- 阅读详情

相关推荐

银河飞腾FT6678实战指南:OpenMP多核并行编程优化技巧

本文详细介绍了在银河飞腾FT6678多核处理器上使用OpenMP进行并行编程的实战技巧与优化方法。从基础语法到环境配置,再到性能优化的五大核心技巧,包括循环并行化、并行粒度控制、reduction子句使用等,帮助开发者充分发挥FT6678的8核计算能力。通过实际案例展示如何将图像处理算法从200ms优化到28ms,并深入探讨了任务调度、内存访问优化等进阶主题。

weixin_29234423的博客 265

ERROR: x265 not found using pkg-config

问题 在编译x265之后,编译ffmpeg时–enable-libx265遇到以下错误: ERROR: x265 not found using pkg-config 解决 这里是因为pkg-config没有安装; 安装pkg-config: 下载安装包 在 https://www.freedesktop.org/wiki/Software/pkg-config/ 下载所需版本,这里选择的是0.29.2 wget https://pkg-config.freedesktop.org/releases/pk

BigerBang的博客 6636

新装Win10/Win11后VMware虚拟机连不上网?手把手教你排查‘网络信息不可用’(从服务检查到网段配置)

本文详细介绍了在Windows 10/11系统上安装VMware Workstation后虚拟机无法联网的排查方法。从检查VMware NAT Service、DHCP Service等关键服务状态,到重置虚拟网络编辑器配置,再到内核设备驱动问题解决,手把手教你解决‘网络信息不可用’问题。特别针对VMCI驱动故障提供了实用解决方案,帮助用户快速恢复虚拟机网络连接。

weixin_28736335的博客 709

编译FFmpeg ERROR: x265 not found using pkg-config

编译FFmpeg时 enable x265库时报下面错误,各种尝试之后通过下面两个步骤解决问题 test.c:(.text+0xcc): undefined reference to `cexp' clang90: error: linker command failed with exit code 1 (use -v to see invocation) require_pkg_config libx265 x265 x265.h x265_api_get check_pkg_config libx2.

mengfength的博客 4519

ERROR: x265 not found using pkg-config的解决方法

ffmpeg 在安装ffmpeg4 --enable-libx265出现ERROR: x265 not found using pkg-config的问题 第一步:dkpg -L libx265-dev 第二步:当前终端执行命令添加环境变量export PKG_CONFIG_PATH=/usr/local/x265/lib/pkgconfig(路径是你安装x265的路径,按自己的修改添加即可) 如果是线程函数的问题那就在生成的x265.pc文件中Libs.private这一行添加链接库 -lpthread

qq_27403925的博客 4138

ffmpeg】ERROR: x265 not found using pkg-config

编译ffmpeg --enable-libx265是经常遇见 ERROR: x265 not found using pkg-config,然后x265实际上是已经编译过的,这可能是因为系统没有pkg-config,导致ffmpeg找不到x265,因为安装下即可。如果可以看到 :x265 x265 - H.265/HEVC video encoder, 就说明成功了,就可以继续编译ffmpeg了。

泛在安防边缘智能视频分析 1439

ubuntu 18.04 编译ffmpeg 4.2.1

首先,安装ffmpeg和相关依赖 $ sudo apt install -y ffmpeg libass-dev libx265-dev yasm libfdk-aac-dev \ libmp3lame-dev opus-tools libopus-dev libtheora-dev \ libvorbis-d...

qq_31411551的博客 1139

Ubuntu 14.04 NDK R9 编译ffmpeg2.4

http://blog.csdn.net/devil__lee/article/details/39368671 一、编译环境: Ubuntu 14 麒麟 64位 Android NDK R9D  下载地址 FFMPEG 2.4 下载地址 二、编译ffmpeg 下载ffmpeg后解压至 /home/lee/ffmpeg-2.4

mengzhengjie的专栏 539

ffmpeg4.4.2ubuntu下使用NDK编译

本文主要介绍将FFmpeg音视频编解码库移植到Android平台上的编译过程。

Pandora233的博客 512

Ubuntu16.04编译ffmpeg4.2.2

简述 Ubuntu16.04下安装ffmpeg很简单,只要使用sudo apt-get install ffmpeg即可。会自动安装ffmpeg,但是这个ffmpeg的版本可能比较旧。使用ffmpge -version可以查看当前系统下所使用ffmpeg的版本号,如: ffmpeg version 2.8.15-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6

ZefinNg的博客 1814

ubuntu下使用cmake编译opencv4.8.0+ffmpeg4.2.2+cuda11.1

DBUILD_opencv_world=ON:表示最终只编译得到一个opencv_world.so文件,方便后续链接和移动库,建议编成一个。编译完成后,编译后的文件保存在:/usr/local/ffmpeg目录下,并将bin和lib目录添加到对应的文件中。编译时间较长,等待编译完成即可在/cytech_ai/env/opencv480gpu文件夹下找到编译后的库。-DCMAKE_INSTALL_PREFIX:表示编译后make install的位置。其他的一些cuda,cudnn和加速的算子都打开就行。

四平的博客 1699

ffmpeg学习(2)——Ubuntu编译ffmpeg

一:下载ffmpeg源码 源码下载网址:http://www.ffmpeg.org/download.html  ,然后解压到自己指定目录 二:配置,生成Makefile ./configure  --enable-shared  --disable-yasm --prefix=/usr/local/ffmpeg. 注:--enable-shared 是允许其编译产生动态库,

Ammon_Zhang的博客 734

C++ 2.FFmpeg-4.3.2 编译 Android 动态库 (ubuntu 18.04 , r21b)

C++ 2.FFmpeg-4.3.2 编译 Android 动态库 (ubuntu 18.04 , r21b) 编译环境 Linux 系统: ubuntu18.04 NDK ndk/android-ndk-r21b FFmpeg ffmpeg-4.3.2 ffmpeg 下载后的文件名 ffmpeg_4.3.2.orig.tar.xz 解压方式 tar xvJf ffmpeg_4.3.2.orig.tar.xz 在 root 权限下操作 编译 4.3.2 版本不需要修改 config

他晓 1万+

Ubuntu14编译ffmpeg2.6.2为Android使用库

Ubuntu14编译ffmpeg2.6.2为Android使用库

u011412594的专栏 308

ubuntu11.04 编译ffmpeg2.7 并生成 ffplay进行流媒体测试

通过编译ffmpeg生成ffplay进行流媒体测试

挑灯看剑的专栏 1354

ffmpeg编译笔记: ubuntu14.04交叉编译并裁剪ffmpeg3.2版本,支持h264,h265解码,pcm音频,dxva2硬解码等

通常情况下,有两种方式可以编译生成windows平台使用的ffmpeg:一种是在Linux平台中安装mingw进行交叉编译;另一种是在windows下安装mingw编译。但是在windows下的编译相对于linux下比较麻烦,原因是windows编译动态库回增加一些非标准C++语言,ffmpeg没有为其做适配。。本篇编译的是32位的库,64位的话注意修改交叉编译器和相关配置。

linyibin_123的博客 2065

nano pi neo2Ubuntu-core自行编译ffmpeg c库使用Ubuntu 16.04

环境Ubuntu 16 .04 nano pi neo 2 工具链gcc-linaro-aarch64.tar.xz 1.ubuntu 16.04 编译x264 x264-snapshot-20120101-2245.tar.bz2 tar xf x264-snapshot-20120101-2245.tar.bz2 cd x264-snapshot-201201

Aexisun的博客 1870

Ubuntu 2x.04 编译FFmpeg 脚本

2. 编译结束后结果放该目录下的install文件夹中。1. 将脚本放在 FFmpeg 元文件根目录。

Tonyfield的专栏 840

基于STM32+微信小程序设计的智能宠物喂养系统-2023升级版.zip

资料包里包含完整的STM32源码,设计文档,原理图,实物图,用到的软件工具,以及使用说明。拿到资料包之后可以轻松copy出一个一模一样的项目出来。你只需要按照设计文档买好硬件,按照文档里写的接线说明接好线,然后编译代码下载进去,项目就完成开发了。基于STM32的宠物投喂器 具备以下功能:食物余量检测:通过传感器检测食物余量,当食物即将耗尽时,投喂器会自动提醒用户加料。水温检测:通过传感器检测水温,当水温过高或过低时,投喂器会自动提醒用户调整水温。定时投喂:通过定时器设置投喂时间,用户可以预设多个时间点进行投喂,避免过度或不足的情况。手动投喂:用户可以手动启动投喂器,进行手动投喂。远程投喂:用户可以通过微信小程序远程控制投喂器,实现远程投喂功能。远程重量监测:用户可以通过微信小程序远程监测宠物的体重,了解宠物的健康状况。项目专栏地址: https://blog.csdn.net/xiaolong1126626497/category_10192120.htmlB站视频首页:https://space.bilibili.com/68130189

上一篇: sprintf函数用法简介
下一篇: python3基本数据类型
Acnext
博客等级 码龄10年 2粉丝 20原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值