11 #include "DebugInfo.h" 12 #include "RenderCapture.h" 13 #include "RenderInfo.h" 14 #include "VideoShaders/ShaderFormats.h" 15 #include "cores/IPlayer.h" 16 #include "cores/VideoPlayer/Buffers/VideoBuffer.h" 17 #include "utils/Geometry.h" 38 RENDER_METHOD_AUTO = 0,
40 RENDER_METHOD_SOFTWARE,
55 virtual bool Configure(
const VideoPicture &picture,
float fps,
unsigned int orientation) = 0;
56 virtual bool IsConfigured() = 0;
57 virtual void AddVideoPicture(
const VideoPicture &picture,
int index) = 0;
58 virtual bool IsPictureHW(
const VideoPicture& picture) {
return false; }
59 virtual void UnInit() = 0;
60 virtual bool Flush(
bool saveBuffers) {
return false; }
61 virtual void SetBufferSize(
int numBuffers) { }
62 virtual void ReleaseBuffer(
int idx) { }
63 virtual bool NeedBuffer(
int idx) {
return false; }
64 virtual bool IsGuiLayer() {
return true; }
67 virtual void Update() = 0;
68 virtual void RenderUpdate(
int index,
int index2,
bool clear,
unsigned int flags,
unsigned int alpha) = 0;
69 virtual bool RenderCapture(
int index,
CRenderCapture* capture) = 0;
70 virtual bool ConfigChanged(
const VideoPicture &picture) = 0;
73 virtual bool SupportsMultiPassRendering() = 0;
74 virtual bool Supports(ERENDERFEATURE feature)
const {
return false; }
75 virtual bool Supports(ESCALINGMETHOD method)
const = 0;
77 virtual bool WantsDoublePass() {
return false; }
79 void SetViewMode(
int viewMode);
87 float GetAspectRatio()
const;
88 unsigned int GetOrientation()
const {
return m_renderOrientation; }
90 static void SettingOptionsRenderMethodsFiller(
const std::shared_ptr<const CSetting>& setting,
91 std::vector<IntegerSettingOption>& list,
103 void CalcDestRect(
float offsetX,
107 float inputFrameRatio,
111 void CalcNormalRenderRect(
float offsetX,
float offsetY,
float width,
float height,
112 float inputFrameRatio,
float zoomAmount,
float verticalShift);
113 void CalculateFrameAspectRatio(
unsigned int desired_width,
unsigned int desired_height);
114 virtual void ManageRenderArea();
115 virtual void ReorderDrawPoints();
116 virtual EShaderFormat GetShaderFormat();
118 void EnableAlwaysClip();
121 void saveRotatedCoords();
122 void syncDestRectToRotatedPoints();
123 void restoreRotatedCoords();
125 unsigned int m_sourceWidth = 720;
126 unsigned int m_sourceHeight = 480;
127 float m_sourceFrameRatio = 1.0f;
130 unsigned int m_renderOrientation = 0;
134 CPoint m_rotatedDestCoords[4];
135 CPoint m_savedRotatedDestCoords[4];
142 unsigned m_iFlags = 0;
143 AVPixelFormat m_format = AV_PIX_FMT_NONE;
148 bool m_alwaysClip =
false;
Definition: RenderCapture.h:23
Definition: RenderInfo.h:19
Setting base class containing all the properties which are common to all settings independent of the ...
Definition: Setting.h:46
Definition: SettingDefinitions.h:66
void GetVideoRect(CRect &source, CRect &dest, CRect &view) const
Get video rectangle and view window.
Definition: BaseRenderer.cpp:46
Definition: settings.py:1
Definition: DebugInfo.h:21
Definition: DVDVideoCodec.h:36
Definition: BaseRenderer.h:48
Definition: VideoSettings.h:194