xinchao07 2014-11-24 10:47 采纳率: 100%
浏览 6959
已采纳

SDL2 更改窗口大小,视频卡主

在使用SDL2.0时,使用了SDL API函数SDL_SetWindowSize函数后,视频播放就会卡主,若是使用SDL_SetWindowPosition只是移动位置是不会有问题的?
ShowData(const unsigned char *pY,const unsigned char *pU,const unsigned char *pV,int width)
{
if( pTexture == NULL || pRender == NULL )
return;

SDL_UpdateYUVTexture(pTexture,&sdlRT,pY,width,pU,width/2,
    pV,width/2);

SDL_RenderClear( pRender );
SDL_RenderCopy( pRender, pTexture, &sdlRT, &dstRT );
SDL_RenderPresent( pRender );

}

  • 写回答

5条回答 默认 最新

  • xinchao07 2014-12-08 08:31
    关注

    没人回答!
    不过我已经搞定了!
    修改源码中的代码!
    SDL_OnWindowResized中的SDL_WINDOWEVENT_SIZE_CHANGED更改为SDL_WINDOWEVENT_RESIZED。
    希望对以后用的人有用吧

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • Tsuigod 2016-08-31 10:38
    关注

    特地登录回复,解决了我改变窗口导致视频无法显示的问题,谢谢!很急很关键!

    评论
  • 雨液孤星 2017-06-20 14:06
    关注

    有个问题,在SDL_OnWindowResized中的SDL_WINDOWEVENT_SIZE_CHANGED更改为SDL_WINDOWEVENT_RESIZED是可以解决卡住的问题,但是同时也牺牲了分辨率,在视频缩放的时候会一直是一开始打开的视频大小的分辨率,不能改变,这怎么解决

    评论
  • 小丑 2020-04-20 18:11
    关注

    感谢分享,成功解决问题

    评论
  • weixin_38021664 2021-07-22 14:36
    关注

    SDL_Init一遍,将更改后的句柄初始化就行

    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 有人会思科模拟器嘛?
  • ¥30 遇到一个的问题,请教各位
  • ¥20 matlab报错,vflux计算潜流通量
  • ¥15 我该如何实现鼠标按下GUI按钮时就执行按钮里面的操作的方法
  • ¥15 关于#硬件工程#的问题:我这边有个锁相环电路没有效果
  • ¥15 20款 27寸imac苹果一体机装win10后,蓝牙耳机和音响放歌曲卡顿断断续续.
  • ¥15 VB.NET 父窗体调取子窗体报错
  • ¥15 python海龟作图如何改代码使其最后画出来的是一个镜像翻转的图形
  • ¥15 我不明白为什么c#微软的官方api浏览器为什么不支持函数说明的检索,有支持检索函数说明的工具吗?
  • ¥15 在我想检测ros是否成功安装时输入roscore出现以下