7 #ifndef _MWUSB_CAPTURE_EXTENSION_H_
8 #define _MWUSB_CAPTURE_EXTENSION_H_
12 #include "MWCaptureExtension.h"
20 typedef int8_t bool_t;
21 typedef void* HUSBCHANNEL;
23 enum _MWCAP_HID_EXTENSION {
25 MWCAP_HID_CHANNEL_INFO = 1,
26 MWCAP_HID_FAMILY_INFO,
33 MWCAP_HID_POST_RECONFIG,
36 MWCAP_HID_NOTIFY_ENABLE,
37 MWCAP_HID_NOITFY_STATUS,
40 MWCAP_HID_VIDEO_INPUT_SOURCE_ARRAY,
41 MWCAP_HID_AUDIO_INPUT_SOURCE_ARRAY,
43 MWCAP_HID_INPUT_SOURCE_SCAN,
44 MWCAP_HID_INPUT_SOURCE_SCAN_STATE,
45 MWCAP_HID_AV_INPUT_SOURCE_LINK,
46 MWCAP_HID_VIDEO_INPUT_SOURCE,
47 MWCAP_HID_AUDIO_INPUT_SOURCE,
50 MWCAP_HID_INPUT_SPECIFIC_STATUS,
51 MWCAP_HID_VIDEO_SIGNAL_STATUS,
52 MWCAP_HID_AUDIO_SIGNAL_STATUS,
55 MWCAP_HID_VIDEO_INPUT_ASPECT_RATIO,
56 MWCAP_HID_VIDEO_INPUT_COLOR_FORMAT,
57 MWCAP_HID_VIDEO_INPUT_QUANTIZATION_RANGE,
59 MWCAP_HID_VIDEO_CAPTURE_CONNECTION_FORMAT,
60 MWCAP_HID_VIDEO_CAPTURE_PROCESS_SETTINGS,
63 MWCAP_HID_VIDEO_OUTPUT_FOURCC,
64 MWCAP_HID_VIDEO_OUTPUT_FRAME_SIZE,
65 MWCAP_HID_VIDEO_OUTPUT_FRAME_INTERVAL,
68 MWCAP_HID_VIDEO_AUTO_H_ALIGN = 0x90,
69 MWCAP_HID_VIDEO_SAMPLING_PHASE,
70 MWCAP_HID_VIDEO_SAMPLING_PHASE_AUTO,
71 MWCAP_HID_VIDEO_TIMING,
72 MWCAP_HID_VIDEO_PREFERRED_TIMING_ARRAY,
73 MWCAP_HID_VIDEO_CUSTOM_TIMING,
74 MWCAP_HID_VIDEO_CUSTOM_TIMING_ARRAY,
75 MWCAP_HID_VIDEO_CUSTOM_RESOLUTION_ARRAY,
79 MWCAP_HID_EDID_LOOP_THROUGH,
82 MWCAP_HID_LOOP_THROUGH,
85 MWCAP_HID_HDMI_INFOFRAME_VALID = 0xA0,
86 MWCAP_HID_HDMI_INFOFRAME_AVI,
87 MWCAP_HID_HDMI_INFOFRAME_AUDIO,
88 MWCAP_HID_HDMI_INFOFRAME_SPD,
89 MWCAP_HID_HDMI_INFOFRAME_MS,
90 MWCAP_HID_HDMI_INFOFRAME_VS,
91 MWCAP_HID_HDMI_INFOFRAME_ACP,
92 MWCAP_HID_HDMI_INFOFRAME_ISRC1,
93 MWCAP_HID_HDMI_INFOFRAME_ISRC2,
94 MWCAP_HID_HDMI_INFOFRAME_GAMUT,
97 MWCAP_HID_AUDIO_VOLUME_MICROPHONE = 0xB0,
98 MWCAP_HID_AUDIO_VOLUME_HEADPHONE,
99 MWCAP_HID_AUDIO_VOLUME_LINE_IN,
100 MWCAP_HID_AUDIO_VOLUME_LINE_OUT,
101 MWCAP_HID_AUDIO_VOLUME_EMBEDDED_CAPTURE,
102 MWCAP_HID_AUDIO_VOLUME_EMBEDDED_PLAYBACK,
103 MWCAP_HID_AUDIO_VOLUME_USB_CAPTURE,
104 MWCAP_HID_AUDIO_VOLUME_USB_PLAYBACK,
111 MWCAP_HID_FIRMWARE_STORAGE = 0xF0,
112 MWCAP_HID_FIRMWARE_ERASE,
113 MWCAP_HID_FIRMWARE_READ_ADDRESS,
114 MWCAP_HID_FIRMWARE_DATA,
115 MWCAP_HID_FIRMWARE_WIP,
118 MWCAP_HID_STATUS_IMAGE_MODE = 0xFC,
119 MWCAP_HID_DEVICE_NAME_MODE = 0xFD,
120 MWCAP_HID_OPTIONS_CONTROL = 0xFE,
123 MWCAP_HID_EXTENSION_SUPPORTED = 0xFF
126 typedef enum _MWUSBHOT_PLUG_EVETN {
127 USBHOT_PLUG_EVENT_DEVICE_ARRIVED = 1,
128 USBHOT_PLUG_EVENT_DEVICE_LEFT,
129 }MWUSBHOT_PLUG_EVETN;
131 typedef void(*LPFN_HOT_PLUG_CALLBACK)(MWUSBHOT_PLUG_EVETN event,
const char *pszDevicePath,
void* pParam);
133 #define MW_SERIAL_NO_LEN 16
134 #define MW_FAMILY_NAME_LEN 64
135 #define MW_PRODUCT_NAME_LEN 64
136 #define MW_FIRMWARE_NAME_LEN 64
140 uint8_t byBoardIndex;
141 uint32_t cbTotalMemorySize;
142 uint32_t cbFreeMemorySize;
146 uint8_t byNumInputSource;
147 uint32_t adwInputSources[16];
150 typedef enum _MWCAP_EDID_MODE {
151 MWCAP_EDID_MODE_FIXED = 0x01,
152 MWCAP_EDID_MODE_KEEP_LAST = 0x02,
153 MWCAP_EDID_MODE_ADD_AUDIO = 0x04,
154 MWCAP_EDID_MODE_LIMIT_PIXEL_CLOCK = 0x08
157 #define MWCAP_MAX_NUM_AUDIO_CHANNEL 16
166 bool_t abMute[MWCAP_MAX_NUM_AUDIO_CHANNEL];
167 int16_t asVolume[MWCAP_MAX_NUM_AUDIO_CHANNEL];
170 typedef enum _MWCAP_USB_AUDIO_NODE {
171 MWCAP_USB_AUDIO_MICROPHONE,
172 MWCAP_USB_AUDIO_HEADPHONE,
173 MWCAP_USB_AUDIO_LINE_IN,
174 MWCAP_USB_AUDIO_LINE_OUT,
175 MWCAP_USB_AUDIO_EMBEDDED_CAPTURE,
176 MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK,
177 MWCAP_USB_AUDIO_USB_CAPTURE,
178 MWCAP_USB_AUDIO_USB_PLAYBACK
179 } MWCAP_USB_AUDIO_NODE ;
188 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC 3
189 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE 24
190 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL 8
194 uint32_t adwFOURCCs[MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC];
205 MWSIZE aSizes[MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE];
211 uint32_t adwIntervals[MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL];
214 typedef enum _MWCAP_STATUS_IMAGE_MODE {
215 MWCAP_STATUS_IMAGE_DEFAULT,
216 MWCAP_STATUS_IMAGE_BLUE,
217 MWCAP_STATUS_IMAGE_BLACK
218 }MWCAP_STATUS_IMAGE_MODE;
220 typedef enum _MWCAP_DEVICE_NAME_MODE {
221 MWCAP_DEVICE_NAME_DEFAULT,
222 MWCAP_DEVICE_NAME_SERIAL_NUMBER
223 } MWCAP_DEVICE_NAME_MODE;
225 typedef enum _MWCAP_OPTIONS_CONTROL {
229 } MWCAP_OPTIONS_CONTROL;
232 uint8_t byNumTimings;
237 uint8_t byNumCustomTimings;
242 uint8_t byNumCustomResolutions;
243 MWSIZE aCustomResolutions[16];
247 #define MWCAP_USB_VIDEO_CAP_HDMI_LOOP_THROUGH 0x00000001
248 #define MWCAP_USB_VIDEO_CAP_SDI_LOOP_THROUGH 0x00000002
249 #define MWCAP_USB_VIDEO_CAP_PLANAR_FORMAT 0x00000004
251 #define MWCAP_USB_AUDIO_CAP_MICROPHONE (1 << MWCAP_USB_AUDIO_MICROPHONE)
252 #define MWCAP_USB_AUDIO_CAP_HEADPHONE (1 << MWCAP_USB_AUDIO_HEADPHONE)
253 #define MWCAP_USB_AUDIO_CAP_LINE_IN (1 << MWCAP_USB_AUDIO_LINE_IN)
254 #define MWCAP_USB_AUDIO_CAP_LINE_OUT (1 << MWCAP_USB_AUDIO_LINE_OUT)
255 #define MWCAP_USB_AUDIO_CAP_EMBEDDED_CAPTURE (1 << MWCAP_USB_AUDIO_EMBEDDED_CAPTURE)
256 #define MWCAP_USB_AUDIO_CAP_EMBEDDED_PLAYBACK (1 << MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK)
257 #define MWCAP_USB_AUDIO_CAP_USB_CAPTURE (1 << MWCAP_USB_AUDIO_USB_CAPTURE)
258 #define MWCAP_USB_AUDIO_CAP_USB_PLAYBACK (1 << MWCAP_USB_AUDIO_USB_PLAYBACK)
260 #define MWCAP_NOTIFY_VOLUME_MICROPHONE (1ULL << (48 + MWCAP_USB_AUDIO_MICROPHONE))
261 #define MWCAP_NOTIFY_VOLUME_HEADPHONE (1ULL << (48 + MWCAP_USB_AUDIO_HEADPHONE))
262 #define MWCAP_NOTIFY_VOLUME_LINE_IN (1ULL << (48 + MWCAP_USB_AUDIO_LINE_IN))
263 #define MWCAP_NOTIFY_VOLUME_LINE_OUT (1ULL << (48 + MWCAP_USB_AUDIO_LINE_OUT))
264 #define MWCAP_NOTIFY_VOLUME_EMBEDDED_CAPTURE (1ULL << (48 + MWCAP_USB_AUDIO_EMBEDDED_CAPTURE))
265 #define MWCAP_NOTIFY_VOLUME_EMBEDDED_PLAYBACK (1ULL << (48 + MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK))
266 #define MWCAP_NOTIFY_VOLUME_USB_CAPTURE (1ULL << (48 + MWCAP_USB_AUDIO_USB_CAPTURE))
267 #define MWCAP_NOTIFY_VOLUME_USB_PLAYBACK (1ULL << (48 + MWCAP_USB_AUDIO_USB_PLAYBACK))
269 enum _MWCAP_USB_SPEED_TYPE {
270 MWCAP_USB_FULL_SPEED = 0x01,
271 MWCAP_USB_HIGH_SPEED = 0x02,
272 MWCAP_USB_SUPER_SPEED_GEN1 = 0x03,
273 MWCAP_USB_SUPER_SPEED_GEN2 = 0x04
277 #define MWCAP_HID_EXTENSION_HDMI 0x00000001
278 #define MWCAP_HID_EXTENSION_TIMING 0x00000002
279 #define MWCAP_HID_EXTENSION_VOLUME 0x00000004
281 #define MWCAP_MAX_NUM_AUDIO_CHANNEL 16
283 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC 3
284 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE 24
285 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL 8
294 #endif //_MWUSB_CAPTURE_EXTENSION_H_
Definition: MWUSBCaptureExtension.h:138
Definition: MWUSBCaptureExtension.h:202
Definition: MWCaptureExtension.h:242
Definition: MWUSBCaptureExtension.h:241
Definition: MWUSBCaptureExtension.h:159
Definition: MWCaptureExtension.h:814
Definition: MWUSBCaptureExtension.h:192
Definition: MWUSBCaptureExtension.h:236
Definition: MWUSBCaptureExtension.h:231
Definition: MWUSBCaptureExtension.h:181
Definition: MWUSBCaptureExtension.h:208
Definition: MWUSBCaptureExtension.h:197