summaryrefslogtreecommitdiff
path: root/xine/vo_props.h
blob: dc377dfca79b51c687c23abe36ff8098fd1349c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
 * vo_props.h: Extended video-out capabilities and properties
 *
 * See the main source file 'xineliboutput.c' for copyright information and
 * how to reach the author.
 *
 * $Id: vo_props.h,v 1.4 2009-03-17 12:20:33 phintuka Exp $
 *
 */

#ifndef XINELIBOUTPUT_VO_PROPS_H_
#define XINELIBOUTPUT_VO_PROPS_H_

/*
 * Extended vo capabilities
 */

/* output can scale OSD */
#ifdef VO_CAP_CUSTOM_EXTENT_OVERLAY
  /* xine-lib 1.2 */
# define VO_CAP_OSDSCALING  VO_CAP_CUSTOM_EXTENT_OVERLAY
#else
# define VO_CAP_OSDSCALING  0x01000000
#endif

/* Output can blend ARGB surfaces */
#ifdef VO_CAP_ARGB_LAYER_OVERLAY
# define VO_CAP_ARGB  VO_CAP_ARGB_LAYER_OVERLAY
#else
# define VO_CAP_ARGB  0x02000000
#endif


/*
 * Extended vo properties
 */

/* enable/disable OSD scaling */
#define VO_PROP_OSD_SCALING 0x1001


/*
 * VDR OSD tagging and extra data
 */

/* VDR OSD , stored in overlay hili_rgb_clut member */
#define VDR_OSD_MAGIC       -9999

/* VDR OSD extra data, stored in overlay hili clut data */
typedef struct {
  /* extent of reference coordinate system */
  uint16_t extent_width;
  uint16_t extent_height;
  /* overlay layer */
  uint32_t layer;
  /* scaling: 0 - disable , 1...N - quality */
  uint8_t scaling;
} vdr_osd_extradata_t;

#endif /* XINELIBOUTPUT_VO_PROPS_H_ */