【发布时间】:2013-05-01 10:32:02
【问题描述】:
我下载了最新的ffmpeg源码并成功安装在Ubuntu上 但我未能编译一个简单的演示。(我确实包含了正确的标题)
以下是错误消息,仅举几例:
error: unknown type name 'AVFrame'
error: 'NULL' undeclared (first use in this function)
error: request for member 'streams' in something not a structure or union
error: 'AVMEDIA_TYPE_VIDEO' undeclared (first use in this function)
error: expected expression before ')' token
你能帮我解决这个问题吗?
添加的内容:
例如,这是我的包含
extern "C"{
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavutil/avutil.h>
}
int main(int argc, char *argv[]) {
AVFormatContext *pFormatCtx;
int i, videoStreamIdx;
AVCodecContext *pCodecCtx;
AVCodec *pCodec;
AVFrame *pFrame;
AVFrame *pFrameRGB;
例如 AVFormatContext 在 /usr/include/libavformat/avformat.h 中声明 错误消息框显示未知类型名称 AVFormatContext 但怎么可能呢?
【问题讨论】:
-
需要看一些代码。
-
这里有一些附加信息 ffmpeg 版本 1.1.git 版权所有 (c) 2000-2013 FFmpeg 开发人员于 2013 年 5 月 7 日 14:10:58 使用 gcc 4.7 (Ubuntu/Linaro 4.7.2-2ubuntu1 ) 配置: --enable-gpl --prefix=/usr --enable-libx264 --enable-pthreads 这是实际代码github.com/phamquy/FFmpeg-tu...r/tutorial01.c 这是在Qt 和Qt pro 文件中创建的。引用: QT -= gui TEMPLATE = app SOURCES += \ ../tutorial01.c LIBS += -L/-lavcodec -lavformat -lswscale -lavutil
-
是的,上一个已关闭,标记为“不是真正的问题”。但它让我很烦恼,我需要修复它才能继续项目。谢谢。
-
您说您包含正确的标头,但编译器似乎并不认为您是。也许您可以发布一些无法编译的代码;否则这只是你对编译器的反对。
标签: c++ linux qt compilation ffmpeg