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

SDL 锁屏视频卡死bug原因

        最近在封装播放库,我用的是FFMPEG+SDL库封装,这个库其实用起来不难,因为网上可供参考的资源也多,所以我自己也封装了一个,但是播放视频时只要我电脑一锁屏再重新打开,我靠视频卡住不动了,我调试看来下渲染也是正常的,最后终于解决了

方法一:网上介绍的,获取windows锁屏信号,然后重新播放,但是这种我感觉不太友好

方法二:渲染和纹理不在同一个线程运行,这个就是我遇到的问题。

最后 

 m_SdlRender = SDL_CreateRenderer(m_SdlWindow, -1, SDL_RendererFlags::SDL_RENDERER_ACCELERATED);

SDL_CreateTexture(m_SdlRender, SDL_PIXELFORMAT_IYUV, SDL_TEXTUREACCESS_STREAMING, 1920, 1080);

SDL_UpdateYUVTexture(m_SdlTexture, NULL, y, y_pitch, u, u_pitch, v, v_pitch);

    SDL_RenderClear(m_SdlRender);

SDL_RenderCopy(m_SdlRender, m_SdlTexture, NULL, prect);

SDL_RenderPresent(m_SdlRender);

这些放在同一个线程就解决啦。。。。浪费我两天时间。。。

后续我回头把封装好的库上传下,有需要的话关注下,谢谢!!!

相关文章:

  • 线程的控制
  • 10 个 C# 关键字和功能
  • 网络编程——基于TCP的自动同步云服务器
  • LVS配置
  • 数据捕手:Python 爬虫在社交媒体的深度探索
  • Eureka高可用性配置:如何实现Eureka集群与故障转移
  • 构建Docker镜像时,遇到从`deb.debian.org`下载软件包速度很慢
  • 【Qt】常用控件QPushButton
  • 1.Linux_常识
  • LLMs之Llama Coder:llama-coder的简介、安装和使用方法、案例应用之详细攻略
  • B站搜索建库架构优化实践
  • 数据分析面试常见50个问题及解答要点
  • Spring Cloud全解析:配置中心之springCloudConfig使用消息总线进行动态刷新
  • 【数据结构-1】二叉树
  • 怎么在网络攻击中屹立不倒
  • Docker详解
  • 贪心算法之重叠区间问题
  • BCLinux8.*构建部署nmap 7.95
  • 网络协议九 应用层 HTTPS
  • Spring Boot常用注解
  • 默茨当选德国总理
  • 上海成五一国内最热门的入境游目的地,国际消费明显提升
  • 俄罗斯期望乌克兰在停火期间采取行动缓和局势
  • 结束北京队与总决赛十年之痒的,为何会是一度被群嘲的许利民
  • 挑大梁!一季度北上广等7省份进出口占外贸总值四分之三
  • 申活观察|咖香涌动北外滩,带来哪些消费新想象?