[PSDK]
[reactos.git] / include / psdk / tvout.h
1 /*
2 * tvout.h
3 *
4 * Definitions for TV-out support
5 *
6 * This file is part of the w32api package.
7 *
8 * Contributors:
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
10 *
11 * THIS SOFTWARE IS NOT COPYRIGHTED
12 *
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
15 *
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
20 *
21 */
22
23 #pragma once
24
25 #ifndef GUID_DEFINED
26 #include <guiddef.h>
27 #endif
28
29 /* VIDEOPARAMETERS.dwCommand constants */
30 #define VP_COMMAND_GET 0x00000001
31 #define VP_COMMAND_SET 0x00000002
32
33 /* VIDEOPARAMETERS.dwFlags constants */
34 #define VP_FLAGS_TV_MODE 0x00000001
35 #define VP_FLAGS_TV_STANDARD 0x00000002
36 #define VP_FLAGS_FLICKER 0x00000004
37 #define VP_FLAGS_OVERSCAN 0x00000008
38 #define VP_FLAGS_MAX_UNSCALED 0x00000010
39 #define VP_FLAGS_POSITION 0x00000020
40 #define VP_FLAGS_BRIGHTNESS 0x00000040
41 #define VP_FLAGS_CONTRAST 0x00000080
42 #define VP_FLAGS_COPYPROTECT 0x00000100
43
44 /* VIDEOPARAMETERS.dwMode constants */
45 #define VP_MODE_WIN_GRAPHICS 0x00000001
46 #define VP_MODE_TV_PLAYBACK 0x00000002
47
48 /* VIDEOPARAMETERS.dwTVStandard/dwAvailableTVStandard constants */
49 #define VP_TV_STANDARD_NTSC_M 0x00000001
50 #define VP_TV_STANDARD_NTSC_M_J 0x00000002
51 #define VP_TV_STANDARD_PAL_B 0x00000004
52 #define VP_TV_STANDARD_PAL_D 0x00000008
53 #define VP_TV_STANDARD_PAL_H 0x00000010
54 #define VP_TV_STANDARD_PAL_I 0x00000020
55 #define VP_TV_STANDARD_PAL_M 0x00000040
56 #define VP_TV_STANDARD_PAL_N 0x00000080
57 #define VP_TV_STANDARD_SECAM_B 0x00000100
58 #define VP_TV_STANDARD_SECAM_D 0x00000200
59 #define VP_TV_STANDARD_SECAM_G 0x00000400
60 #define VP_TV_STANDARD_SECAM_H 0x00000800
61 #define VP_TV_STANDARD_SECAM_K 0x00001000
62 #define VP_TV_STANDARD_SECAM_K1 0x00002000
63 #define VP_TV_STANDARD_SECAM_L 0x00004000
64 #define VP_TV_STANDARD_WIN_VGA 0x00008000
65 #define VP_TV_STANDARD_NTSC_433 0x00010000
66 #define VP_TV_STANDARD_PAL_G 0x00020000
67 #define VP_TV_STANDARD_PAL_60 0x00040000
68 #define VP_TV_STANDARD_SECAM_L1 0x00080000
69
70 /* VIDEOPARAMETERS.dwMode constants */
71 #define VP_CP_TYPE_APS_TRIGGER 0x00000001
72 #define VP_CP_TYPE_MACROVISION 0x00000002
73
74 /* VIDEOPARAMETERS.dwCPCommand constants */
75 #define VP_CP_CMD_ACTIVATE 0x00000001
76 #define VP_CP_CMD_DEACTIVATE 0x00000002
77 #define VP_CP_CMD_CHANGE 0x00000004
78
79 typedef struct _VIDEOPARAMETERS {
80 GUID Guid;
81 ULONG dwOffset;
82 ULONG dwCommand;
83 ULONG dwFlags;
84 ULONG dwMode;
85 ULONG dwTVStandard;
86 ULONG dwAvailableModes;
87 ULONG dwAvailableTVStandard;
88 ULONG dwFlickerFilter;
89 ULONG dwOverScanX;
90 ULONG dwOverScanY;
91 ULONG dwMaxUnscaledX;
92 ULONG dwMaxUnscaledY;
93 ULONG dwPositionX;
94 ULONG dwPositionY;
95 ULONG dwBrightness;
96 ULONG dwContrast;
97 ULONG dwCPType;
98 ULONG dwCPCommand;
99 ULONG dwCPStandard;
100 ULONG dwCPKey;
101 ULONG bCP_APSTriggerBits;
102 UCHAR bOEMCopyProtection[256];
103 } VIDEOPARAMETERS, *PVIDEOPARAMETERS, *LPVIDEOPARAMETERS;