学生网站建设的基本流程,设计师兼职平台,农业企业网站建设,深圳团购网站建设ffmpeg开发简图 1 下载ffmpeg开发包
https://ffmpeg.org/download.html
包含三个版本#xff1a;Static、Shared以及Dev
Static --- 包含3个应用程序#xff1a;ffmpeg.exe , ffplay.exe , ffprobe.exe#xff0c;体积都很大#xff0c;相关的DLL已经被编译到exe里面去…ffmpeg开发简图 1 下载ffmpeg开发包
https://ffmpeg.org/download.html
包含三个版本Static、Shared以及Dev
Static --- 包含3个应用程序ffmpeg.exe , ffplay.exe , ffprobe.exe体积都很大相关的DLL已经被编译到exe里面去了。 Shared --- 除了ffmpeg.exe , ffplay.exe , ffprobe.exe之外还有一些DLLexe体积很小在运行时到相应的DLL中调用功能。 Dev --- 开发者developer版本里面包含了库文件xxx.lib以及头文件xxx.h这个版本不含exe文件 2 配置
将dev版本文件夹中的Include和lib目录复制到所需工程项目目录下并在工程属性中设置附加包含目录$(ProjectDir)\include和附加库目录$(ProjectDir)\lib。将share版本文件夹中bin目录下对应的所有dll复制到项目路径下。附加依赖项填入根据所需 avcodec.lib avdevice.lib avfilter.lib avformat.lib avutil.lib postproc.lib swresample.lib swscale.lib 由于ffmpeg是C语言所写include头文件时需使用extern “C”标明。 在doc/examples目录下复制metadata.c源文件到新建的源.cpp文件中这是一个独立的demo作用是打印音视频媒体文件基本信息。比如我们放一首音乐到工程目录下
接着尝试运行该源文件发现报错这是因为我们的C工程直接调用ffmpeg的C函数库导致C函数无法解析此时用到extern “C”进行声明即可下面是声明方式
#ifndef INT64_C
#define INT64_C(c) (c ## LL)
#define UINT64_C(c) (c ## ULL)
#endif
以及
#ifdef __cplusplus
extern C {
#endif /*Include ffmpeg header file*/
#include libavformat/avformat.h
#include libavcodec/avcodec.h
#include libswscale/swscale.h #include libavutil/imgutils.h
#include libavutil/opt.h
#include libavutil/mathematics.h
#include libavutil/samplefmt.h//----代码区---
#ifdef __cplusplus
}
#endif