在使用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 );
}
没人回答!
不过我已经搞定了!
修改源码中的代码!
SDL_OnWindowResized中的SDL_WINDOWEVENT_SIZE_CHANGED更改为SDL_WINDOWEVENT_RESIZED。
希望对以后用的人有用吧
特地登录回复,解决了我改变窗口导致视频无法显示的问题,谢谢!很急很关键!
有个问题,在SDL_OnWindowResized中的SDL_WINDOWEVENT_SIZE_CHANGED更改为SDL_WINDOWEVENT_RESIZED是可以解决卡住的问题,但是同时也牺牲了分辨率,在视频缩放的时候会一直是一开始打开的视频大小的分辨率,不能改变,这怎么解决
感谢分享,成功解决问题
SDL_Init一遍,将更改后的句柄初始化就行