视频播放器播放一个互联网上的視频文件需要经过以下几个步骤:解协议,解封装解码视音频,视音频同步如果播放本地文件则不需要解协议,为以下几个步骤:解封装解码视音频,视音频同步
创建播放视频线程,设定一个获取帧图片地自定义信号
//视频流、音频流、字幕流等等... //第二点:根据視频流->查找到视频解码器上下文->视频压缩数据 //第三点:根据解码器上下文->获取解码器ID //第五步:打开解码器 //此函数打印输入或输出的详细信息
循环解码视频流为RGB格式,发送图片帧信息到lable上进行显示
//AVPacket用于存储一帧一帧的压缩数据(H264) //只有指定了AVFrame的像素格式、画面大小才能真正汾配内存 //解码的状态类型(0:表示解码完毕,非0:表示正在解码) //用于转码(缩放)的参数转之前的宽高,转之后的宽高格式等 //准备一个视频潒素数据格式上下文 //参数一:输入帧数据宽 //参数二:输入帧数据高 //参数三:输入帧数据格式 //参数四:输出帧数据宽 //参数五:输出帧数据高 //參数七:视频像素数据格式转换算法类型 //参数八:字节对齐类型(C/C++里面)->提高读取效率 //接收一帧数据->解码一帧
启动线程,绑定线程信号槽函数
刷新界面绘制视频信息