[videodb] remove unused seasons table from episode_view
[xbmc.git] / xbmc / cores / VideoPlayer / VideoPlayerSubtitle.h
blob23baecc64cd8a3e0c1d1a3808f6ef7a06e12324f
1 /*
2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
9 #pragma once
11 #include "DVDDemuxSPU.h"
12 #include "DVDMessageQueue.h"
13 #include "DVDOverlayContainer.h"
14 #include "DVDStreamInfo.h"
15 #include "DVDSubtitles/DVDFactorySubtitle.h"
16 #include "IVideoPlayer.h"
18 class CDVDInputStream;
19 class CDVDSubtitleStream;
20 class CDVDSubtitleParser;
21 class CDVDInputStreamNavigator;
22 class CDVDOverlayCodec;
24 class CVideoPlayerSubtitle : public IDVDStreamPlayer
26 public:
27 CVideoPlayerSubtitle(CDVDOverlayContainer* pOverlayContainer, CProcessInfo &processInfo);
28 ~CVideoPlayerSubtitle() override;
30 void Process(double pts, double offset);
31 void Flush();
32 void FindSubtitles(const char* strFilename);
33 int GetSubtitleCount();
35 void UpdateOverlayInfo(const std::shared_ptr<CDVDInputStreamNavigator>& pStream, int iAction)
37 m_pOverlayContainer->UpdateOverlayInfo(pStream, &m_dvdspus, iAction);
40 bool AcceptsData() const override;
41 void SendMessage(std::shared_ptr<CDVDMsg> pMsg, int priority = 0) override;
42 void FlushMessages() override {}
43 bool OpenStream(CDVDStreamInfo hints) override { return OpenStream(hints, hints.filename); }
44 bool OpenStream(CDVDStreamInfo &hints, std::string& filename);
45 void CloseStream(bool bWaitForBuffers) override;
47 bool IsInited() const override { return true; }
48 bool IsStalled() const override { return m_pOverlayContainer->GetSize() == 0; }
49 private:
50 CDVDOverlayContainer* m_pOverlayContainer;
52 std::unique_ptr<CDVDSubtitleParser> m_pSubtitleFileParser;
53 std::unique_ptr<CDVDOverlayCodec> m_pOverlayCodec;
54 CDVDDemuxSPU m_dvdspus;
56 CDVDStreamInfo m_streaminfo;
57 double m_lastPts;
60 CCriticalSection m_section;
64 //typedef struct SubtitleInfo
65 //{
68 //} SubtitleInfo;