美文网首页
四、Clion搭建FFmpeg开发环境

四、Clion搭建FFmpeg开发环境

作者: Mirs | 来源:发表于2019-04-17 11:06 被阅读0次

    [TOC]

    开始前的BB

    终于要开始写东西了呢


    image

    开始之前我们先把环境配置好,为了兼容不同平台的大佬能有相同的体验,所以用Clion做为IDE,话不多说,开搞

    image

    工程的建立

    首先我们用Clion创建一个C++11的工程,然后在根目录下简历以下几个文件夹

    image
    include          //存放引用的头文件
    librarys         //存放所依赖的库文件
    src              //存放代码
    video            //存放测试视频
    

    然后我们去下载的shared库的bin里

    image
    把dylib放入librarys/

    然后去下载解压后的dev包里,将所有的头文件,copy到include里,如果现在一步步照着做的话,那么项目的结构是这样的

    image

    现在 我们来编写Cmake(Cmake的语法抽空写个博客来讲,这里暂时就不讲了,不懂的同学告诉你个好消息,本专栏已经和百度达成了合作☺️)

    cmake_minimum_required(VERSION 3.13)
    project(LearnFFmpeg)
    
    set(CMAKE_CXX_STANDARD 11)
    
    set(SRC_DIR ./)
    
    include_directories(include/)
    link_directories(librarys/ffmpeg/)
    
    set(SOURCE_FILES
    
            main.cpp
            )
    
    
    add_executable(LearnFFmpeg
    
            ${SOURCE_FILES})
    
    target_link_libraries(
            LearnFFmpeg
    
            avformat.58
            avcodec.58
            avdevice.58
            avfilter.7
            avutil.56
            postproc.55
            swresample.3
            swscale.5
    )
    
    
    

    main.cpp

    //
    // Created by MirsFang on 2019-03-12.
    //
    #include <iostream>
    
    extern "C"{
    #include <libavformat/avformat.h>
    }
    
    using namespace std;
    int main(){
    
        int version =avformat_version();
        cout<<"version:"<<version<<endl;
    
        return 0;
    }
    

    点击运行

    image

    如果看见

    image

    表明环境已经搭建成功

    可能会遇见的错误

    image

    这个说明你的动态库没有找到,一般来讲去看Cmake里面的link_directories是否设置正确,本文的是link_directories(librarys/),对应根目录librarys/

    • symbol(s) not found for architecture x86_64
    image

    这个错误,大概率是直接这样include

    image

    这个问题是缺少了extern "C" ,他的作用的主要作用就是为了能够正确实现C++代码调用其他C语言代码(主要原因是因为C++支持函数重载,而C语言并不支持函数重载)所以把 extern "C" 加上

    image

    下一步我们就开始简单的写一点实用的东西

    未完持续。。。

    相关文章

      网友评论

          本文标题:四、Clion搭建FFmpeg开发环境

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