vdr 2.8.1
spu.h
Go to the documentation of this file.
1/*
2 * SPU Decoder Prototype
3 *
4 * Copyright (C) 2001.2002 Andreas Schultz <aschultz@warp10.net>
5 *
6 * This code is distributed under the terms and conditions of the
7 * GNU GENERAL PUBLIC LICENSE. See the file COPYING for details.
8 *
9 * $Id: spu.h 5.2 2026/03/09 20:08:29 kls Exp $
10 */
11
12#ifndef __SPU_H
13#define __SPU_H
14
15#include <inttypes.h>
16
17// --- cSpuDecoder -----------------------------------------------------------
18
20 public:
22 public:
23 // cSpuDecoder();
24 virtual ~cSpuDecoder();
25
26 virtual int setTime(uint32_t pts) = 0;
27
29 virtual void setScaleMode(cSpuDecoder::eScaleMode ScaleMode) = 0;
30 virtual void setResolution(int Xres, int Yres) {} // not ' = 0' for backwards compatibility
31 virtual void setPalette(uint32_t * pal) = 0;
32 virtual void setHighlight(uint16_t sx, uint16_t sy,
33 uint16_t ex, uint16_t ey,
34 uint32_t palette) = 0;
35 virtual void clearHighlight(void) = 0;
36 virtual void Empty(void) = 0;
37 virtual void Hide(void) = 0;
38 virtual void Draw(void) = 0;
39 virtual bool IsVisible(void) = 0;
40 virtual void processSPU(uint32_t pts, uint8_t * buf, bool AllowedShow = true) = 0;
41};
42
43#endif //__SPU_H
virtual ~cSpuDecoder()
Definition spu.c:21
eScaleMode
Definition spu.h:21
@ eSpuPanAndScan
Definition spu.h:21
@ eSpuNormal
Definition spu.h:21
@ eSpuLetterBox
Definition spu.h:21
virtual int setTime(uint32_t pts)=0
virtual void setHighlight(uint16_t sx, uint16_t sy, uint16_t ex, uint16_t ey, uint32_t palette)=0
virtual void setPalette(uint32_t *pal)=0
virtual void Hide(void)=0
virtual void clearHighlight(void)=0
virtual bool IsVisible(void)=0
virtual void Empty(void)=0
virtual void processSPU(uint32_t pts, uint8_t *buf, bool AllowedShow=true)=0
virtual void setResolution(int Xres, int Yres)
Definition spu.h:30
virtual void setScaleMode(cSpuDecoder::eScaleMode ScaleMode)=0
virtual void Draw(void)=0
virtual cSpuDecoder::eScaleMode getScaleMode(void)=0