• 瑞芯微rk1126 编译mp4v2记录 rk1126移植 ffmpeg


    项目需求需要录像存储为mp4文件 并且要支持H264 H265

    我们之前在海思平台上用的是mp4v2  想着直接拿过来用 

    github上 下载完mp4v2之后 新建一个build文件夹

    然后cd到build文件夹新建一个build.sh内容如下:

    刚开始直接这么写的话:会提示找不到编译器

    ../configure --prefix=/home/QMCY/mp4v2-h265/mp4v2-2.0.0/install --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++

    没办法就只能写绝对路径了:

    1. ../configure --prefix=/home/QMCY/mp4v2-h265/mp4v2-2.0.0/rk1126 \
    2. --host=arm CC=/home/QMCY/rv1126_rv1109_linux_release_20211022/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc CXX=/home/QMCY/rv1126_rv1109_linux_release_20211022/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++

     这些生成了make文件没有报错

    直接make报错了 如下:

    失败了 暂时不知道咋办  

    没办法只能用ffmpeg 

    git clone https://git.ffmpeg.org/ffmpeg.git

    然后新建个脚本build.sh

    内容如下:

    1. ./configure --prefix=./install \
    2. --enable-cross-compile \
    3. --target-os=linux \
    4. --arch=armv7l \
    5. --cross-prefix=arm-linux-gnueabihf-

    如果找不到编译器需要将编译器路径加到path

    export PATH=$PATH:/home/QMCY/rv1126_rv1109_linux_release_20211022/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin

    执行脚本 然后make  正在编译中 写文章的过程中编译完了 没有报错 

    执行 make install  发现已经将库文件 头文件 等安装到install目录了如下:

    打开lib目录发现默认的是静态库

     

     下面需要将头文件 静态库放到工程当中 写个代码测试下 

    已经可以正常工作了

     

     完毕

    上面的编译是没有libx264的配置 

    接下来是带有libx264的配置 

    首先编译下载x264 

    解压之后新建一个build.sh脚本

    内容如下:

    1. ./configure \
    2. --host=arm-linux-gnueabihf \
    3. --prefix=./rk1126 \
    4. --cross-prefix=arm-linux-gnueabihf- \
    5. --enable-static \
    6. --enable-shared \

    make make install  之后就生成了对应的文件

     然后修改 ffmpeg的编译配置脚本如下:

    1. ./configure --prefix=./rk1126 \
    2. --enable-cross-compile \
    3. --target-os=linux \
    4. --arch=armv7l \
    5. --enable-gpl \
    6. --enable-encoder=libx264 \
    7. --enable-libx264 \
    8. --extra-libs=-ldl \
    9. --extra-cflags=-I/home/QMCY/x264-master/rk1126/include \
    10. --extra-ldflags=-L/home/QMCY/x264-master/rk1126/lib \
    11. --cross-prefix=arm-linux-gnueabihf-

    make make install 就可以了  这样编译出来的 是可以 利用ffpmeg进行cpu编码的 

  • 相关阅读:
    浅谈Coroutine使用方法
    Docker Compose
    在线手写汉字
    PyCharm因安装了illuminated Cloud插件导致加载项目失败
    高德地图根据标记点显示合适的地图级别
    Java编程中,使用时间戳机制实现增量更新的示例
    Gaussian and Summary Stats
    在 Python 脚本中设置环境变量
    暂存6暂存6暂存6
    洗衣洗鞋小程序干洗店洗衣店上门取衣门店管理系统开发定制
  • 原文地址:https://blog.csdn.net/baoecit/article/details/126279405