严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C4996 ‘AVStream::codec‘: 被声明为已否决
虽然足够的简单,但是还是报了”被声明为已否决”的error
在网上搜索到了解决方案:将VS的SDL检查关闭
AVStream的codec成员不再推荐使用,而是要求使用codecpar。
从而我们知道FFmpeg中所谓的“被声明为已否决”就是因为函数或者结构体属性被标示为attribute_deprecated,很有可能在未来的版本中就删除了。
所以我们最好的解决方案就是使用新的被推荐使用的函数、结构体等。
在后续中因为要解决avformat_find_stream_info探测流慢的问题,会针对codecpar进行相应的赋值
之前的版本
pCodecCtx = pFormatCtx->streams[videoIndex]->codec;
之后的版本
pCodecCtx = avcodec_alloc_context3(NULL);
if (pCodecCtx == NULL)
{
printf("Could not allocate AVCodecContext\n");
return -1;
}
avcodec_parameters_to_context(pCodecCtx, pFormatCtx->streams[videoIndex]->codecpar);
参考
http://blog.csdn.net/x_iya/article/details/52395990
时间: 2024-11-05 23:27:00