[笔记]音视频学习之SDL篇《四》事件驱动的编程

简介: [笔记]音视频学习之SDL篇《四》事件驱动的编程

创建窗口 绘制图片

获得图片宽高

int iW, iH;
  SDL_QueryTexture(image, NULL, NULL, &iW, &iH);
  int x = SCREEN_WIDTH / 2 - iW / 2;
  int y = SCREEN_HEIGHT / 2 - iH / 2;

开始事件循环

创建SDL_Event 然后等待事件

当点击退出/按下键盘/点击鼠标 马上退出图片渲染 退出程序

//Our event union
  SDL_Event e;
  //For tracking if we want to quit
  bool quit = false;
  while (!quit) {
    //Read any events that occured, for now we'll just quit if any event occurs
    while (SDL_PollEvent(&e)) {
      //If user closes the window
      if (e.type == SDL_QUIT) {
        quit = true;
      }
      //If user presses any key
      if (e.type == SDL_KEYDOWN) {
        quit = true;
      }
      //If user clicks the mouse
      if (e.type == SDL_MOUSEBUTTONDOWN) {
        quit = true;
      }
    }
    //Rendering
    SDL_RenderClear(renderer);
    //Draw the image
    renderTexture(image, renderer, x, y);
    //Update the screen
    SDL_RenderPresent(renderer);
  }

总结

SDL_PollEvent和SDL_WaitEvent区别

demo地址

相关文章
|
6月前
|
Web App开发 编解码 安全
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
619 4
|
6月前
|
编解码 监控 C++
C++音视频编程探秘
C++音视频编程探秘
220 1
[笔记]音视频学习之SDL篇《三》使用拓展库
[笔记]音视频学习之SDL篇《三》使用拓展库
[笔记]音视频学习之SDL篇《十四》简单的动画
[笔记]音视频学习之SDL篇《十四》简单的动画
|
21天前
|
C语言 开发者
优化与定制:进阶FFplay开发者的实用技巧
【10月更文挑战第15天】FFplay 是 FFmpeg 项目的一部分,它提供了一个简单的命令行界面来播放多媒体文件。对于那些希望更深入地了解如何优化和定制 FFplay 的开发者而言,本文将介绍如何通过集成外部库来支持更多的媒体格式、调整播放性能参数以及通过修改源代码实现自定义功能。
28 1
|
2月前
|
Android开发 计算机视觉 C++
FFmpeg开发笔记(五十一)适合学习研究的几个音视频开源框架
音视频编程对许多程序员来说是一片充满挑战的领域,但借助如OpenCV、LearnOpenGL、FFmpeg、OBS Studio及VLC media player等强大的开源工具,可以降低入门门槛。这些框架不仅覆盖了计算机视觉、图形渲染,还包括多媒体处理与直播技术,通过多种编程语言如Python、C++的应用,使得音视频开发更为便捷。例如,OpenCV支持跨平台的视觉应用开发,FFmpeg则擅长多媒体文件的处理与转换,而VLC media player则是验证音视频文件质量的有效工具。
86 0
FFmpeg开发笔记(五十一)适合学习研究的几个音视频开源框架
|
5月前
|
存储 编解码 Linux
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
rodert教你学FFmpeg实战这一篇就够了 - 音视频处理入门篇
62 1
|
6月前
|
Web App开发 编解码 vr&ar
使用FFmpeg从音视频处理到流媒体技术的探索和实战应用
使用FFmpeg从音视频处理到流媒体技术的探索和实战应用
280 2
|
6月前
|
编解码 算法 计算机视觉
轻松掌握FFmpeg编程:从架构到实践
轻松掌握FFmpeg编程:从架构到实践
638 1
|
6月前
|
网络协议 Linux 测试技术
音视频学习之rtsp推流学习1(rtspserver开源库example运行及流程梳理)
音视频学习之rtsp推流学习1(rtspserver开源库example运行及流程梳理)
392 0