Files
ANSCORE/MediaClient/media/video_render_sdl.h

58 lines
1.7 KiB
C
Raw Permalink Normal View History

2026-03-28 16:54:11 +11:00
/***************************************************************************************
*
* IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
*
* By downloading, copying, installing or using the software you agree to this license.
* If you do not agree to this license, do not download, install,
* copy or use the software.
*
* Copyright (C) 2014-2024, Happytimesoft Corporation, all rights reserved.
*
* Redistribution and use in binary forms, with or without modification, are permitted.
*
* Unless required by applicable law or agreed to in writing, software distributed
* under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
* language governing permissions and limitations under the License.
*
****************************************************************************************/
#ifndef VIDEO_RENDER_SDL_H
#define VIDEO_RENDER_SDL_H
#include "video_render.h"
#include <SDL2/SDL.h>
#include <SDL2/SDL_video.h>
/***************************************************************************************/
class CSDLVideoRender : public CVideoRender
{
public:
CSDLVideoRender();
~CSDLVideoRender();
BOOL init(WId hWnd, int w, int h, int videofmt);
void unInit();
BOOL render(AVFrame * frame, int mode);
void setWindowSize(QSize size);
void setWindowTitle(const char * title);
private:
BOOL reInit(WId hWnd, int w, int h, int videofmt);
BOOL initTexture();
BOOL renderTexture(AVFrame * frame, int mode);
private:
SDL_Window * m_pWindow;
SDL_Renderer * m_pRenderer;
SDL_Texture * m_pTexture;
};
#endif