vdr
2.4.7
kernel-headers-5.13
kernel-headers-5.13/osd.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
2
/*
3
* osd.h - DEPRECATED On Screen Display API
4
*
5
* NOTE: should not be used on future drivers
6
*
7
* Copyright (C) 2001 Ralph Metzler <ralph@convergence.de>
8
* & Marcus Metzler <marcus@convergence.de>
9
* for convergence integrated media GmbH
10
*
11
* This program is free software; you can redistribute it and/or
12
* modify it under the terms of the GNU General Lesser Public License
13
* as published by the Free Software Foundation; either version 2.1
14
* of the License, or (at your option) any later version.
15
*
16
* This program is distributed in the hope that it will be useful,
17
* but WITHOUT ANY WARRANTY; without even the implied warranty of
18
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
* GNU General Public License for more details.
20
*
21
* You should have received a copy of the GNU Lesser General Public License
22
* along with this program; if not, write to the Free Software
23
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
*
25
*/
26
27
#ifndef _DVBOSD_H_
28
#define _DVBOSD_H_
29
30
31
32
typedef
enum
{
33
/* All functions return -2 on "not open" */
34
OSD_Close
= 1,
/* () */
35
/*
36
* Disables OSD and releases the buffers
37
* returns 0 on success
38
*/
39
OSD_Open
,
/* (x0,y0,x1,y1,BitPerPixel[2/4/8](color&0x0F),mix[0..15](color&0xF0)) */
40
/*
41
* Opens OSD with this size and bit depth
42
* returns 0 on success, -1 on DRAM allocation error, -2 on "already open"
43
*/
44
OSD_Show
,
/* () */
45
/*
46
* enables OSD mode
47
* returns 0 on success
48
*/
49
OSD_Hide
,
/* () */
50
/*
51
* disables OSD mode
52
* returns 0 on success
53
*/
54
OSD_Clear
,
/* () */
55
/*
56
* Sets all pixel to color 0
57
* returns 0 on success
58
*/
59
OSD_Fill
,
/* (color) */
60
/*
61
* Sets all pixel to color <col>
62
* returns 0 on success
63
*/
64
OSD_SetColor
,
/* (color,R{x0},G{y0},B{x1},opacity{y1}) */
65
/*
66
* set palette entry <num> to <r,g,b>, <mix> and <trans> apply
67
* R,G,B: 0..255
68
* R=Red, G=Green, B=Blue
69
* opacity=0: pixel opacity 0% (only video pixel shows)
70
* opacity=1..254: pixel opacity as specified in header
71
* opacity=255: pixel opacity 100% (only OSD pixel shows)
72
* returns 0 on success, -1 on error
73
*/
74
OSD_SetPalette
,
/* (firstcolor{color},lastcolor{x0},data) */
75
/*
76
* Set a number of entries in the palette
77
* sets the entries "firstcolor" through "lastcolor" from the array "data"
78
* data has 4 byte for each color:
79
* R,G,B, and a opacity value: 0->transparent, 1..254->mix, 255->pixel
80
*/
81
OSD_SetTrans
,
/* (transparency{color}) */
82
/*
83
* Sets transparency of mixed pixel (0..15)
84
* returns 0 on success
85
*/
86
OSD_SetPixel
,
/* (x0,y0,color) */
87
/*
88
* sets pixel <x>,<y> to color number <col>
89
* returns 0 on success, -1 on error
90
*/
91
OSD_GetPixel
,
/* (x0,y0) */
92
/* returns color number of pixel <x>,<y>, or -1 */
93
OSD_SetRow
,
/* (x0,y0,x1,data) */
94
/*
95
* fills pixels x0,y through x1,y with the content of data[]
96
* returns 0 on success, -1 on clipping all pixel (no pixel drawn)
97
*/
98
OSD_SetBlock
,
/* (x0,y0,x1,y1,increment{color},data) */
99
/*
100
* fills pixels x0,y0 through x1,y1 with the content of data[]
101
* inc contains the width of one line in the data block,
102
* inc<=0 uses blockwidth as linewidth
103
* returns 0 on success, -1 on clipping all pixel
104
*/
105
OSD_FillRow
,
/* (x0,y0,x1,color) */
106
/*
107
* fills pixels x0,y through x1,y with the color <col>
108
* returns 0 on success, -1 on clipping all pixel
109
*/
110
OSD_FillBlock
,
/* (x0,y0,x1,y1,color) */
111
/*
112
* fills pixels x0,y0 through x1,y1 with the color <col>
113
* returns 0 on success, -1 on clipping all pixel
114
*/
115
OSD_Line
,
/* (x0,y0,x1,y1,color) */
116
/*
117
* draw a line from x0,y0 to x1,y1 with the color <col>
118
* returns 0 on success
119
*/
120
OSD_Query
,
/* (x0,y0,x1,y1,xasp{color}}), yasp=11 */
121
/*
122
* fills parameters with the picture dimensions and the pixel aspect ratio
123
* returns 0 on success
124
*/
125
OSD_Test
,
/* () */
126
/*
127
* draws a test picture. for debugging purposes only
128
* returns 0 on success
129
* TODO: remove "test" in final version
130
*/
131
OSD_Text
,
/* (x0,y0,size,color,text) */
132
OSD_SetWindow
,
/* (x0) set window with number 0<x0<8 as current */
133
OSD_MoveWindow
,
/* move current window to (x0, y0) */
134
OSD_OpenRaw
,
/* Open other types of OSD windows */
135
}
OSD_Command
;
136
137
typedef
struct
osd_cmd_s
{
138
OSD_Command
cmd
;
139
int
x0
;
140
int
y0
;
141
int
x1
;
142
int
y1
;
143
int
color
;
144
void
*
data
;
145
}
osd_cmd_t
;
146
147
/* OSD_OpenRaw: set 'color' to desired window type */
148
typedef
enum
{
149
OSD_BITMAP1
,
/* 1 bit bitmap */
150
OSD_BITMAP2
,
/* 2 bit bitmap */
151
OSD_BITMAP4
,
/* 4 bit bitmap */
152
OSD_BITMAP8
,
/* 8 bit bitmap */
153
OSD_BITMAP1HR
,
/* 1 Bit bitmap half resolution */
154
OSD_BITMAP2HR
,
/* 2 bit bitmap half resolution */
155
OSD_BITMAP4HR
,
/* 4 bit bitmap half resolution */
156
OSD_BITMAP8HR
,
/* 8 bit bitmap half resolution */
157
OSD_YCRCB422
,
/* 4:2:2 YCRCB Graphic Display */
158
OSD_YCRCB444
,
/* 4:4:4 YCRCB Graphic Display */
159
OSD_YCRCB444HR
,
/* 4:4:4 YCRCB graphic half resolution */
160
OSD_VIDEOTSIZE
,
/* True Size Normal MPEG Video Display */
161
OSD_VIDEOHSIZE
,
/* MPEG Video Display Half Resolution */
162
OSD_VIDEOQSIZE
,
/* MPEG Video Display Quarter Resolution */
163
OSD_VIDEODSIZE
,
/* MPEG Video Display Double Resolution */
164
OSD_VIDEOTHSIZE
,
/* True Size MPEG Video Display Half Resolution */
165
OSD_VIDEOTQSIZE
,
/* True Size MPEG Video Display Quarter Resolution*/
166
OSD_VIDEOTDSIZE
,
/* True Size MPEG Video Display Double Resolution */
167
OSD_VIDEONSIZE
,
/* Full Size MPEG Video Display */
168
OSD_CURSOR
/* Cursor */
169
}
osd_raw_window_t
;
170
171
typedef
struct
osd_cap_s
{
172
int
cmd
;
173
#define OSD_CAP_MEMSIZE 1
/* memory size */
174
long
val
;
175
}
osd_cap_t
;
176
177
178
#define OSD_SEND_CMD _IOW('o', 160, osd_cmd_t)
179
#define OSD_GET_CAPABILITY _IOR('o', 161, osd_cap_t)
180
181
#endif
OSD_Command
OSD_Command
Definition:
kernel-headers-5.13/osd.h:32
OSD_SetPixel
@ OSD_SetPixel
Definition:
kernel-headers-5.13/osd.h:86
OSD_Open
@ OSD_Open
Definition:
kernel-headers-5.13/osd.h:39
OSD_GetPixel
@ OSD_GetPixel
Definition:
kernel-headers-5.13/osd.h:91
OSD_SetTrans
@ OSD_SetTrans
Definition:
kernel-headers-5.13/osd.h:81
OSD_MoveWindow
@ OSD_MoveWindow
Definition:
kernel-headers-5.13/osd.h:133
OSD_Show
@ OSD_Show
Definition:
kernel-headers-5.13/osd.h:44
OSD_SetColor
@ OSD_SetColor
Definition:
kernel-headers-5.13/osd.h:64
OSD_Line
@ OSD_Line
Definition:
kernel-headers-5.13/osd.h:115
OSD_Test
@ OSD_Test
Definition:
kernel-headers-5.13/osd.h:125
OSD_Fill
@ OSD_Fill
Definition:
kernel-headers-5.13/osd.h:59
OSD_Text
@ OSD_Text
Definition:
kernel-headers-5.13/osd.h:131
OSD_Query
@ OSD_Query
Definition:
kernel-headers-5.13/osd.h:120
OSD_Hide
@ OSD_Hide
Definition:
kernel-headers-5.13/osd.h:49
OSD_SetWindow
@ OSD_SetWindow
Definition:
kernel-headers-5.13/osd.h:132
OSD_FillRow
@ OSD_FillRow
Definition:
kernel-headers-5.13/osd.h:105
OSD_Close
@ OSD_Close
Definition:
kernel-headers-5.13/osd.h:34
OSD_SetPalette
@ OSD_SetPalette
Definition:
kernel-headers-5.13/osd.h:74
OSD_SetBlock
@ OSD_SetBlock
Definition:
kernel-headers-5.13/osd.h:98
OSD_Clear
@ OSD_Clear
Definition:
kernel-headers-5.13/osd.h:54
OSD_OpenRaw
@ OSD_OpenRaw
Definition:
kernel-headers-5.13/osd.h:134
OSD_FillBlock
@ OSD_FillBlock
Definition:
kernel-headers-5.13/osd.h:110
OSD_SetRow
@ OSD_SetRow
Definition:
kernel-headers-5.13/osd.h:93
osd_cmd_t
struct osd_cmd_s osd_cmd_t
osd_raw_window_t
osd_raw_window_t
Definition:
kernel-headers-5.13/osd.h:148
OSD_BITMAP8HR
@ OSD_BITMAP8HR
Definition:
kernel-headers-5.13/osd.h:156
OSD_BITMAP2HR
@ OSD_BITMAP2HR
Definition:
kernel-headers-5.13/osd.h:154
OSD_VIDEOTQSIZE
@ OSD_VIDEOTQSIZE
Definition:
kernel-headers-5.13/osd.h:165
OSD_YCRCB444HR
@ OSD_YCRCB444HR
Definition:
kernel-headers-5.13/osd.h:159
OSD_VIDEOTDSIZE
@ OSD_VIDEOTDSIZE
Definition:
kernel-headers-5.13/osd.h:166
OSD_VIDEOHSIZE
@ OSD_VIDEOHSIZE
Definition:
kernel-headers-5.13/osd.h:161
OSD_BITMAP1HR
@ OSD_BITMAP1HR
Definition:
kernel-headers-5.13/osd.h:153
OSD_YCRCB422
@ OSD_YCRCB422
Definition:
kernel-headers-5.13/osd.h:157
OSD_VIDEOTHSIZE
@ OSD_VIDEOTHSIZE
Definition:
kernel-headers-5.13/osd.h:164
OSD_CURSOR
@ OSD_CURSOR
Definition:
kernel-headers-5.13/osd.h:168
OSD_BITMAP4HR
@ OSD_BITMAP4HR
Definition:
kernel-headers-5.13/osd.h:155
OSD_VIDEOQSIZE
@ OSD_VIDEOQSIZE
Definition:
kernel-headers-5.13/osd.h:162
OSD_YCRCB444
@ OSD_YCRCB444
Definition:
kernel-headers-5.13/osd.h:158
OSD_BITMAP4
@ OSD_BITMAP4
Definition:
kernel-headers-5.13/osd.h:151
OSD_BITMAP1
@ OSD_BITMAP1
Definition:
kernel-headers-5.13/osd.h:149
OSD_BITMAP8
@ OSD_BITMAP8
Definition:
kernel-headers-5.13/osd.h:152
OSD_VIDEONSIZE
@ OSD_VIDEONSIZE
Definition:
kernel-headers-5.13/osd.h:167
OSD_VIDEOTSIZE
@ OSD_VIDEOTSIZE
Definition:
kernel-headers-5.13/osd.h:160
OSD_BITMAP2
@ OSD_BITMAP2
Definition:
kernel-headers-5.13/osd.h:150
OSD_VIDEODSIZE
@ OSD_VIDEODSIZE
Definition:
kernel-headers-5.13/osd.h:163
osd_cap_t
struct osd_cap_s osd_cap_t
osd_cap_s
Definition:
kernel-headers-5.13/osd.h:171
osd_cap_s::val
long val
Definition:
kernel-headers-5.13/osd.h:174
osd_cap_s::cmd
int cmd
Definition:
kernel-headers-5.13/osd.h:172
osd_cmd_s
Definition:
kernel-headers-5.13/osd.h:137
osd_cmd_s::y0
int y0
Definition:
kernel-headers-5.13/osd.h:140
osd_cmd_s::y1
int y1
Definition:
kernel-headers-5.13/osd.h:142
osd_cmd_s::color
int color
Definition:
kernel-headers-5.13/osd.h:143
osd_cmd_s::x0
int x0
Definition:
kernel-headers-5.13/osd.h:139
osd_cmd_s::data
void * data
Definition:
kernel-headers-5.13/osd.h:144
osd_cmd_s::x1
int x1
Definition:
kernel-headers-5.13/osd.h:141
osd_cmd_s::cmd
OSD_Command cmd
Definition:
kernel-headers-5.13/osd.h:138
Generated by
1.9.1