summaryrefslogtreecommitdiff
path: root/omxdevice.h
diff options
context:
space:
mode:
Diffstat (limited to 'omxdevice.h')
-rw-r--r--omxdevice.h45
1 files changed, 11 insertions, 34 deletions
diff --git a/omxdevice.h b/omxdevice.h
index 2d734b7..ea3628a 100644
--- a/omxdevice.h
+++ b/omxdevice.h
@@ -20,24 +20,16 @@ public:
enum eState {
eStop,
+ eStarting,
ePlay
};
- enum eClockState {
- eClockStateRunning,
- eClockStateStopped,
- eClockStateWaiting
- };
-
- enum eMode {
- eAudioVideo,
- eAudioOnly,
- eVideoOnly
- };
-
cOmxDevice(void (*onPrimaryDevice)(void));
virtual ~cOmxDevice();
+ virtual int Init(void);
+ virtual int DeInit(void);
+
virtual bool HasDecoder(void) const { return true; };
virtual bool SetPlayMode(ePlayMode PlayMode);
@@ -50,7 +42,7 @@ public:
virtual bool Flush(int TimeoutMs = 0);
-// virtual bool HasIBPTrickSpeed(void);
+ virtual bool HasIBPTrickSpeed(void) { return false; }
virtual void TrickSpeed(int Speed);
virtual void Clear(void);
virtual void Play(void);
@@ -60,12 +52,6 @@ public:
virtual bool Poll(cPoller &Poller, int TimeoutMs = 0);
- virtual void HandlePortSettingsChanged(unsigned int portId);
- virtual void HandleEndOfStream(unsigned int portId);
-
- virtual int OmxInit();
- virtual int OmxDeInit();
-
virtual void GetOsdSize(int &Width, int &Height, double &PixelAspect)
{ cOmxDevice::GetDisplaySize(Width, Height, PixelAspect); }
@@ -79,26 +65,17 @@ private:
void (*m_onPrimaryDevice)(void);
- virtual void Start(eMode mode = eAudioVideo);
- virtual void Stop(void);
-
- virtual void SetClockScale(float scale);
- virtual void SetClockState(eClockState clockState, bool armVideo = true, bool armAudio = true);
- virtual bool IsClockRunning();
-
virtual bool OmxSetVideoCodec(const uchar *data);
virtual bool OmxSetAudioCodec(const uchar *data);
- cOmx *m_omx;
- cAudio *m_audio;
- cCondWait *m_eosEvent;
- cMutex *m_mutex;
-
- eState m_state;
+ cOmx *m_omx;
+ cAudio *m_audio;
+ cMutex *m_mutex;
- bool m_firstVideoPacket;
- bool m_firstAudioPacket;
+ eState m_state;
+ bool m_audioCodecReady;
+ bool m_videoCodecReady;
};
#endif