Hello. I am writing a module for playing video in the window. OS: ubuntu 18.04, SDL2. On the move
this->renderer = SDL_CreateRenderer(this->window, -1, SDL_RENDERER_ACCELERATED);
my program crashes.
int Video_Picture::video_open(QWidget* widget)
{
int height = widget->size().height();
int width = widget->size().width();
this->set_picture_height(widget->geometry().height());
this->set_picture_width(widget->geometry().width());
if (!this->window) {
this->window = SDL_CreateWindowFrom((void*)widget->winId());
SDL_SetWindowResizable(this->window, SDL_TRUE);
SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "linear");
if (this->window) {
SDL_RendererInfo info;
this->renderer = SDL_CreateRenderer(this->window, -1, SDL_RENDERER_ACCELERATED);
if (this->renderer) {
if (!SDL_GetRendererInfo(this->renderer, &info))
av_log(nullptr, AV_LOG_VERBOSE, "Initialized %s renderer.\n", info.name);
}
}
} else {
SDL_SetWindowSize(this->window, width, height);
}
if (!this->window || !this->renderer) {
av_log(nullptr, AV_LOG_FATAL, "SDL: could not set video mode - exiting\n");
return -1;
}
return 0;
}