annotate stream/tvi_dshow.h @ 29809:e255f9571156

Remove CONFIG_TV_TELETEXT. DVB teletext support is nearly finished, it will be possible to read teletext from file, it will not be depending on reception any more.
author cehoyos
date Sat, 07 Nov 2009 16:40:42 +0000
parents 0f1b5b68af32
children 774aa6f7399e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25607
diff changeset
1 #ifndef MPLAYER_TVI_DSHOW_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25607
diff changeset
2 #define MPLAYER_TVI_DSHOW_H
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
3
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
4 /// \defgroup tvi_dshow TV driver (Directshow)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
5
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
6 #define INITGUID
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
7 #include <inttypes.h>
27846
87da3db93a44 vfw.h needs a windows.h include before on MinGW64.
reimar
parents: 26029
diff changeset
8 #include <windows.h>
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
9 //#include <ole2.h>
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
10 #include <vfw.h>
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
11 #include "loader/dshow/mediatype.h"
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
12 #include "loader/dshow/guids.h"
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
13
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
14 #define wtoa(strW,strA,lenA) WideCharToMultiByte(0,0,strW,-1,strA,lenA,NULL,NULL)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
15 #define atow(strA,strW,lenW) MultiByteToWideChar(0,0,strA,strlen(strA),strW,lenW)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
16
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
17 typedef struct DISPPARAMS *LPDISPPARAMS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
18 typedef struct IFileSinkFilter *LPFILESINKFILTER;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
19 typedef struct IAMCopyCaptureFileProgress *LPAMCOPYCAPTUREFILEPROGRESS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
20 typedef struct IErrorLog *LPERRORLOG;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
21 typedef struct IAMTunerNotification *LPAMTUNERNOTIFICATION;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
22 typedef struct IFilterGraph *LPFILTERGRAPH;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
23 typedef struct IBaseFilter *LPBASEFILTER;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
24 typedef struct IPin *LPPIN;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
25 typedef struct IEnumPins *LPENUMPINS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
26 typedef struct IEnumFilters *LPENUMFILTERS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
27 typedef struct IEnumMediaTypes *LPENUMMEDIATYPES;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
28 typedef struct IReferenceClock *LPREFERENCECLOCK;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
29 typedef struct IMediaSample *LPMEDIASAMPLE;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
30 typedef struct IVideoWindow *LPVIDEOWINDOW;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
31
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27846
diff changeset
32 typedef struct
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
33 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
34 long cBuffers;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
35 long cbBuffer;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
36 long cbAlign;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
37 long cbPrefix;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
38 }ALLOCATOR_PROPERTIES;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
39
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
40 typedef
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
41 enum tagTunerInputType { TunerInputCable = 0,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
42 TunerInputAntenna = TunerInputCable + 1
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
43 } TunerInputType;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
44 typedef enum tagAMTunerModeType {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
45 AMTUNER_MODE_DEFAULT = 0x0000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
46 AMTUNER_MODE_TV = 0x0001,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
47 AMTUNER_MODE_FM_RADIO = 0x0002,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
48 AMTUNER_MODE_AM_RADIO = 0x0004,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
49 AMTUNER_MODE_DSS = 0x0008
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
50 } AMTunerModeType;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
51 enum tagAMTunerSubChannel { AMTUNER_SUBCHAN_NO_TUNE = -2,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
52 AMTUNER_SUBCHAN_DEFAULT = -1
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
53 } AMTunerSubChannel;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
54 typedef enum tagVideoProcAmpProperty {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
55 VideoProcAmp_Brightness,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
56 VideoProcAmp_Contrast,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
57 VideoProcAmp_Hue,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
58 VideoProcAmp_Saturation,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
59 VideoProcAmp_Sharpness,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
60 VideoProcAmp_Gamma,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
61 VideoProcAmp_ColorEnable,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
62 VideoProcAmp_WhiteBalance,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
63 VideoProcAmp_BacklightCompensation,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
64 VideoProcAmp_Gain
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
65 } VideoProcAmpProperty;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
66
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
67 typedef long OAFilterState;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
68 typedef
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
69 enum tagAnalogVideoStandard { AnalogVideo_None = 0,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
70 AnalogVideo_NTSC_M = 0x1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
71 AnalogVideo_NTSC_M_J = 0x2,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
72 AnalogVideo_NTSC_433 = 0x4,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
73 AnalogVideo_PAL_B = 0x10,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
74 AnalogVideo_PAL_D = 0x20,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
75 AnalogVideo_PAL_G = 0x40,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
76 AnalogVideo_PAL_H = 0x80,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
77 AnalogVideo_PAL_I = 0x100,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
78 AnalogVideo_PAL_M = 0x200,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
79 AnalogVideo_PAL_N = 0x400,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
80 AnalogVideo_PAL_60 = 0x800,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
81 AnalogVideo_SECAM_B = 0x1000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
82 AnalogVideo_SECAM_D = 0x2000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
83 AnalogVideo_SECAM_G = 0x4000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
84 AnalogVideo_SECAM_H = 0x8000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
85 AnalogVideo_SECAM_K = 0x10000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
86 AnalogVideo_SECAM_K1 = 0x20000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
87 AnalogVideo_SECAM_L = 0x40000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
88 AnalogVideo_SECAM_L1 = 0x80000
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
89 } AnalogVideoStandard;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
90
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
91
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
92 typedef LONG_PTR OAHWND;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
93 typedef enum tagPhysicalConnectorType { PhysConn_Video_Tuner = 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
94 PhysConn_Video_Composite = PhysConn_Video_Tuner + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
95 PhysConn_Video_SVideo = PhysConn_Video_Composite + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
96 PhysConn_Video_RGB = PhysConn_Video_SVideo + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
97 PhysConn_Video_YRYBY = PhysConn_Video_RGB + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
98 PhysConn_Video_SerialDigital = PhysConn_Video_YRYBY + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
99 PhysConn_Video_ParallelDigital = PhysConn_Video_SerialDigital + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
100 PhysConn_Video_SCSI = PhysConn_Video_ParallelDigital + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
101 PhysConn_Video_AUX = PhysConn_Video_SCSI + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
102 PhysConn_Video_1394 = PhysConn_Video_AUX + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
103 PhysConn_Video_USB = PhysConn_Video_1394 + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
104 PhysConn_Video_VideoDecoder = PhysConn_Video_USB + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
105 PhysConn_Video_VideoEncoder = PhysConn_Video_VideoDecoder + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
106 PhysConn_Video_SCART = PhysConn_Video_VideoEncoder + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
107 PhysConn_Video_Black = PhysConn_Video_SCART + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
108 PhysConn_Audio_Tuner = 0x1000,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
109 PhysConn_Audio_Line = PhysConn_Audio_Tuner + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
110 PhysConn_Audio_Mic = PhysConn_Audio_Line + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
111 PhysConn_Audio_AESDigital = PhysConn_Audio_Mic + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
112 PhysConn_Audio_SPDIFDigital = PhysConn_Audio_AESDigital + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
113 PhysConn_Audio_SCSI = PhysConn_Audio_SPDIFDigital + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
114 PhysConn_Audio_AUX = PhysConn_Audio_SCSI + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
115 PhysConn_Audio_1394 = PhysConn_Audio_AUX + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
116 PhysConn_Audio_USB = PhysConn_Audio_1394 + 1,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
117 PhysConn_Audio_AudioDecoder = PhysConn_Audio_USB + 1
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
118 } PhysicalConnectorType;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
119
25607
9d0b189ce1b2 Fix illegal identifiers: Names starting with __ or _ and uppercase are reserved
diego
parents: 24744
diff changeset
120 typedef struct VIDEO_STREAM_CONFIG_CAPS {
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
121 GUID guid; // will be MEDIATYPE_Video
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
122 ULONG VideoStandard; // logical OR of all AnalogVideoStandards
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
123 // supported
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
124 SIZE InputSize; // the inherent size of the incoming signal
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
125 // (every pixel unique)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
126 SIZE MinCroppingSize; // smallest rcSrc cropping rect allowed
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
127 SIZE MaxCroppingSize; // largest rcSrc cropping rect allowed
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
128 int CropGranularityX; // granularity of cropping size
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
129 int CropGranularityY;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
130 int CropAlignX; // alignment of cropping rect
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
131 int CropAlignY;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
132 SIZE MinOutputSize; // smallest bitmap stream can produce
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
133 SIZE MaxOutputSize; // largest bitmap stream can produce
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
134 int OutputGranularityX; // granularity of output bitmap size
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
135 int OutputGranularityY;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
136 int StretchTapsX; // 0, no stretch, 1 pix dup, 2 interp, ...
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
137 int StretchTapsY; // Describes quality of hardware scaler
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
138 int ShrinkTapsX; //
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
139 int ShrinkTapsY; //
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
140 LONGLONG MinFrameInterval; // 100 nS units
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
141 LONGLONG MaxFrameInterval;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
142 LONG MinBitsPerSecond;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
143 LONG MaxBitsPerSecond;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
144 } VIDEO_STREAM_CONFIG_CAPS, *PVIDEO_STREAM_CONFIG_CAPS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
145
25607
9d0b189ce1b2 Fix illegal identifiers: Names starting with __ or _ and uppercase are reserved
diego
parents: 24744
diff changeset
146 typedef struct AUDIO_STREAM_CONFIG_CAPS {
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
147 GUID guid;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
148 ULONG MinimumChannels;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
149 ULONG MaximumChannels;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
150 ULONG ChannelsGranularity;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
151 ULONG MinimumBitsPerSample;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
152 ULONG MaximumBitsPerSample;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
153 ULONG BitsPerSampleGranularity;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
154 ULONG MinimumSampleFrequency;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
155 ULONG MaximumSampleFrequency;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
156 ULONG SampleFrequencyGranularity;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
157 } AUDIO_STREAM_CONFIG_CAPS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
158
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
159 typedef enum tagVideoProcAmpFlags {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
160 VideoProcAmp_Flags_Auto = 0x0001,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
161 VideoProcAmp_Flags_Manual = 0x0002
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
162 } VideoProcAmpFlags;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
163 typedef enum {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
164 PINDIR_INPUT = 0,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
165 PINDIR_OUTPUT
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
166 } PIN_DIRECTION;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
167
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
168 #define KSPROPERTY_SUPPORT_GET 1
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
169 #define KSPROPERTY_SUPPORT_SET 2
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
170 typedef struct {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
171 GUID Set;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
172 ULONG Id;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
173 ULONG Flags;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
174 } KSIDENTIFIER;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
175
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
176 typedef KSIDENTIFIER KSPROPERTY;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
177
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
178
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
179 typedef struct {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
180 KSPROPERTY Property;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
181 ULONG Mode; // IN: KSPROPERTY_TUNER_MODE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
182 ULONG StandardsSupported; // KS_AnalogVideo_* (if TV or DSS)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
183 ULONG MinFrequency; // Hz
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
184 ULONG MaxFrequency; // Hz
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
185 ULONG TuningGranularity; // Hz
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
186 ULONG NumberOfInputs; // count of inputs
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
187 ULONG SettlingTime; // milliSeconds
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
188 ULONG Strategy; // KS_TUNER_STRATEGY
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
189 } KSPROPERTY_TUNER_MODE_CAPS_S, *PKSPROPERTY_TUNER_MODE_CAPS_S;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
190
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
191 typedef struct {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
192 KSPROPERTY Property;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
193 ULONG Mode; // IN: KSPROPERTY_TUNER_MODE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
194 } KSPROPERTY_TUNER_MODE_S, *PKSPROPERTY_TUNER_MODE_S;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
195
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
196 typedef struct {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
197 KSPROPERTY Property;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
198 ULONG Frequency; // Hz
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
199 ULONG LastFrequency; // Hz (last known good)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
200 ULONG TuningFlags; // KS_TUNER_TUNING_FLAGS
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
201 ULONG VideoSubChannel; // DSS
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
202 ULONG AudioSubChannel; // DSS
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
203 ULONG Channel; // VBI decoders
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
204 ULONG Country; // VBI decoders
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
205 } KSPROPERTY_TUNER_FREQUENCY_S, *PKSPROPERTY_TUNER_FREQUENCY_S;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
206 typedef struct {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
207 KSPROPERTY Property;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
208 ULONG CurrentFrequency;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
209 ULONG PLLOffset;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
210 ULONG SignalStrength;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
211 ULONG Busy;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
212 } KSPROPERTY_TUNER_STATUS_S, *PKSPROPERTY_TUNER_STATUS_S;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
213 typedef enum {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
214 KS_TUNER_TUNING_EXACT = 1, // No fine tuning
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
215 KS_TUNER_TUNING_FINE, // Fine grained search
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
216 KS_TUNER_TUNING_COARSE, // Coarse search
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
217 } KS_TUNER_TUNING_FLAGS;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
218
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
219 typedef enum {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
220 KSPROPERTY_TUNER_CAPS, // R -overall device capabilities
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
221 KSPROPERTY_TUNER_MODE_CAPS, // R -capabilities in this mode
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
222 KSPROPERTY_TUNER_MODE, // RW -set a mode (TV, FM, AM, DSS)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
223 KSPROPERTY_TUNER_STANDARD, // R -get TV standard (only if TV mode)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
224 KSPROPERTY_TUNER_FREQUENCY, // RW -set/get frequency
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
225 KSPROPERTY_TUNER_INPUT, // RW -select an input
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
226 KSPROPERTY_TUNER_STATUS, // R -tuning status
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
227 KSPROPERTY_TUNER_IF_MEDIUM // R O-Medium for IF or Transport Pin
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
228 } KSPROPERTY_TUNER;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
229 typedef enum {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
230 KS_TUNER_STRATEGY_PLL = 0X01, // Tune by PLL offset
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
231 KS_TUNER_STRATEGY_SIGNAL_STRENGTH = 0X02, // Tune by signal strength
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
232 KS_TUNER_STRATEGY_DRIVER_TUNES = 0X04, // Driver does fine tuning
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
233 } KS_TUNER_STRATEGY;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
234 typedef enum tagTVAudioMode {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
235 AMTVAUDIO_MODE_MONO = 0x0001,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
236 AMTVAUDIO_MODE_STEREO = 0x0002,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
237 AMTVAUDIO_MODE_LANG_A = 0x0010,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
238 AMTVAUDIO_MODE_LANG_B = 0x0020,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
239 AMTVAUDIO_MODE_LANG_C = 0x0040,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
240 } TVAudioMode;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
241
25607
9d0b189ce1b2 Fix illegal identifiers: Names starting with __ or _ and uppercase are reserved
diego
parents: 24744
diff changeset
242 typedef struct FilterInfo {
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
243 WCHAR achName[128];
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
244 LPFILTERGRAPH pGraph;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
245 } FILTER_INFO;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
246
25607
9d0b189ce1b2 Fix illegal identifiers: Names starting with __ or _ and uppercase are reserved
diego
parents: 24744
diff changeset
247 typedef struct PinInfo {
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
248 LPBASEFILTER pFilter;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
249 PIN_DIRECTION dir;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
250 unsigned short achName[128];
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
251 } PIN_INFO;
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
252 //-----------------------------------
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
253
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
254
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
255 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
256 #define INTERFACE IPin
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
257 DECLARE_INTERFACE(IPin)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
258 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
259 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
260 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
261 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
262 STDMETHOD(Connect) (THIS_ IPin *, AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
263 STDMETHOD(ReceiveConnection) (THIS_ IPin *, const AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
264 STDMETHOD(Disconnect) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
265 STDMETHOD(ConnectedTo) (THIS_ IPin **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
266 STDMETHOD(ConnectionMediaType) (THIS_ AM_MEDIA_TYPE * pmt);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
267 STDMETHOD(QueryPinInfo) (THIS_ PIN_INFO *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
268 STDMETHOD(QueryDirection) (THIS_ PIN_DIRECTION *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
269 STDMETHOD(QueryId) (THIS_ unsigned short **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
270 STDMETHOD(QueryAccept) (THIS_ const AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
271 STDMETHOD(EnumMediaTypes) (THIS_ LPENUMMEDIATYPES *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
272 STDMETHOD(QueryInternalConnections) (THIS_ IPin **, unsigned long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
273 STDMETHOD(EndOfStream) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
274 STDMETHOD(BeginFlush) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
275 STDMETHOD(EndFlush) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
276 STDMETHOD(NewSegment) (THIS_ REFERENCE_TIME, REFERENCE_TIME, double);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
277 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
278
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
279 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
280 #define INTERFACE IBaseFilter
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
281 DECLARE_INTERFACE(IBaseFilter)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
282 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
283 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
284 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
285 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
286 STDMETHOD(GetClassID) (THIS_ CLSID * pClassID);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
287 STDMETHOD(Stop) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
288 STDMETHOD(Pause) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
289 STDMETHOD(Run) (THIS_ REFERENCE_TIME tStart);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
290 STDMETHOD(GetState) (THIS_ unsigned long, void *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
291 STDMETHOD(SetSyncSource) (THIS_ LPREFERENCECLOCK);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
292 STDMETHOD(GetSyncSource) (THIS_ LPREFERENCECLOCK *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
293 STDMETHOD(EnumPins) (THIS_ LPENUMPINS *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
294 STDMETHOD(FindPin) (THIS_ const unsigned short *, LPPIN *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
295 STDMETHOD(QueryFilterInfo) (THIS_ void *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
296 STDMETHOD(JoinFilterGraph) (THIS_ LPFILTERGRAPH,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
297 const unsigned short *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
298 STDMETHOD(QueryVendorInfo) (THIS_ unsigned short **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
299 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
300
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
301 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
302 #define INTERFACE IAMTVTuner
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
303 DECLARE_INTERFACE(IAMTVTuner)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
304 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
305 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
306 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
307 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
308 STDMETHOD(put_Channel) (THIS_ long, long, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
309 STDMETHOD(get_Channel) (THIS_ long *, long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
310 STDMETHOD(ChannelMinMax) (THIS_ long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
311 STDMETHOD(put_CountryCode) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
312 STDMETHOD(get_CountryCode) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
313 STDMETHOD(put_TuningSpace) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
314 STDMETHOD(get_TuningSpace) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
315 STDMETHOD(Logon) (THIS_ HANDLE);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
316 STDMETHOD(Logout) (IAMTVTuner *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
317 STDMETHOD(SignalPresen) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
318 STDMETHOD(put_Mode) (THIS_ AMTunerModeType);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
319 STDMETHOD(get_Mode) (THIS_ AMTunerModeType *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
320 STDMETHOD(GetAvailableModes) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
321 STDMETHOD(RegisterNotificationCallBack) (THIS_ LPAMTUNERNOTIFICATION,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
322 long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
323 STDMETHOD(UnRegisterNotificationCallBack) (THIS_
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
324 LPAMTUNERNOTIFICATION);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
325 STDMETHOD(get_AvailableTVFormats) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
326 STDMETHOD(get_TVFormat) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
327 STDMETHOD(AutoTune) (THIS_ long, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
328 STDMETHOD(StoreAutoTune) (IAMTVTuner *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
329 STDMETHOD(get_NumInputConnections) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
330 STDMETHOD(put_InputType) (THIS_ long, TunerInputType);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
331 STDMETHOD(get_InputType) (THIS_ long, TunerInputType *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
332 STDMETHOD(put_ConnectInput) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
333 STDMETHOD(get_ConnectInput) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
334 STDMETHOD(get_VideoFrequency) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
335 STDMETHOD(get_AudioFrequency) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
336 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
337
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
338 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
339 #define INTERFACE IMediaControl
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
340 DECLARE_INTERFACE(IMediaControl)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
341 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
342 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
343 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
344 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
345 STDMETHOD(GetTypeInfoCount) (THIS_ UINT *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
346 STDMETHOD(GetTypeInfo) (THIS_ UINT, LCID, LPTYPEINFO *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
347 STDMETHOD(GetIDsOfNames) (THIS_ REFIID, LPOLESTR *, UINT, LCID,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
348 DISPID *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
349 STDMETHOD(Invoke) (THIS_ DISPID, REFIID, LCID, WORD, LPDISPPARAMS,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
350 VARIANT *, EXCEPINFO *, UINT *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
351 STDMETHOD(Run) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
352 STDMETHOD(Pause) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
353 STDMETHOD(Stop) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
354 STDMETHOD(GetState) (THIS_ LONG, OAFilterState *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
355 STDMETHOD(RenderFile) (THIS_ BSTR);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
356 STDMETHOD(AddSourceFilter) (THIS_ BSTR, LPDISPATCH *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
357 STDMETHOD(get_FilterCollection) (THIS_ LPDISPATCH *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
358 STDMETHOD(get_RegFilterCollection) (THIS_ LPDISPATCH *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
359 STDMETHOD(StopWhenReady) (IMediaControl *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
360 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
361
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
362 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
363 #define INTERFACE IGraphBuilder
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
364 DECLARE_INTERFACE(IGraphBuilder)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
365 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
366 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
367 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
368 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
369 STDMETHOD(AddFilter) (THIS_ IBaseFilter *, LPCWSTR);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
370 STDMETHOD(RemoveFilter) (THIS_ IBaseFilter *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
371 STDMETHOD(EnumFilters) (THIS_ LPENUMFILTERS *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
372 STDMETHOD(FindFilterByName) (THIS_ LPCWSTR, IBaseFilter **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
373 STDMETHOD(ConnectDirect) (THIS_ IPin *, IPin *, const AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
374 STDMETHOD(Reconnect) (THIS_ IPin *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
375 STDMETHOD(Disconnect) (THIS_ IPin *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
376 STDMETHOD(SetDefaultSyncSource) (IGraphBuilder *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
377 STDMETHOD(Connect) (THIS_ IPin *, IPin *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
378 STDMETHOD(Render) (THIS_ IPin *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
379 STDMETHOD(RenderFile) (THIS_ LPCWSTR, LPCWSTR);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
380 STDMETHOD(AddSourceFilter) (THIS_ LPCWSTR, LPCWSTR, IBaseFilter **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
381 STDMETHOD(SetLogFile) (THIS_ DWORD_PTR);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
382 STDMETHOD(Abort) (IGraphBuilder *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
383 STDMETHOD(ShouldOperationContinue) (IGraphBuilder *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
384 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
385
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
386
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
387 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
388 #define INTERFACE ICaptureGraphBuilder2
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
389 DECLARE_INTERFACE(ICaptureGraphBuilder2)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
390 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
391 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
392 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
393 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
394 STDMETHOD(SetFiltergraph) (THIS_ IGraphBuilder *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
395 STDMETHOD(GetFiltergraph) (THIS_ IGraphBuilder **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
396 STDMETHOD(SetOutputFileName) (THIS_ const GUID *, LPCOLESTR,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
397 IBaseFilter **, LPFILESINKFILTER *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
398 STDMETHOD(FindInterface) (THIS_ const GUID *, const GUID *,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
399 IBaseFilter *, REFIID, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
400 STDMETHOD(RenderStream) (THIS_ const GUID *, const GUID *, IUnknown *,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
401 IBaseFilter *, IBaseFilter *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
402 STDMETHOD(ControlStream) (THIS_ const GUID *, const GUID *,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
403 IBaseFilter *, REFERENCE_TIME *,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
404 REFERENCE_TIME *, WORD, WORD);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
405 STDMETHOD(AllocCapFile) (THIS_ LPCOLESTR, DWORDLONG);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
406 STDMETHOD(CopyCaptureFile) (THIS_ LPOLESTR, LPOLESTR, int,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
407 LPAMCOPYCAPTUREFILEPROGRESS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
408 STDMETHOD(FindPin) (THIS_ IUnknown *, PIN_DIRECTION, const GUID *,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
409 const GUID *, BOOL, int, IPin **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
410 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
411
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
412 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
413 #define INTERFACE ICreateDevEnum
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
414 DECLARE_INTERFACE(ICreateDevEnum)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
415 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
416 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
417 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
418 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
419 STDMETHOD(CreateClassEnumerator) (THIS_ REFCLSID, IEnumMoniker **,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
420 DWORD);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
421 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
422
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
423 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
424 #define INTERFACE IAMCrossbar
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
425 DECLARE_INTERFACE(IAMCrossbar)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
426 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
427 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
428 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
429 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
430 STDMETHOD(get_PinCounts) (THIS_ long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
431 STDMETHOD(CanRoute) (THIS_ long, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
432 STDMETHOD(Route) (THIS_ long, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
433 STDMETHOD(get_IsRoutedTo) (THIS_ long, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
434 STDMETHOD(get_CrossbarPinInfo) (THIS_ BOOL, long, long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
435 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
436
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
437 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
438 #define INTERFACE IPropertyBag
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
439 DECLARE_INTERFACE(IPropertyBag)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
440 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
441 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
442 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
443 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
444 STDMETHOD(Read) (THIS_ LPCOLESTR, LPVARIANT, LPERRORLOG);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
445 STDMETHOD(Write) (THIS_ LPCOLESTR, LPVARIANT);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
446 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
447
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
448 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
449 #define INTERFACE IAMStreamConfig
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
450 DECLARE_INTERFACE(IAMStreamConfig)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
451 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
452 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
453 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
454 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
455 HRESULT(STDMETHODCALLTYPE * SetFormat) (THIS_ AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
456 HRESULT(STDMETHODCALLTYPE * GetFormat) (THIS_ AM_MEDIA_TYPE **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
457 HRESULT(STDMETHODCALLTYPE * GetNumberOfCapabilities) (THIS_ int *,int *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
458 HRESULT(STDMETHODCALLTYPE * GetStreamCaps) (THIS_ int,AM_MEDIA_TYPE **, BYTE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
459 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
460
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
461 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
462 #define INTERFACE IAMVideoProcAmp
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
463 DECLARE_INTERFACE(IAMVideoProcAmp)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
464 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
465 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
466 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
467 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
468 STDMETHOD(GetRange) (THIS_ long, long *, long *, long *, long *,long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
469 STDMETHOD(Set) (THIS_ long, long, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
470 STDMETHOD(Get) (THIS_ long, long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
471 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
472
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
473 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
474 #define INTERFACE IKsPropertySet
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
475 DECLARE_INTERFACE(IKsPropertySet)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
476 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
477 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
478 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
479 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
480 HRESULT(STDMETHODCALLTYPE * Set) (THIS_ REFGUID, DWORD, LPVOID, DWORD,LPVOID, DWORD);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
481 HRESULT(STDMETHODCALLTYPE * Get) (THIS_ REFGUID, DWORD, LPVOID, DWORD,LPVOID, DWORD, DWORD *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
482 HRESULT(STDMETHODCALLTYPE * QuerySupported) (THIS_ REFGUID, DWORD,DWORD *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
483 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
484
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
485 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
486 #define INTERFACE IAMAnalogVideoDecoder
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
487 DECLARE_INTERFACE(IAMAnalogVideoDecoder)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
488 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
489 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
490 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
491 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
492 STDMETHOD(get_AvailableTVFormats) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
493 STDMETHOD(put_TVFormat) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
494 STDMETHOD(get_TVFormat) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
495 STDMETHOD(get_HorizontalLocked) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
496 STDMETHOD(put_VCRHorizontalLocking) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
497 STDMETHOD(get_VCRHorizontalLocking) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
498 STDMETHOD(get_NumberOfLines) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
499 STDMETHOD(put_OutputEnable) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
500 STDMETHOD(get_OutputEnable) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
501 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
502
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
503 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
504 #define INTERFACE IAMTVAudio
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
505 DECLARE_INTERFACE(IAMTVAudio)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
506 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
507 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
508 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
509 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
510 STDMETHOD(GetHardwareSupportedTVAudioModes) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
511 STDMETHOD(GetAvailableTVAudioModes) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
512 STDMETHOD(get_TVAudioMode) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
513 STDMETHOD(put_TVAudioMode) (THIS_ long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
514 STDMETHOD(RegisterNotificationCallBack) (THIS_ LPAMTUNERNOTIFICATION,
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
515 long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
516 STDMETHOD(UnRegisterNotificationCallBack) (THIS_
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
517 LPAMTUNERNOTIFICATION);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
518 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
519
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
520
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
521 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
522 #define INTERFACE ISampleGrabberCB
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
523 DECLARE_INTERFACE(ISampleGrabberCB)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
524 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
525 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
526 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
527 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
528 STDMETHOD(SampleCB) (THIS_ double, LPMEDIASAMPLE);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
529 STDMETHOD(BufferCB) (THIS_ double, BYTE *, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
530 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
531
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
532 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
533 #define INTERFACE ISampleGrabber
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
534 DECLARE_INTERFACE(ISampleGrabber)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
535 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
536 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
537 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
538 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
539 STDMETHOD(SetOneShot) (THIS_ BOOL);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
540 STDMETHOD(SetMediaType) (THIS_ const AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
541 STDMETHOD(GetConnectedMediaType) (THIS_ AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
542 STDMETHOD(SetBufferSamples) (THIS_ BOOL);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
543 STDMETHOD(GetCurrentBuffer) (THIS_ long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
544 STDMETHOD(GetCurrentSample) (THIS_ LPMEDIASAMPLE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
545 STDMETHOD(SetCallback) (THIS_ ISampleGrabberCB *, long);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
546 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
547
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
548 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
549 #define INTERFACE IFilterGraph
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
550 DECLARE_INTERFACE(IFilterGraph)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
551 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
552 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
553 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
554 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
555 STDMETHOD(AddFilter) (THIS_ LPBASEFILTER, LPCWSTR);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
556 STDMETHOD(RemoveFilter) (THIS_ LPBASEFILTER);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
557 STDMETHOD(EnumFilters) (THIS_ LPENUMFILTERS *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
558 STDMETHOD(FindFilterByName) (THIS_ LPCWSTR, LPBASEFILTER *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
559 STDMETHOD(ConnectDirect) (THIS_ IPin *, IPin *, const AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
560 STDMETHOD(Reconnect) (THIS_ LPPIN);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
561 STDMETHOD(Disconnect) (THIS_ LPPIN);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
562 STDMETHOD(SetDefaultSyncSource) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
563 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
564
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
565 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
566 #define INTERFACE IAMAudioInputMixer
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
567 DECLARE_INTERFACE(IAMAudioInputMixer)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
568 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
569 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
570 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
571 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
572 STDMETHOD(put_Enable) (THIS_ BOOL);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
573 STDMETHOD(get_Enable) (THIS_ BOOL *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
574 STDMETHOD(put_Mono) (THIS_ BOOL);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
575 STDMETHOD(get_Mono) (THIS_ BOOL *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
576 STDMETHOD(put_MixLevel) (THIS_ double);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
577 STDMETHOD(get_MixLevel) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
578 STDMETHOD(put_Pan) (THIS_ double);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
579 STDMETHOD(get_Pan) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
580 STDMETHOD(put_Loudness) (THIS_ BOOL);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
581 STDMETHOD(get_Loudness) (THIS_ BOOL *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
582 STDMETHOD(put_Treble) (THIS_ double);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
583 STDMETHOD(get_Treble) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
584 STDMETHOD(get_TrebleRange) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
585 STDMETHOD(put_Bass) (THIS_ double);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
586 STDMETHOD(get_Bass) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
587 STDMETHOD(get_BassRange) (THIS_ double *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
588 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
589
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
590
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
591 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
592 #define INTERFACE IMediaSample
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
593 DECLARE_INTERFACE(IMediaSample)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
594 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
595 STDMETHOD(QueryInterface) (THIS_ const GUID *, void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
596 STDMETHOD_(long, AddRef) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
597 STDMETHOD_(long, Release) (THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
598 STDMETHOD(GetPointer )(THIS_ unsigned char** );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
599 STDMETHOD_(LONG,GetSize )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
600 STDMETHOD(GetTime )(THIS_ REFERENCE_TIME* ,REFERENCE_TIME* );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
601 STDMETHOD(SetTime )(THIS_ REFERENCE_TIME* ,REFERENCE_TIME* );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
602 STDMETHOD(IsSyncPoint )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
603 STDMETHOD(SetSyncPoint )(THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
604 STDMETHOD(IsPreroll )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
605 STDMETHOD(SetPreroll )(THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
606 STDMETHOD_(LONG,GetActualDataLength)(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
607 STDMETHOD(SetActualDataLength )(THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
608 STDMETHOD(GetMediaType )(THIS_ AM_MEDIA_TYPE** );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
609 STDMETHOD(SetMediaType )(THIS_ AM_MEDIA_TYPE* );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
610 STDMETHOD(IsDiscontinuity )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
611 STDMETHOD(SetDiscontinuity )(THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
612 STDMETHOD(GetMediaTime )(THIS_ long long* ,long long* );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
613 STDMETHOD(SetMediaTime )(THIS_ long long* ,long long* );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
614 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
615
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27846
diff changeset
616
24744
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
617 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
618 #define INTERFACE IAMBufferNegotiation
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
619 DECLARE_INTERFACE(IAMBufferNegotiation)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
620 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
621 STDMETHOD(QueryInterface )(THIS_ REFIID ,void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
622 STDMETHOD_(ULONG,AddRef )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
623 STDMETHOD_(ULONG,Release )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
624 STDMETHOD(SuggestAllocatorProperties )(THIS_ const ALLOCATOR_PROPERTIES *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
625 STDMETHOD(GetAllocatorProperties )(THIS_ ALLOCATOR_PROPERTIES *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
626 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
627
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
628
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
629 #undef INTERFACE
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
630 #define INTERFACE IVideoWindow
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
631 DECLARE_INTERFACE(IVideoWindow)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
632 {
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
633 STDMETHOD(QueryInterface )(THIS_ REFIID ,void **);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
634 STDMETHOD_(ULONG,AddRef )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
635 STDMETHOD_(ULONG,Release )(THIS);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
636 STDMETHOD(GetTypeInfoCount) (THIS_ UINT * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
637 STDMETHOD(GetTypeInfo) (THIS_ UINT ,LCID , ITypeInfo ** );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
638 STDMETHOD(GetIDsOfNames) (THIS_ REFIID ,LPOLESTR * , UINT ,LCID , DISPID * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
639 STDMETHOD(Invoke) (THIS_ DISPID ,REFIID , LCID , WORD ,void *, VARIANT * ,EXCEPINFO * , UINT * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
640 STDMETHOD(put_Caption) (THIS_ BSTR );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
641 STDMETHOD(get_Caption) (THIS_ BSTR * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
642 STDMETHOD(put_WindowStyle) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
643 STDMETHOD(get_WindowStyle) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
644 STDMETHOD(put_WindowStyleEx) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
645 STDMETHOD(get_WindowStyleEx) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
646 STDMETHOD(put_AutoShow) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
647 STDMETHOD(get_AutoShow) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
648 STDMETHOD(put_WindowState) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
649 STDMETHOD(get_WindowState) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
650 STDMETHOD(put_BackgroundPalette) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
651 STDMETHOD(get_BackgroundPalette) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
652 STDMETHOD(put_Visible) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
653 STDMETHOD(get_Visible) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
654 STDMETHOD(put_Left) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
655 STDMETHOD(get_Left) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
656 STDMETHOD(put_Width) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
657 STDMETHOD(get_Width) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
658 STDMETHOD(put_Top) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
659 STDMETHOD(get_Top) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
660 STDMETHOD(put_Height) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
661 STDMETHOD(get_Height) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
662 STDMETHOD(put_Owner) (THIS_ OAHWND );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
663 STDMETHOD(get_Owner) (THIS_ OAHWND * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
664 STDMETHOD(put_MessageDrain) (THIS_ OAHWND );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
665 STDMETHOD(get_MessageDrain) (THIS_ OAHWND * );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
666 STDMETHOD(get_BorderColor) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
667 STDMETHOD(put_BorderColor) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
668 STDMETHOD(get_FullScreenMode) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
669 STDMETHOD(put_FullScreenMode) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
670 STDMETHOD(SetWindowForeground) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
671 STDMETHOD(NotifyOwnerMessage) (THIS_ OAHWND ,long , LONG_PTR ,LONG_PTR );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
672 STDMETHOD(SetWindowPosition) (THIS_ long ,long , long ,long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
673 STDMETHOD(GetWindowPosition) (THIS_ long *,long *, long *,long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
674 STDMETHOD(GetMinIdealImageSize) (THIS_ long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
675 STDMETHOD(GetMaxIdealImageSize) (THIS_ long *, long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
676 STDMETHOD(GetRestorePosition) (THIS_ long *,long *, long *,long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
677 STDMETHOD(HideCursor) (THIS_ long );
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
678 STDMETHOD(IsCursorHidden) (THIS_ long *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
679 };
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
680
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
681 DECLARE_ENUMERATOR_(IEnumFilters, LPBASEFILTER);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
682 DECLARE_ENUMERATOR_(IEnumPins, LPPIN);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
683 DECLARE_ENUMERATOR_(IEnumMediaTypes, AM_MEDIA_TYPE *);
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
684
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
685 #define OLE_CALL(p,method) (p)->lpVtbl->method(p)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
686 #ifdef __GNUC__
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
687 #define OLE_CALL_ARGS(p, method, a1, args...) (p)->lpVtbl->method(p, a1, ##args)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
688 #else
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
689 #define OLE_CALL_ARGS(p, method, ...) (p)->lpVtbl->method(p, __VA_ARGS__)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
690 #endif
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
691 #define OLE_RELEASE_SAFE(p) if(p){ OLE_CALL((IUnknown*)p,Release); p=NULL;}
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
692 #define OLE_QUERYINTERFACE(p,iface,ptr) OLE_CALL_ARGS((IUnknown*)p,QueryInterface,&iface,(void*)&ptr)
d81eef9beb1b DirectShow based tv:// driver for win32
voroshil
parents:
diff changeset
693
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25607
diff changeset
694 #endif /* MPLAYER_TVI_DSHOW_H */