我的第一个ffmpeg程序(编译及调用ffmpeg函数)


(1)ffmpeg的编译和安装

http://blog.csdn.net/zhouzhenhe2008/article/details/48531355


(2)安装完成后,ffmpeg静态库将会出现在/usr/local/lib/

,即 

 libavcodec.a  

 libavdevice 

 libavfilter.a 

 libavformat.a  

libavutil.a  

 libswresample.a   

libswscale。




(3)安装后可以引用的头文件的位置 /usr/local/include/



(4)测试程序,保存为myfirst_ffmpeg.c,

编译命令:gcc -o a.out myfirst_ffmpeg.c -I /usr/local/include -L /usr/local/lib -lavutil -lavformat -lavcodec -lavutil -lswresample -lm -lrt -lpthread -lz



#include "libavformat/avformat.h"
#include "libavcodec/avcodec.h"
#include "libavutil/avutil.h"
#include "stdio.h"
int main(int argc, char* argv[])
{
        printf("going to av_register_all\n");
        av_register_all();
        return 0;
}




(5)可能遇到的问题。


  a.

timeval.c:(.text+0x6f): undefined reference to `clock_gettime'

解决:

则你只需要在你的编译命令加上    -lrt   编译即可

b.

/share/FFmpeg-master/libavcodec/opusdec.c:379: undefined reference to `swr_is_initialized'

/usr/local/lib/libavcodec.a(opusdec.o): In function `opus_decode_frame':

/share/FFmpeg-master/libavcodec/opusdec.c:220: undefined reference to `swr_is_initialized

 解决:

编译加上-lswresample


c.忘记为什么要执行下面这条了

cp /usr/local/lib/pkgconfig/*  /usr/share/pkgconfig/



  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值