• FFmpeg源码编译


    依赖环境安装

    要安装的依赖的说明

    增加数据源

    编译X264

    用于h264 AVC视频格式编码

    CC=cl ./configure --enable-shared  #指定使用cl,编译成动态链接库
    make -j32  #使用32线程进行编码
    make install
    
    • 1
    • 2
    • 3
    1. 命令一

    关于第一条命令执行之后出现的错误:(我的F盘是exFAT文件格式的移动硬盘,所以会报错)
    在这里插入图片描述

    在这里插入图片描述

    2.命令三
    在这里插入图片描述

    在这里插入图片描述

    安装完成后,下面的目录里有了内容:

    在这里插入图片描述

    对于其中描述 x264 库的编译和链接信息见.pc文件

    在这里插入图片描述
    在这里插入图片描述

    编译 fdk-aac

    由于提供了 .vc的makefile文件,直接make就好了。

    nmake -f Makefile.vc # 编译过程
    nmake -f Makefile.vc prefix=.\install install # 安装过程
    
    • 1
    • 2

    1.关于命令一、二
    在VS 命令行窗口中输入:
    在这里插入图片描述
    命令描述
    在这里插入图片描述

    文件处理

    将生成的文件
    在这里插入图片描述
    都复制到
    在这里插入图片描述
    之后,fdk-aac的文件与x264的文件都放在了一起
    在这里插入图片描述
    但是,pkgconfig里没有fdk-aac的配置文件,需要手动添加
    在这里插入图片描述
    找到
    在这里插入图片描述
    复制到此,并重命名为fdk-aac.pc
    在这里插入图片描述

    进入fdk-aac.pc文件改写为:

    prefix=/usr/local
    exec_prefix=${prefix}
    libdir=${exec_prefix}/lib
    includedir=${prefix}/include
    
    Name: Fraunhofer FDK AAC Codec Library
    Description: AAC codec library
    Version: 
    Libs: -L${libdir} -lfdk-aac
    Libs.private: 
    Cflags: -I${includedir}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    编译x265

    将解压出的x265文件放在下面的目录下:在这里插入图片描述

    make-Makefiles.sh
    nmake install 
    
    • 1
    • 2

    首先查看,/usr/bin下含有cmake的文件,发现有两个 cmake.exe与ccmake.exe
    这里对cmake.exe重命名 `mv cmake.exe myrename.exe
    在这里插入图片描述
    然后进行编译 make-Makefiles.sh

    编译成功
    在这里插入图片描述
    然后,切换管理员模式执行nmake install以便文件有写入权限。
    具体地:首先以管理员模式打开命令行窗口
    在这里插入图片描述
    接着:正常输入命令msys2_shell.cmd -mingw32即可进入管理员模式的msys2
    在这里插入图片描述
    可以看到用户标志变成了 #
    在这里插入图片描述
    然后,转到下载好文件的路径,
    在这里插入图片描述

    将文件拷贝复制到

    在这里插入图片描述
    接着,找到
    在这里插入图片描述
    将其头文件稍加修改:具体地将第一行,路径改一下,以防msys2不认识C盘的路径

    prefix=/usr/local
    
    • 1

    编译FFmpeg

    CC=cl.exe ./configure --prefix=./install --toolchain=msvc --enable-shared --disable-programs --disable-ffplay --disable-ffmpeg --disable-ffprobe --enable-libx264 --enable-gpl --enable-libfdk-aac --enable-nonfree --enable-libx265
    make -j16
    make install
    
    • 1
    • 2
    • 3

    切到ffmpeg-4.3路径下,执行命令,报错:
    在这里插入图片描述
    在这里插入图片描述

    考虑,将 pkgconfig剪切
    在这里插入图片描述
    粘贴到
    在这里插入图片描述
    再重新编译:
    继续报错
    在这里插入图片描述
    去到 x264的配置文件中查看lib文件在哪里
    在这里插入图片描述
    发现 libx264.lib 文件不存在,需要将 libx264.dll.lib重命名为lbx264.lib
    在这里插入图片描述
    再次重新编译,继续报错:
    在这里插入图片描述
    在这里插入图片描述
    然后,依然先查看 x265.lib的位置:

    将 libx265.lib重命名为 x265.lib
    在这里插入图片描述
    在这里插入图片描述
    最后生成成功
    在这里插入图片描述
    接着进行编译
    在这里插入图片描述
    然后进行安装
    在这里插入图片描述
    最后FFmpeg源码就编译完成了,此时有下面的文件 后面会将 .lib文件和 .dll文件进行分开
    在这里插入图片描述

  • 相关阅读:
    极智开发 | 讲讲 DOM 树
    golang之context实用记录
    关键基础设施成为黑客攻击的重点目标
    JavaScript -- 数组常用方法及示例代码总结
    2023数字科技生态展,移远通信解锁新成就
    《docker基础篇:Docker常规安装简介》包括docker常规安装总体步骤、安装tomcat、安装mysql、安装redis、安装nginx
    【C++】map容器
    设计LRU/LFU缓存结构
    Android SurfaceControlViewHost介绍及使用
    策略模式在社会中的应用
  • 原文地址:https://blog.csdn.net/qq_45285738/article/details/137928562