vdr  2.0.4
hdffcmd.h
Go to the documentation of this file.
1 /*
2  * hdffcmd.h: TODO(short description)
3  *
4  * See the README file for copyright information and how to reach the author.
5  */
6 
7 #ifndef _HDFF_CMD_H_
8 #define _HDFF_CMD_H_
9 
10 #include "libhdffcmd/hdffcmd.h"
11 
12 namespace HDFF
13 {
14 
16 {
17 private:
18  int mOsdDev;
19 
20 public:
21  cHdffCmdIf(int OsdDev);
22  ~cHdffCmdIf(void);
23 
24  uint32_t CmdGetFirmwareVersion(char * pString, uint32_t MaxLength);
25  uint32_t CmdGetInterfaceVersion(char * pString, uint32_t MaxLength);
26  uint32_t CmdGetCopyrights(uint8_t Index, char * pString, uint32_t MaxLength);
27 
28  void CmdAvSetPlayMode(uint8_t PlayMode, bool Realtime);
29  void CmdAvSetVideoPid(uint8_t DecoderIndex, uint16_t VideoPid, HdffVideoStreamType_t StreamType, bool PlaybackMode = false);
30  void CmdAvSetAudioPid(uint8_t DecoderIndex, uint16_t AudioPid, HdffAudioStreamType_t StreamType, HdffAvContainerType_t ContainerType = HDFF_AV_CONTAINER_PES);
31  void CmdAvSetPcrPid(uint8_t DecoderIndex, uint16_t PcrPid);
32  void CmdAvSetTeletextPid(uint8_t DecoderIndex, uint16_t TeletextPid);
33  void CmdAvSetVideoWindow(uint8_t DecoderIndex, bool Enable, uint16_t X, uint16_t Y, uint16_t Width, uint16_t Height);
34  void CmdAvShowStillImage(uint8_t DecoderIndex, const uint8_t * pStillImage, int Size, HdffVideoStreamType_t StreamType);
35  void CmdAvSetDecoderInput(uint8_t DecoderIndex, uint8_t DemultiplexerIndex);
36  void CmdAvSetDemultiplexerInput(uint8_t DemultiplexerIndex, uint8_t TsInputIndex);
37  void CmdAvSetVideoFormat(uint8_t DecoderIndex, const HdffVideoFormat_t * pVideoFormat);
38  void CmdAvSetVideoOutputMode(uint8_t DecoderIndex, HdffVideoOutputMode_t OutputMode);
39  void CmdAvSetStc(uint8_t DecoderIndex, uint64_t Stc);
40  void CmdAvFlushBuffer(uint8_t DecoderIndex, bool FlushAudio, bool FlushVideo);
41  void CmdAvEnableSync(uint8_t DecoderIndex, bool EnableSync);
42  void CmdAvSetVideoSpeed(uint8_t DecoderIndex, int32_t Speed);
43  void CmdAvSetAudioSpeed(uint8_t DecoderIndex, int32_t Speed);
44  void CmdAvEnableVideoAfterStop(uint8_t DecoderIndex, bool EnableVideoAfterStop);
45  void CmdAvSetAudioDelay(int16_t Delay);
47  void CmdAvSetAudioChannel(uint8_t AudioChannel);
48  void CmdAvSetSyncShift(int16_t SyncShift);
49  void CmdAvMuteAudio(uint8_t DecoderIndex, bool Mute);
50 
51  void CmdOsdConfigure(const HdffOsdConfig_t * pConfig);
52  void CmdOsdReset(void);
53 
54  uint32_t CmdOsdCreateDisplay(uint32_t Width, uint32_t Height, HdffColorType_t ColorType);
55  void CmdOsdDeleteDisplay(uint32_t hDisplay);
56  void CmdOsdEnableDisplay(uint32_t hDisplay, bool Enable);
57  void CmdOsdSetDisplayOutputRectangle(uint32_t hDisplay, uint32_t X, uint32_t Y, uint32_t Width, uint32_t Height);
58  void CmdOsdSetDisplayClippingArea(uint32_t hDisplay, bool Enable, uint32_t X, uint32_t Y, uint32_t Width, uint32_t Height);
59  void CmdOsdRenderDisplay(uint32_t hDisplay);
60 
61  uint32_t CmdOsdCreatePalette(HdffColorType_t ColorType, HdffColorFormat_t ColorFormat,
62  uint32_t NumColors, const uint32_t * pColors);
63  void CmdOsdDeletePalette(uint32_t hPalette);
64  void CmdOsdSetDisplayPalette(uint32_t hDisplay, uint32_t hPalette);
65  void CmdOsdSetPaletteColors(uint32_t hPalette, HdffColorFormat_t ColorFormat,
66  uint8_t StartColor, uint32_t NumColors, const uint32_t * pColors);
67 
68  uint32_t CmdOsdCreateFontFace(const uint8_t * pFontData, uint32_t DataSize);
69  void CmdOsdDeleteFontFace(uint32_t hFontFace);
70  uint32_t CmdOsdCreateFont(uint32_t hFontFace, uint32_t Size);
71  void CmdOsdDeleteFont(uint32_t hFont);
72 
73  void CmdOsdDrawRectangle(uint32_t hDisplay, int X, int Y, int Width, int Height, uint32_t Color);
74  void CmdOsdDrawEllipse(uint32_t hDisplay, int CX, int CY, int RadiusX, int RadiusY,
75  uint32_t Color, uint32_t Flags);
76  void CmdOsdDrawSlope(uint32_t hDisplay, int X, int Y, int Width, int Height, uint32_t Color, uint32_t Type);
77  void CmdOsdDrawText(uint32_t hDisplay, uint32_t hFont, int X, int Y, const char * pText, uint32_t Color);
78  void CmdOsdDrawUtf8Text(uint32_t hDisplay, uint32_t hFont, int X, int Y, const char * pText, uint32_t Color);
79  void CmdOsdDrawTextW(uint32_t hDisplay, uint32_t hFont, int X, int Y, const uint16_t * pText, uint32_t Color);
80  void CmdOsdDrawBitmap(uint32_t hDisplay, int X, int Y, const uint8_t * pBitmap,
81  int BmpWidth, int BmpHeight, int BmpSize,
82  HdffColorType_t ColorType, uint32_t hPalette);
83  void CmdOsdSaveRegion(uint32_t hDisplay, int X, int Y, int Width, int Height);
84  void CmdOsdRestoreRegion(uint32_t hDisplay);
85 
86  void CmdMuxSetVideoOut(HdffVideoOut_t VideoOut);
87  void CmdMuxSetVolume(uint8_t Volume);
88  void CmdMuxMuteAudio(bool Mute);
89 
90  void CmdHdmiSetVideoMode(HdffVideoMode_t VideoMode);
91  void CmdHdmiConfigure(const HdffHdmiConfig_t * pConfig);
93 
95  void CmdRemoteSetAddressFilter(bool Enable, uint32_t Address);
96 };
97 
98 } // end of namespace
99 
100 #endif
101