12 #include "BaseRenderer.h"    13 #include "cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlay.h"    14 #include "cores/VideoPlayer/DVDSubtitles/SubtitlesStyle.h"    15 #include "settings/SubtitlesSettings.h"    16 #include "threads/CriticalSection.h"    17 #include "utils/Observer.h"    24 typedef struct ass_image ASS_Image;
    48     static std::shared_ptr<COverlay> Create(ASS_Image* images, 
float width, 
float height);
    72       POSITION_ABSOLUTE_SCREEN,
    80     float m_source_width{0}; 
    81     float m_source_height{0}; 
    99     void Notify(
const Observable& obs, 
const ObservableMessage msg) 
override;
   101     void AddOverlay(std::shared_ptr<CDVDOverlay> o, 
double pts, 
int index);
   102     virtual void Render(
int idx);
   116     void Release(
int idx);
   117     bool HasOverlay(
int idx);
   119     void SetStereoMode(
const std::string &stereomode);
   127     void SetSubtitleVerticalPosition(
const int value, 
bool save);
   133     void ResetSubtitlePosition();
   142       SElement() : overlay_dvd(NULL) { pts = 0.0; }
   144       std::shared_ptr<CDVDOverlay> overlay_dvd;
   148     std::shared_ptr<COverlay> Convert(
CDVDOverlay& o, 
double pts);
   156     std::shared_ptr<COverlay> ConvertLibass(
   160         const std::shared_ptr<struct KODI::SUBTITLES::STYLE::style>& overlayStyle);
   162     void CreateSubtitlesStyle();
   164     void Release(std::vector<SElement>& list);
   166     void ReleaseUnused();
   173     enum PositonResInfoState
   175       POSRESINFO_UNSET = -1,
   176       POSRESINFO_SAVE_CHANGES = -2,
   179     CCriticalSection m_section;
   180     std::vector<SElement> m_buffers[NUM_BUFFERS];
   181     std::map<unsigned int, std::shared_ptr<COverlay>> m_textureCache;
   182     static unsigned int m_textureid;
   186     std::string m_stereomode;
   188     int m_subtitlePosition{0};
   191     int m_subtitlePosResInfo{POSRESINFO_UNSET};
   192     int m_subtitleVerticalMargin{0};
   193     bool m_saveSubtitlePosition{
false}; 
   194     KODI::SUBTITLES::HorizontalAlign m_subtitleHorizontalAlign{
   195         KODI::SUBTITLES::HorizontalAlign::CENTER};
   196     KODI::SUBTITLES::Align m_subtitleAlign{KODI::SUBTITLES::Align::BOTTOM_OUTSIDE};
   198     std::shared_ptr<struct KODI::SUBTITLES::STYLE::style> m_overlayStyle;
   199     std::atomic<bool> m_isSettingsChanged{
false};
 Definition: DVDOverlayText.h:16
Definition: DVDOverlaySSA.h:16
Definition: OverlayRenderer.h:43
Definition: OverlayRenderer.h:92
Definition: OverlayRenderer.h:33
Definition: DVDOverlayImage.h:18
bool IsSquareResolution(float resRatio)
Given the resolution ratio determines if it is a 4/3 resolution. 
Definition: OverlayRenderer.h:89
Definition: DVDOverlayLibass.h:16
Definition: Observer.h:31
Definition: OverlayRenderer.h:35
Definition: OverlayRenderer.h:140
Definition: DVDOverlaySpu.h:16
Definition: Observer.h:44
Definition: DVDOverlay.h:27