27 [[deprecated(
"use DeviceDrain() instead")]]
46 int PlayPes(
const uchar *Data,
int Length,
bool VideoOnly =
false);
62 virtual bool GetIndex(
int &Current,
int &Total,
bool SnapToIFrame =
false) {
return false; }
69 virtual bool GetReplayMode(
bool &Play,
bool &Forward,
int &Speed) {
return false; }
96 virtual void Hide(
void) = 0;
static cControl * Control(cMutexLock &MutexLock, bool Hidden=false, bool *LockedOtherwise=NULL)
Returns the current replay control (if any) in case it is currently visible.
virtual void ClearEditingMarks(void)
Clears any editing marks this player might be showing.
virtual cString GetHeader(void)
This can be used by players that don't play a cRecording, but rather do something completely differen...
double FramesPerSecond(void) const
bool GetFrameNumber(int &Current, int &Total) const
static void Shutdown(void)
bool GetIndex(int &Current, int &Total, bool SnapToIFrame=false) const
static cControl * control
virtual cOsdObject * GetInfo(void)
Returns an OSD object that displays information about the currently played programme.
virtual const cRecording * GetRecording(void)
Returns the cRecording that is currently being replayed, or NULL if this player is not playing a cRec...
bool GetReplayMode(bool &Play, bool &Forward, int &Speed) const
void SetPlayer(cPlayer *Player)
static void Launch(cControl *Control)
cControl(cPlayer *Player, bool Hidden=false)
virtual void Hide(void)=0
virtual bool Poll(cPoller &Poller, int TimeoutMs=0)
Returns true if the device itself or any of the file handles in Poller is ready for further action.
bool SetCurrentSubtitleTrack(eTrackType Type, bool Manual=false)
Sets the current subtitle track to the given Type.
virtual bool IsPlayingVideo(void) const
Returns true if the currently attached player has delivered any video packets.
virtual int64_t GetSTC(void)
Gets the current System Time Counter, which can be used to synchronize audio, video and subtitles.
virtual bool HasIBPTrickSpeed(void)
Returns true if this device can handle all frames in 'fast forward' trick speeds.
bool SetAvailableTrack(eTrackType Type, int Index, uint16_t Id, const char *Language=NULL, const char *Description=NULL)
Sets the track of the given Type and Index to the given values.
bool Drain(void)
Tells the device that the last data of the current stream has been delivered and no more will follow,...
virtual int PlayTs(const uchar *Data, int Length, bool VideoOnly=false)
Plays the given TS packet.
bool SetCurrentAudioTrack(eTrackType Type)
Sets the current audio track to the given Type.
cOsdObject(bool FastResponse=false)
bool DeviceSetCurrentAudioTrack(eTrackType Type)
void DeviceStillPicture(const uchar *Data, int Length)
uint64_t DeviceGetSTC(void)
std::atomic< cDevice * > device
bool DeviceSetAvailableTrack(eTrackType Type, int Index, uint16_t Id, const char *Language=NULL, const char *Description=NULL)
virtual bool GetIndex(int &Current, int &Total, bool SnapToIFrame=false)
virtual bool GetReplayMode(bool &Play, bool &Forward, int &Speed)
virtual const cErrors * GetErrors(void)
virtual void SetAudioTrack(eTrackType Type, const tTrackId *TrackId)
int PlayTs(const uchar *Data, int Length, bool VideoOnly=false)
int PlayPes(const uchar *Data, int Length, bool VideoOnly=false)
virtual bool GetFrameNumber(int &Current, int &Total)
bool DevicePoll(cPoller &Poller, int TimeoutMs=0)
void DeviceClrAvailableTracks(bool DescriptionsOnly=false)
virtual double FramesPerSecond(void)
void DeviceSetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayFormat)
bool DeviceFlush(int TimeoutMs=0)
void DeviceSetTempSubtitles(void)
bool DeviceHasIBPTrickSpeed(void)
cPlayer(ePlayMode PlayMode=pmAudioVideo)
bool DeviceSetCurrentSubtitleTrack(eTrackType Type)
virtual void Activate(bool On)
virtual void SetSubtitleTrack(eTrackType Type, const tTrackId *TrackId)
bool DeviceIsPlayingVideo(void)
void DeviceTrickSpeed(int Speed, bool Forward)
#define DEFAULTFRAMESPERSECOND