7 #ifndef __DVBHDFFDEVICE_H 8 #define __DVBHDFFDEVICE_H 11 #include <vdr/dvbdevice.h> 12 #include <vdr/dvbspu.h> 49 virtual uchar *
GrabImage(
int &Size,
bool Jpeg =
true,
int Quality = -1,
int SizeX = -1,
int SizeY = -1);
55 virtual void GetVideoSize(
int &Width,
int &Height,
double &VideoAspect);
56 virtual void GetOsdSize(
int &Width,
int &Height,
double &PixelAspect);
87 void BuildTsPacket(uint8_t * TsBuffer,
bool PusiSet, uint16_t Pid, uint8_t Counter,
const uint8_t * Data, uint32_t Length);
88 uint32_t
PesToTs(uint8_t * TsBuffer, uint16_t Pid, uint8_t & Counter,
const uint8_t * Data, uint32_t Length);
99 virtual int64_t
GetSTC(
void);
102 #if (APIVERSNUM >= 20103) 103 virtual void TrickSpeed(
int Speed,
bool Forward);
107 virtual void Clear(
void);
108 virtual void Play(
void);
109 virtual void Freeze(
void);
110 virtual void Mute(
void);
112 virtual bool Poll(
cPoller &Poller,
int TimeoutMs = 0);
113 virtual bool Flush(
int TimeoutMs = 0);
130 #endif //__DVBHDFFDEVICE_H virtual void MakePrimaryDevice(bool On)
Informs a device that it will be the primary device.
virtual int PlayTsVideo(const uchar *Data, int Length)
Plays the given data block as video.
virtual cRect CanScaleVideo(const cRect &Rect, int Alignment=taCenter)
Asks the output device whether it can scale the currently shown video in such a way that it fits into...
virtual int64_t GetSTC(void)
Gets the current System Time Counter, which can be used to synchronize audio, video and subtitles...
virtual void StillPicture(const uchar *Data, int Length)
Displays the given I-frame as a still picture.
virtual void TrickSpeed(int Speed)
virtual void GetOsdSize(int &Width, int &Height, double &PixelAspect)
Returns the Width, Height and PixelAspect ratio the OSD should use to best fit the resolution of the ...
virtual bool HasDecoder(void) const
Tells whether this device has an MPEG decoder.
virtual void Freeze(void)
Puts the device into "freeze frame" mode.
virtual int GetAudioChannelDevice(void)
Gets the current audio channel, which is stereo (0), mono left (1) or mono right (2).
virtual bool CanReplay(void) const
Returns true if this device can currently start a replay session.
virtual void Clear(void)
Clears all video and audio data from the device.
virtual void ScaleVideo(const cRect &Rect=cRect::Null)
Scales the currently shown video in such a way that it fits into the given Rect.
virtual int PlayVideo(const uchar *Data, int Length)
Plays the given data block as video.
virtual void Play(void)
Sets the device into play mode (after a previous trick mode).
virtual void SetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayFormat)
Sets the video display format to the given one (only useful if this device has an MPEG decoder)...
uint32_t PesToTs(uint8_t *TsBuffer, uint16_t Pid, uint8_t &Counter, const uint8_t *Data, uint32_t Length)
cDvbHdFfDevice(int Adapter, int Frontend)
HDFF::cHdffCmdIf * mHdffCmdIf
virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView)
Sets the device to the given channel (actual physical setup).
void BuildTsPacket(uint8_t *TsBuffer, bool PusiSet, uint16_t Pid, uint8_t Counter, const uint8_t *Data, uint32_t Length)
virtual ~cDvbHdFfDevice()
virtual bool SetPlayMode(ePlayMode PlayMode)
Sets the device into the given play mode.
virtual int PlayTsAudio(const uchar *Data, int Length)
Plays the given data block as audio.
virtual int PlayAudio(const uchar *Data, int Length, uchar Id)
Plays the given data block as audio.
virtual void GetVideoSize(int &Width, int &Height, double &VideoAspect)
Returns the Width, Height and VideoAspect ratio of the currently displayed video material.
virtual bool Flush(int TimeoutMs=0)
Returns true if the device's output buffers are empty, i.
bool supportsPcrInTransferMode
cDvbSpuDecoder * spuDecoder
virtual void SetAudioChannelDevice(int AudioChannel)
Sets the audio channel to stereo (0), mono left (1) or mono right (2).
The cDvbHdFfDevice implements a DVB device which can be accessed through the Linux DVB driver API...
virtual uchar * GrabImage(int &Size, bool Jpeg=true, int Quality=-1, int SizeX=-1, int SizeY=-1)
Grabs the currently visible screen image.
The cDvbDevice implements a DVB device which can be accessed through the Linux DVB driver API...
void TurnOffLiveMode(bool LiveView)
virtual void SetAudioTrackDevice(eTrackType Type)
Sets the current audio track to the given value.
static HDFF::cHdffCmdIf * GetHdffCmdHandler(void)
static bool Probe(int Adapter, int Frontend)
virtual void SetVolumeDevice(int Volume)
Sets the audio volume on this device (Volume = 0...255).
virtual cSpuDecoder * GetSpuDecoder(void)
Returns a pointer to the device's SPU decoder (or NULL, if this device doesn't have an SPU decoder)...
virtual bool SetPid(cPidHandle *Handle, int Type, bool On)
Does the actual PID setting on this device.
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...
virtual void Mute(void)
Turns off audio while replaying.