官方教程:
只是记录一些东西。
首先是要安装好ffmpeg库,然后是安装SDL。
从官方下来的源代码由于是针对旧版本写的,新版本的有替换了原来的接口,编译的时候会提示img_convert未定义的错误。由于新版本使用了swscale,因此我们可以用它去替换。
解决方法是,
- img_convert_ctx = sws_getContext(pCodecCtx->width, pCodecCtx->height,
-
pCodecCtx->pix_fmt, pCodecCtx->width, pCodecCtx->height,
-
PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL);
-
// Convert the image from its native format to RGB
-
//img_convert((AVPicture *)pFrameRGB, PIX_FMT_RGB24,
-
// (AVPicture*)pFrame, pCodecCtx->pix_fmt, pCodecCtx->width,
-
// pCodecCtx->height);
-
sws_scale(img_convert_ctx, (const uint8_t* const*)pFrame->data, pFrame->linesize,
-
0, pCodecCtx->height, pFrameRGB->data, pFrameRGB->linesize);
详细请看附件。
编译命令:gcc -o tutorial01 tutorial01.c -lavutil -lavformat -lavcodec -lz -lswscale
阅读(1744) | 评论(0) | 转发(0) |