美文网首页iOS之道
(一)FFmpeg基础配置

(一)FFmpeg基础配置

作者: 没戏还在演戏 | 来源:发表于2019-12-06 15:08 被阅读0次

    FFmpeg

    第一步 下载

    FFmpeg下载地址

    第二步 查看FFmpeg音视频编译配置选项

    1.进入根目录
    cd /Users/wanyunhao/Desktop/liumeiti/1/ffmpeg-4.2.1 (ffmpeg解压后的文件夹,此处只是示例)

    2.查看命令
    ./configure --help

    终端.png
    3.重要的命令
    Help options: FFmepg帮助选项(帮助文档)
                Standard options: 标准选项
                Licensing options:许可选项(侵权)
                    --enable-gpl 允许使用GPL代码,由此生成你的库或者二进制文件   
                        GPL(许可证):开源、免费、公用、修改、扩展
                Configuration options:配置备选选项
                External library support:外部库支持->重点
                Toolchain options:工具链选项(指定我么需要编译平台CPU架构类型,例如:arm64、x86等等…)
                Advanced options:高级选项
                Optimization options (experts only):优化选项
                Developer options:开发者选项
    

    4.配置脚本

    • 下载脚本
      链接: https://pan.baidu.com/s/1wBW2eSQJZLcTcyJm8a_qoQ 提取码: nppx
      将2个文件放在同一目录下

    • 修改脚本
      ffmpeg-build.sh文件下的
      source="ffmpeg-4.2.1" 根据自己下载的版本进行修改

    • 运行脚本

    1. cd 脚本所在文件夹

    2. 开启权限
      chmod +x ./ffmpeg-build.sh

    3. 运行脚本
      ./ffmpeg-build.sh arm64

    4. 报错以及解决方案

      • 错误1
        xcrun -sdk iphoneos clang is unable to create an executable file. C compiler test failed.

        报错1.png
      • 解决1:
        sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/

      • 错误2
        GNU assembler not found, install/update gas-preprocessor

        报错2.png
      • 解决2
        chmod +x gas-preprocessor.pl

      • 错误3
        src/libavutil/arm/asm.S:50:9: src/libavutil/arm/asm.S:50:9: error: error: unknown directive .arch armv7-a unknown directive ^ .arch armv7-a ^ make: *** [libavcodec/arm/ac3dsp_arm.o] Error 1 make: *** Waiting for unfinished jobs.... make: *** [libavcodec/arm/aacpsdsp_neon.o] Error 1

    报错3.png
    • 解决3
      ffmpeg-build.sh文件下 34行移除armv7(支持最低的是iphone5s)
    1. 完成
      漫长的等待····
    完成.png 编译好的库.png

    相关文章

      网友评论

        本文标题:(一)FFmpeg基础配置

        本文链接:https://www.haomeiwen.com/subject/xiqdgctx.html