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 153 uint8_t byNumInputSource;
154 uint32_t adwInputSources[16];
164 typedef enum _MWCAP_EDID_MODE {
165 MWCAP_EDID_MODE_FIXED = 0x01,
166 MWCAP_EDID_MODE_KEEP_LAST = 0x02,
167 MWCAP_EDID_MODE_ADD_AUDIO = 0x04,
168 MWCAP_EDID_MODE_LIMIT_PIXEL_CLOCK = 0x08
171 #define MWCAP_MAX_NUM_AUDIO_CHANNEL 16 180 bool_t abMute[MWCAP_MAX_NUM_AUDIO_CHANNEL];
181 int16_t asVolume[MWCAP_MAX_NUM_AUDIO_CHANNEL];
184 typedef enum _MWCAP_USB_AUDIO_NODE {
185 MWCAP_USB_AUDIO_MICROPHONE,
186 MWCAP_USB_AUDIO_HEADPHONE,
187 MWCAP_USB_AUDIO_LINE_IN,
188 MWCAP_USB_AUDIO_LINE_OUT,
189 MWCAP_USB_AUDIO_EMBEDDED_CAPTURE,
190 MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK,
191 MWCAP_USB_AUDIO_USB_CAPTURE,
192 MWCAP_USB_AUDIO_USB_PLAYBACK
193 } MWCAP_USB_AUDIO_NODE ;
202 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC 3 203 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE 24 204 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL 8 208 uint32_t adwFOURCCs[MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC];
219 MWSIZE aSizes[MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE];
225 uint32_t adwIntervals[MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL];
228 typedef enum _MWCAP_STATUS_IMAGE_MODE {
229 MWCAP_STATUS_IMAGE_DEFAULT,
230 MWCAP_STATUS_IMAGE_BLUE,
231 MWCAP_STATUS_IMAGE_BLACK
232 }MWCAP_STATUS_IMAGE_MODE;
234 typedef enum _MWCAP_DEVICE_NAME_MODE {
235 MWCAP_DEVICE_NAME_DEFAULT,
236 MWCAP_DEVICE_NAME_SERIAL_NUMBER
237 } MWCAP_DEVICE_NAME_MODE;
239 typedef enum _MWCAP_OPTIONS_CONTROL {
243 } MWCAP_OPTIONS_CONTROL;
246 uint8_t byNumTimings;
251 uint8_t byNumCustomTimings;
256 uint8_t byNumCustomResolutions;
257 MWSIZE aCustomResolutions[16];
267 int nFrameDurationDen;
268 int nFrameDurationNum;
273 #define MWCAP_USB_VIDEO_CAP_HDMI_LOOP_THROUGH 0x00000001 274 #define MWCAP_USB_VIDEO_CAP_SDI_LOOP_THROUGH 0x00000002 275 #define MWCAP_USB_VIDEO_CAP_PLANAR_FORMAT 0x00000004 277 #define MWCAP_USB_AUDIO_CAP_MICROPHONE (1 << MWCAP_USB_AUDIO_MICROPHONE) 278 #define MWCAP_USB_AUDIO_CAP_HEADPHONE (1 << MWCAP_USB_AUDIO_HEADPHONE) 279 #define MWCAP_USB_AUDIO_CAP_LINE_IN (1 << MWCAP_USB_AUDIO_LINE_IN) 280 #define MWCAP_USB_AUDIO_CAP_LINE_OUT (1 << MWCAP_USB_AUDIO_LINE_OUT) 281 #define MWCAP_USB_AUDIO_CAP_EMBEDDED_CAPTURE (1 << MWCAP_USB_AUDIO_EMBEDDED_CAPTURE) 282 #define MWCAP_USB_AUDIO_CAP_EMBEDDED_PLAYBACK (1 << MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK) 283 #define MWCAP_USB_AUDIO_CAP_USB_CAPTURE (1 << MWCAP_USB_AUDIO_USB_CAPTURE) 284 #define MWCAP_USB_AUDIO_CAP_USB_PLAYBACK (1 << MWCAP_USB_AUDIO_USB_PLAYBACK) 286 #define MWCAP_NOTIFY_VOLUME_MICROPHONE (1ULL << (48 + MWCAP_USB_AUDIO_MICROPHONE)) 287 #define MWCAP_NOTIFY_VOLUME_HEADPHONE (1ULL << (48 + MWCAP_USB_AUDIO_HEADPHONE)) 288 #define MWCAP_NOTIFY_VOLUME_LINE_IN (1ULL << (48 + MWCAP_USB_AUDIO_LINE_IN)) 289 #define MWCAP_NOTIFY_VOLUME_LINE_OUT (1ULL << (48 + MWCAP_USB_AUDIO_LINE_OUT)) 290 #define MWCAP_NOTIFY_VOLUME_EMBEDDED_CAPTURE (1ULL << (48 + MWCAP_USB_AUDIO_EMBEDDED_CAPTURE)) 291 #define MWCAP_NOTIFY_VOLUME_EMBEDDED_PLAYBACK (1ULL << (48 + MWCAP_USB_AUDIO_EMBEDDED_PLAYBACK)) 292 #define MWCAP_NOTIFY_VOLUME_USB_CAPTURE (1ULL << (48 + MWCAP_USB_AUDIO_USB_CAPTURE)) 293 #define MWCAP_NOTIFY_VOLUME_USB_PLAYBACK (1ULL << (48 + MWCAP_USB_AUDIO_USB_PLAYBACK)) 295 enum _MWCAP_USB_SPEED_TYPE {
296 MWCAP_USB_FULL_SPEED = 0x01,
297 MWCAP_USB_HIGH_SPEED = 0x02,
298 MWCAP_USB_SUPER_SPEED_GEN1 = 0x03,
299 MWCAP_USB_SUPER_SPEED_GEN2 = 0x04
303 #define MWCAP_HID_EXTENSION_HDMI 0x00000001 304 #define MWCAP_HID_EXTENSION_TIMING 0x00000002 305 #define MWCAP_HID_EXTENSION_VOLUME 0x00000004 307 #define MWCAP_MAX_NUM_AUDIO_CHANNEL 16 309 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FOURCC 3 310 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_SIZE 24 311 #define MWCAP_MAX_NUM_VIDEO_OUTPUT_FRAME_INTERVAL 8 320 #endif //_MWUSB_CAPTURE_EXTENSION_H_ uint8_t byBoardIndex
The value is 0.
Definition: MWUSBCaptureExtension.h:147
Definition: MWUSBCaptureExtension.h:211
MWCAP_VIDEO_TIMING.
Definition: MWCaptureExtension.h:335
uint8_t byUSBSpeed
USB speed: 1.0, 2.0, 3.0.
Definition: MWUSBCaptureExtension.h:146
MWUSBCAP_CAPTURE_INFO.
Definition: MWUSBCaptureExtension.h:145
Definition: MWUSBCaptureExtension.h:152
Definition: MWUSBCaptureExtension.h:255
Definition: MWUSBCaptureExtension.h:245
MWCAP_VIDEO_CUSTOM_TIMING.
Definition: MWCaptureExtension.h:1624
Definition: MWUSBCaptureExtension.h:157
struct _MWUSBCAP_CAPTURE_INFO MWUSBCAP_CAPTURE_INFO
MWUSBCAP_CAPTURE_INFO.
Definition: MWUSBCaptureExtension.h:206
Definition: MWUSBCaptureExtension.h:195
Definition: MWUSBCaptureExtension.h:216
Definition: MWUSBCaptureExtension.h:222
uint32_t cbFreeMemorySize
Free memory size.
Definition: MWUSBCaptureExtension.h:149
uint32_t cbTotalMemorySize
Total memory size.
Definition: MWUSBCaptureExtension.h:148
Definition: MWUSBCaptureExtension.h:266
Definition: MWUSBCaptureExtension.h:260
Definition: MWUSBCaptureExtension.h:173
Definition: MWUSBCaptureExtension.h:250