vdr  1.7.31
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  * $Id: hdffcmd.h 1.20 2012/06/16 11:16:52 kls Exp $
7  */
8 
9 #ifndef _HDFF_CMD_H_
10 #define _HDFF_CMD_H_
11 
12 #include "libhdffcmd/hdffcmd.h"
13 
14 namespace HDFF
15 {
16 
18 {
19 private:
20  int mOsdDev;
21 
22 public:
23  cHdffCmdIf(int OsdDev);
24  ~cHdffCmdIf(void);
25 
26  uint32_t CmdGetFirmwareVersion(char * pString, uint32_t MaxLength);
27  uint32_t CmdGetInterfaceVersion(char * pString, uint32_t MaxLength);
28  uint32_t CmdGetCopyrights(uint8_t Index, char * pString, uint32_t MaxLength);
29 
30  void CmdAvSetPlayMode(uint8_t PlayMode, bool Realtime);
31  void CmdAvSetVideoPid(uint8_t DecoderIndex, uint16_t VideoPid, HdffVideoStreamType_t StreamType, bool PlaybackMode = false);
32  void CmdAvSetAudioPid(uint8_t DecoderIndex, uint16_t AudioPid, HdffAudioStreamType_t StreamType, HdffAvContainerType_t ContainerType = HDFF_AV_CONTAINER_PES);
33  void CmdAvSetPcrPid(uint8_t DecoderIndex, uint16_t PcrPid);
34  void CmdAvSetTeletextPid(uint8_t DecoderIndex, uint16_t TeletextPid);
35  void CmdAvSetVideoWindow(uint8_t DecoderIndex, bool Enable, uint16_t X, uint16_t Y, uint16_t Width, uint16_t Height);
36  void CmdAvShowStillImage(uint8_t DecoderIndex, const uint8_t * pStillImage, int Size, HdffVideoStreamType_t StreamType);
37  void CmdAvSetDecoderInput(uint8_t DecoderIndex, uint8_t DemultiplexerIndex);
38  void CmdAvSetDemultiplexerInput(uint8_t DemultiplexerIndex, uint8_t TsInputIndex);
39  void CmdAvSetVideoFormat(uint8_t DecoderIndex, const HdffVideoFormat_t * pVideoFormat);
40  void CmdAvSetVideoOutputMode(uint8_t DecoderIndex, HdffVideoOutputMode_t OutputMode);
41  void CmdAvSetStc(uint8_t DecoderIndex, uint64_t Stc);
42  void CmdAvFlushBuffer(uint8_t DecoderIndex, bool FlushAudio, bool FlushVideo);
43  void CmdAvEnableSync(uint8_t DecoderIndex, bool EnableSync);
44  void CmdAvSetVideoSpeed(uint8_t DecoderIndex, int32_t Speed);
45  void CmdAvSetAudioSpeed(uint8_t DecoderIndex, int32_t Speed);
46  void CmdAvEnableVideoAfterStop(uint8_t DecoderIndex, bool EnableVideoAfterStop);
47  void CmdAvSetAudioDelay(int16_t Delay);
49  void CmdAvSetAudioChannel(uint8_t AudioChannel);
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 CmdOsdDrawText(uint32_t hDisplay, uint32_t hFont, int X, int Y, const char * pText, uint32_t Color);
77  void CmdOsdDrawUtf8Text(uint32_t hDisplay, uint32_t hFont, int X, int Y, const char * pText, uint32_t Color);
78  void CmdOsdDrawTextW(uint32_t hDisplay, uint32_t hFont, int X, int Y, const uint16_t * pText, uint32_t Color);
79  void CmdOsdDrawBitmap(uint32_t hDisplay, int X, int Y, const uint8_t * pBitmap,
80  int BmpWidth, int BmpHeight, int BmpSize,
81  HdffColorType_t ColorType, uint32_t hPalette);
82  void CmdOsdSaveRegion(uint32_t hDisplay, int X, int Y, int Width, int Height);
83  void CmdOsdRestoreRegion(uint32_t hDisplay);
84 
85  void CmdMuxSetVideoOut(HdffVideoOut_t VideoOut);
86  void CmdMuxSetVolume(uint8_t Volume);
87  void CmdMuxMuteAudio(bool Mute);
88 
89  void CmdHdmiSetVideoMode(HdffVideoMode_t VideoMode);
90  void CmdHdmiConfigure(const HdffHdmiConfig_t * pConfig);
92 
94  void CmdRemoteSetAddressFilter(bool Enable, uint32_t Address);
95 };
96 
97 } // end of namespace
98 
99 #endif