关于FFmpeg自定义AVCodecContext的参数设置

tobephy 2014-10-24 11:38:08
在使用ffmpeg解码时,常用的流程都是:
avformat_open_input
avformat_find_stream_info
AVFormatContext *fc;
然后通过:fc->streams[videoindex]->codec 获取 AVCodecContext 对象

当然只是解码文件,如果解码实时视频流是,没有文件,需要通过自定义的方法:

AVCodecContext *pCodecCtx = avcodec_alloc_context3(codec);

这样得到的AVCodecContext 对象需要自行设置一些参数,如:
pCodecCtx->codec_id=fc->streams[videoindex]->codec->codec_id;
pCodecCtx->width=1024;//176
pCodecCtx->height=576;
pCodecCtx->pix_fmt=PIX_FMT_YUV420P;

我这段时间研究尝试用自定义的方法,解码播放一些视频文件。。

问题出来了:
使用上面自定义的AVCodecContext 对象,有的文件,比如MP4可以播放,有的比如mkv,flv就不行。。

刚开始研究视频解码,所以也许这个问题很小白,有没有大神指导下,是否参数设置上有遗漏,有什么错误?

本人QQ:446790460 欢迎研究自定义AVCodecContext ,视频加速的朋友一起探讨
...全文
701 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧