|
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 #ifndef __TVOUT_H |
|
24 #define __TVOUT_H |
|
25 |
|
26 #if __GNUC__ >=3 |
|
27 #pragma GCC system_header |
|
28 #endif |
|
29 |
|
30 #ifdef __cplusplus |
|
31 extern "C" { |
|
32 #endif |
|
33 |
|
34 #include "ntddk.h" |
|
35 |
|
36 /* VIDEOPARAMETERS.dwCommand constants */ |
|
37 #define VP_COMMAND_GET 0x00000001 |
|
38 #define VP_COMMAND_SET 0x00000002 |
|
39 |
|
40 /* VIDEOPARAMETERS.dwFlags constants */ |
|
41 #define VP_FLAGS_TV_MODE 0x00000001 |
|
42 #define VP_FLAGS_TV_STANDARD 0x00000002 |
|
43 #define VP_FLAGS_FLICKER 0x00000004 |
|
44 #define VP_FLAGS_OVERSCAN 0x00000008 |
|
45 #define VP_FLAGS_MAX_UNSCALED 0x00000010 |
|
46 #define VP_FLAGS_POSITION 0x00000020 |
|
47 #define VP_FLAGS_BRIGHTNESS 0x00000040 |
|
48 #define VP_FLAGS_CONTRAST 0x00000080 |
|
49 #define VP_FLAGS_COPYPROTECT 0x00000100 |
|
50 |
|
51 /* VIDEOPARAMETERS.dwMode constants */ |
|
52 #define VP_MODE_WIN_GRAPHICS 0x00000001 |
|
53 #define VP_MODE_TV_PLAYBACK 0x00000002 |
|
54 |
|
55 /* VIDEOPARAMETERS.dwTVStandard/dwAvailableTVStandard constants */ |
|
56 #define VP_TV_STANDARD_NTSC_M 0x00000001 |
|
57 #define VP_TV_STANDARD_NTSC_M_J 0x00000002 |
|
58 #define VP_TV_STANDARD_PAL_B 0x00000004 |
|
59 #define VP_TV_STANDARD_PAL_D 0x00000008 |
|
60 #define VP_TV_STANDARD_PAL_H 0x00000010 |
|
61 #define VP_TV_STANDARD_PAL_I 0x00000020 |
|
62 #define VP_TV_STANDARD_PAL_M 0x00000040 |
|
63 #define VP_TV_STANDARD_PAL_N 0x00000080 |
|
64 #define VP_TV_STANDARD_SECAM_B 0x00000100 |
|
65 #define VP_TV_STANDARD_SECAM_D 0x00000200 |
|
66 #define VP_TV_STANDARD_SECAM_G 0x00000400 |
|
67 #define VP_TV_STANDARD_SECAM_H 0x00000800 |
|
68 #define VP_TV_STANDARD_SECAM_K 0x00001000 |
|
69 #define VP_TV_STANDARD_SECAM_K1 0x00002000 |
|
70 #define VP_TV_STANDARD_SECAM_L 0x00004000 |
|
71 #define VP_TV_STANDARD_WIN_VGA 0x00008000 |
|
72 #define VP_TV_STANDARD_NTSC_433 0x00010000 |
|
73 #define VP_TV_STANDARD_PAL_G 0x00020000 |
|
74 #define VP_TV_STANDARD_PAL_60 0x00040000 |
|
75 #define VP_TV_STANDARD_SECAM_L1 0x00080000 |
|
76 |
|
77 /* VIDEOPARAMETERS.dwMode constants */ |
|
78 #define VP_CP_TYPE_APS_TRIGGER 0x00000001 |
|
79 #define VP_CP_TYPE_MACROVISION 0x00000002 |
|
80 |
|
81 /* VIDEOPARAMETERS.dwCPCommand constants */ |
|
82 #define VP_CP_CMD_ACTIVATE 0x00000001 |
|
83 #define VP_CP_CMD_DEACTIVATE 0x00000002 |
|
84 #define VP_CP_CMD_CHANGE 0x00000004 |
|
85 |
|
86 typedef struct _VIDEOPARAMETERS { |
|
87 GUID Guid; |
|
88 DWORD dwOffset; |
|
89 DWORD dwCommand; |
|
90 DWORD dwFlags; |
|
91 DWORD dwMode; |
|
92 DWORD dwTVStandard; |
|
93 DWORD dwAvailableModes; |
|
94 DWORD dwAvailableTVStandard; |
|
95 DWORD dwFlickerFilter; |
|
96 DWORD dwOverScanX; |
|
97 DWORD dwOverScanY; |
|
98 DWORD dwMaxUnscaledX; |
|
99 DWORD dwMaxUnscaledY; |
|
100 DWORD dwPositionX; |
|
101 DWORD dwPositionY; |
|
102 DWORD dwBrightness; |
|
103 DWORD dwContrast; |
|
104 DWORD dwCPType; |
|
105 DWORD dwCPCommand; |
|
106 DWORD dwCPStandard; |
|
107 DWORD dwCPKey; |
|
108 BYTE bCP_APSTriggerBits; |
|
109 BYTE bOEMCopyProtection[256]; |
|
110 } VIDEOPARAMETERS, *PVIDEOPARAMETERS, FAR *LPVIDEOPARAMETERS; |
|
111 |
|
112 #ifdef __cplusplus |
|
113 } |
|
114 #endif |
|
115 |
|
116 #endif /* __TVOUT_H */ |