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

led网站源码邓海舟网站建设教程

led网站源码,邓海舟网站建设教程,此博客由wordpress制作,网站排名易下拉用法文章目录 流程图stream openstream close 流程图 stream open 初始化SDL以允许⾳频输出;初始化帧Frame队列初始化包Packet队列初始化时钟Clock初始化音量创建解复用读取线程read_thread创建视频刷新线程video_refresh_thread int FFPlayer::stream_open(const cha…

文章目录

      • 流程图
      • stream open
      • stream close

流程图

请添加图片描述

stream open

  • 初始化SDL以允许⾳频输出;
  • 初始化帧Frame队列
  • 初始化包Packet队列
  • 初始化时钟Clock
  • 初始化音量
  • 创建解复用读取线程read_thread
  • 创建视频刷新线程video_refresh_thread
int FFPlayer::stream_open(const char *file_name)
{if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER)){av_log(NULL, AV_LOG_FATAL, "Could not initialize SDL - %s\n", SDL_GetError());av_log(NULL, AV_LOG_FATAL, "(Did you set the DISPLAY variable?)\n");return -1;}// 初始化Frame帧队列if (frame_queue_init(&pictq, &videoq, VIDEO_PICTURE_QUEUE_SIZE_DEFAULT) < 0)goto fail;if (frame_queue_init(&sampq, &audioq, SAMPLE_QUEUE_SIZE) < 0)goto fail;// 初始化Packet包队列if (packet_queue_init(&videoq) < 0 ||packet_queue_init(&audioq) < 0 )goto fail;// 初始化时钟init_clock(&audclk);// 创建解复用器读数据线程read_threadread_thread_ = new std::thread(&FFPlayer::read_thread, this);// 创建视频刷新线程video_refresh_thread_ = new std::thread(FFPlayer::video_refresh_thread, this);return 0;
fail:stream_close();return -1;
}

调用过程
MainWind::OnPlayOrPause()
IjkMediaPlayer::ijkmp_prepare_async()
FFPlayer::ffp_prepare_async_l()
stream_open()

stream close

  • 请求关闭read_thread线程
  • 关闭解复用器
  • 关闭stream,⽐如调⽤stream_component_close:关闭解码线程,释放解码器资源,关闭对应的⾳频、视频设备,包队列,帧队列,释放其他资源
void FFPlayer::stream_close()
{abort_request = 1; // 请求退出if(read_thread_ && read_thread_->joinable()) {read_thread_->join();       // 等待线程退出}/* close each stream */if (audio_stream >= 0)stream_component_close(audio_stream);  // 解码器线程请求abort的时候有调用 packet_queue_abortif (video_stream >= 0)stream_component_close(video_stream);// 关闭解复用器 avformat_close_input(&is->ic);// 释放packet队列packet_queue_destroy(&videoq);packet_queue_destroy(&audioq);// 释放frame队列frame_queue_destory(&pictq);frame_queue_destory(&sampq);if(input_filename_) {free(input_filename_);input_filename_ = NULL;}
}

调用过程
MainWind::OnStop()
IjkMediaPlayer::ijkmp_destroy()
FFPlayer::ffp_destroy()
stream_close();

http://www.yayakq.cn/news/123004/

相关文章:

  • 专业网站建设哪家便宜石家庄百度seo排名
  • 贵州省交通建设集团网站微信上的微网站在哪里
  • 网站运营与管理的内容包括专业定制软件
  • 网站功能报价网站设计形式
  • 快速网站排名汉狮公司移动端网站开发教程
  • 众筹网站开发分析报告企业登记代理
  • 徐州微信网站建设深圳牌申请网站空间
  • 男女做爰网站19免费官方网站创建
  • 网站国外建设长沙建筑模板厂家
  • 外贸网站发外链如何管理建好的网站
  • 西安专业网站制作比较好设计网站
  • 郑州中森网站建设网站建设什么语言比较好
  • 网站引导页怎么设置做网站_接活
  • 建设一个网站做网站管理系统
  • 中企动力网站建设 医疗凡科做的网站推效果
  • 宣武网站建设网络营销站点推广的方法
  • 域名和空间网站wordpress图片投票插件
  • 网站开发与技术分析制作网页的12个步骤
  • 邮箱类网站模板星子网新闻事件
  • 网站建设华网天下制作作建设的网站
  • 便宜做网站8818网站域名更改了怎么换
  • 个人做discuz网站备案公众号怎么做起来
  • 做足彩推荐赚钱的网站wordpress 如何生成 htlm
  • 哪些网站可以做淘宝店招东莞凤岗镇
  • 响应式网站后台互联网营销专业
  • 企业网站建设人员分析校史馆展馆展厅设计
  • 本地服务类网站成本wordpress页面改风格
  • 个人网站被黑了中国电信黄页官网
  • 毕设 网站开发学做网站论坛vip共享
  • 网站网页的书签怎么做建站模板与网站案例展示