FFmpeg视频编解码库,无法解析的外部信号

Posted xianjian_x

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FFmpeg视频编解码库,无法解析的外部信号相关的知识,希望对你有一定的参考价值。

在编译FFmpeg相关项目时,可能会出现:

error LNK2019: 无法解析的外部符号 "int __cdecl avpicture_fill(struct AVPicture *,unsigned char const *,enum AVPixelFormat,int,int)" (?avpicture_fill@@YAHPAUAVPicture@@PBEW4AVPixelFormat@@HH@Z),该符号在函数 "bool __cdecl YV12ToBGR24_FFmpeg(unsigned char *,unsigned char *,int,int)" (?YV12ToBGR24_FFmpeg@@YA_NPAE0HH@Z) 中被引用

error LNK2019: 无法解析的外部符号 "void __cdecl sws_freeContext(struct SwsContext *)" (?sws_freeContext@@YAXPAUSwsContext@@@Z),该符号在函数 "bool __cdecl YV12ToBGR24_FFmpeg(unsigned char *,unsigned char *,int,int)" (?YV12ToBGR24_FFmpeg@@YA_NPAE0HH@Z) 中被引用

  这种类似情况,在检查 包含目录、库目录、链接器输入和系统环境变量 均设置无误的情况下,包含的文件要写成以下形式:

extern "C"

    #include <libavcodec\\avcodec.h>
    #include <libavformat\\avformat.h>
    #include <libswscale\\swscale.h>
    #include <libavutil\\pixfmt.h>
    #include <libavutil\\imgutils.h>
;

  这种情况是因为,头文件中的函数定义在编译为 C 程序的文件中,而头文件是在 C++ 文件中不带 extern “C” 修饰符声明的。在此情况下,需要添加extern “C”修饰符。

参考:
问题解决:FFmpeg视频编解码库,无法解析的外部信号

以上是关于FFmpeg视频编解码库,无法解析的外部信号的主要内容,如果未能解决你的问题,请参考以下文章

FFmpeg视频编解码库,无法解析的外部符号找不到inttypes.h文件的问题

FFmpeg工具

无法使用 ffmpeg 更改视频字幕编解码器

ffmpeg

2023-02-18:ffmpeg是c编写的音视频编解码库,请问用go语言如何调用?例子是03输出版本号。

FFmpeg库视频解码初探(软硬件解码)