当前位置: 首页 > news >正文

网站制作费用预算表公众号seo排名

网站制作费用预算表,公众号seo排名,深圳vi设计公司深圳logo设计,西安博网站建设介绍 在本系列,我打算花大篇幅讲解我的 gitee 项目音视频播放器,在这个项目,您可以学到音视频解封装,解码,SDL渲染相关的知识。您对源代码感兴趣的话,请查看基于FFmpeg和SDL的音视频播放器 如果您不理解本…

介绍

在本系列,我打算花大篇幅讲解我的 gitee 项目音视频播放器,在这个项目,您可以学到音视频解封装,解码,SDL渲染相关的知识。您对源代码感兴趣的话,请查看基于FFmpeg和SDL的音视频播放器

如果您不理解本文,可参考我的前一篇文章音视频项目—基于FFmpeg和SDL的音视频播放器解析(十七)

解析

之前解析的 fill_audio_pcm 函数有点复杂,先不继续讲这个了。

我们讲最后一个类 videooutput,可见这是负责视频播放的函数,先看 .h 文件

#ifndef VIDEOOUTPUT_H_
#define VIDEOOUTPUT_H_#ifdef __cplusplus
extern "C"{
#include"libavutil/avutil.h"
#include"SDL.h"
#include"libavutil/time.h"
}
#endif#include"avframequeue.h"
#include"avsync.h"class VideoOutput{
public:VideoOutput(AVSync* avsync, AVRational time_base, AVFrameQueue* frame_queue, int video_width, int video_height);~VideoOutput();int Init();int MainLoop();void RefreshLoopWaitEvent(SDL_Event* event);
private:void videoRefresh(double* remaining_time);AVFrameQueue* frame_queue = nullptr;SDL_Event event;SDL_Rect rect;SDL_Window* win = nullptr;SDL_Renderer* renderer = nullptr;SDL_Texture* texture = nullptr;AVSync* avsync = nullptr;AVRational time_base;int video_width = 0;int video_height = 0;uint8_t* yuv_buf = nullptr;int yuv_buf_size = 0;
};#endif

公有成员,都是构造函数,析构函数,初始化函数,循环函数,等待函数。

私有成员有比较多,我们这篇文章解析一下。

    void videoRefresh(double* remaining_time);        负责刷新的函数

    AVFrameQueue* frame_queue = nullptr;              视频帧数据队列

    SDL_Event event;                                                 SDL 事件

    SDL_Rect rect;                                                      SDL rectangle

    SDL_Window* win = nullptr;                                  SDL 窗口

    SDL_Renderer* renderer = nullptr;                        SDL 渲染器

    SDL_Texture* texture = nullptr;                              SDL 纹理

    AVSync* avsync = nullptr;                                       负责音视频同步的类

    AVRational time_base;                                           用于计算时间戳与帧率

    int video_width = 0;                                                视频窗口的宽度

    int video_height = 0;                                               视频窗口的高度

    uint8_t* yuv_buf = nullptr;                                       存放 yuv 数据的数组

    int yuv_buf_size = 0;                                               存放 yuv 数据的数组长度

好了,这篇文章讲解了 VieoOutput 类的私有成员变量,下一篇文章开始讲解函数。

欲知后事如何,请听下回分解。

http://www.hrbkazy.com/news/40738.html

相关文章:

  • 做羞羞的事的网站企业网络营销案例
  • 淘宝联盟怎么新建网站谷歌自然排名优化
  • 达州做淘宝网站外链吧怎么使用
  • 网站镜像做排名一站式营销推广
  • wordpress系统是什么seo推广策略
  • 南京h5 网站建设google推广及广告优缺点
  • 德州整站优化免费宣传网站
  • 拼多多卖网站建设西安网站seo价格
  • 外贸类网站建设百度app下载最新版本
  • 网站建设jsp网络电商推广方案
  • 5g网站建设受益股云计算培训费用多少钱
  • 一个专门做字画的网站搜索风云排行榜
  • 怎么在百度上做网站推广百度seo优化价格
  • php做图片交互网站代码宁德市人民政府
  • 网站建设售价多少钱百度网络营销app下载
  • 网站建设推荐网seo模拟点击软件
  • 清华紫光是可以做网站的吗宁波seo优化费用
  • 海安做网站站长工具排行榜
  • 电脑培训班海外seo
  • 周口网站推广数据指数
  • 网站 托管sem是什么品牌
  • 高端网名生成器seo接单平台有哪些
  • 图片网站的优化郑州seo顾问热狗
  • 做投注网站多少钱b站推广网站2024下载
  • 确定网站主题陕西省人民政府
  • 一个完整的网站建设过程海口网站关键词优化
  • 找人做的服务器1核2g网站打开速度蛮关键词收录查询工具
  • wordpress切换成中文字体安徽百度关键词优化
  • WordPress 账号打通汕头自动seo
  • 专业推广图片手机seo百度点击软件