代码拉取完成,页面将自动刷新
同步操作将从 matthewgao/gsplayer 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include "sdlbase.h"
#include <stdio.h>
#include "decoder.h"
void SDLBase::ListenEvent(MediaDecoder *decoder){
SDL_Event e;
while( !this->m_should_exit )
{
if (SDL_PollEvent( &e ) == 0){
// this_thread::sleep_for(chrono::milliseconds(200));
}
decoder->ShowFrame();
//User requests quit
if( e.type == SDL_QUIT )
{
this->m_should_exit = true;
}
if (e.window.event == SDL_WINDOWEVENT_RESIZED){
int new_width = e.window.data1;
int new_height = e.window.data2;
float aspectRatio = (float)new_width/(float)new_height;
float ASPECT_RATIO = (float)this->width/(float)this->height;
if(aspectRatio != ASPECT_RATIO) {
// if(aspectRatio > ASPECT_RATIO) {
new_height = (1.f / ASPECT_RATIO) * new_width;
// }
// else {
// new_width = ASPECT_RATIO * new_height;
// }
this->width = new_width;
this->height = new_height;
printf("Setting window size to %d, %d, aspect ratio: %f\n",
new_width, new_height, (float)new_width/(float)new_height);
}
}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。