ffmpeg
记录自己学习ffmpeg中的问题和经验
最胖的棒棒
理可顿悟,事需渐行
展开
-
avformat_open_input代码剖析
今天看一下ffmpeg里面avformat_open_input这个函数,我个人认为这个函数算是在ffmpeg中最重要的函数了,因为其实在执行了这个函数之后,基本上所有的文件信息都就出来了。比如这一段流里面有几股流,每一股流都是什么信息基本都可以看到了。尤其当你是从内存里面读取数据的时候,这个函数就更加的重要了。因为这个函数里面有好几重嵌套,所以我在函数上有一些有加了注释,我会重点讲讲重要的函数。PS:当前我使用的ffmpeg的版本是3.4.7,另外我是以从内存读取数据来重点看的,而不是读取...原创 2020-06-27 21:04:52 · 700 阅读 · 0 评论 -
ffmpeg下读取内存数据并解析
ffmpeg里读取文件是最基础的操作,但是在很多行业里面,读取文件的操作实际作用的意义不大。还是读取内存的操作作用大一些。其两个之间主要的差距主要是在avformat_open_input的参书中的AVFormatContext->pb里面只要这个pb用avio_alloc_context初始化过了,就可以从内存里面的读取了。但是因为里面的函数是回调函数,而且读取的次数又很多,所以使用过程中还需要注意。#include <stdio.h>#include <iostream&原创 2020-06-27 16:05:13 · 1179 阅读 · 0 评论 -
解决VS2010下av_register_all程序中断退出的问题
起因是这样的,本来想在我的VS2010上利用ffmpeg写点东西,但是代码才写了一行,编译通过但是运行之后就报如下问题,程序自动退出了。代码和现象如下:#include <stdio.h>#include <iostream>using namespace std; extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/原创 2020-06-21 22:16:54 · 546 阅读 · 0 评论 -
100行代码实现ffmpeg下读取文件帧
话不多说,直接上代码。#include <stdio.h>#include <iostream>using namespace std; extern "C"{#include "libavcodec/avcodec.h"#include "libavformat/avformat.h"#include "libswscale/swscale.h" }; int main(int argc, char* argv[]){ av_regist原创 2020-06-21 22:04:56 · 263 阅读 · 0 评论 -
WINDOWS下使用ffmpeg库报错“无法打开包括文件:“inttypes.h”: No such file or directory”解决办法
IDE:VS2010ffmpeg版本:4.2报错:解决办法:1、进入到报错的记录里面,也就是common.h注释掉这个头文件,然后编译通过。2、在头文件里面增加几个文件_mingw.h、inttypes.h、stdint.h建议使用第二种方法,文件的位置在:链接: https://pan.baidu.com/s/1ArfSb0b_yAvXyGS5qQ2TrA提取码: qwaq好了,今天就到这里吧。...原创 2020-06-19 00:31:39 · 3537 阅读 · 0 评论