のびっこ日記

(*|         |*)v ういっすー。 VRとかコンピュータービジョンとかARとかに興味があります。OpenCVとかPCLとかOculusRiftとかUnityとかKinectとかLeapMotionとか手を出していますが、いろいろドツボにハマっててくじけそう。誰か教えてー

激安3D ウェブカメラ(DS-3DW300)のExtension UnitのGUID

WDKのUSBViewで、デバイスを見てみました。

ExtensionUnitのGUIDこれっぽいです。

>guidExtensionCode: {A7974C56-A77E-4B90-8CBF-1C71EC303000}

でもこの先ちょっと厳しそう。どうしたらいいんでしょうね。

 

以下全ログー。

-----------

Is Port User Connectable: yes
Is Port Debug Capable: no
Companion Port Number: 0
Companion Hub Symbolic Link Name:
Protocols Supported:
USB 1.1: yes
USB 2.0: yes
USB 3.0: no

Device Power State: PowerDeviceD3

---===>Device Information<===---
English product name: "3D Webcam"

ConnectionStatus:
Current Config Value: 0x01 -> Device Bus Speed: High (is not SuperSpeed or higher capable)
Device Address: 0x04
Open Pipes: 1

===>Device Descriptor<===
bLength: 0x12
bDescriptorType: 0x01
bcdUSB: 0x0200
bDeviceClass: 0xEF -> This is a Multi-interface Function Code Device
bDeviceSubClass: 0x02 -> This is the Common Class Sub Class
bDeviceProtocol: 0x01 -> This is the Interface Association Descriptor protocol
bMaxPacketSize0: 0x40 = (64) Bytes
idVendor: 0x18E3 = Fitilink Integrated Technology, Inc.
idProduct: 0x5031
bcdDevice: 0x0009
iManufacturer: 0x03
English (United States) "fitilink, Corp."
iProduct: 0x01
English (United States) "3D Webcam"
iSerialNumber: 0x00
bNumConfigurations: 0x01

---===>Open Pipes<===---

===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x82 -> Direction: IN - EndpointID: 2
bmAttributes: 0x03 -> Interrupt Transfer Type
wMaxPacketSize: 0x0010 = 1 transactions per microframe, 0x10 max bytes
bInterval: 0x0F

---===>Full Configuration Descriptor<===---

===>Configuration Descriptor<===
bLength: 0x09
bDescriptorType: 0x02
wTotalLength: 0x018D -> Validated
bNumInterfaces: 0x02
bConfigurationValue: 0x01
iConfiguration: 0x00
bmAttributes: 0x80 -> Bus Powered
MaxPower: 0x64 = 200 mA

===>IAD Descriptor<===
bLength: 0x08
bDescriptorType: 0x0B
bFirstInterface: 0x00
bInterfaceCount: 0x02
bFunctionClass: 0x0E -> Video Interface Class
bFunctionSubClass: 0x03 -> Video Interface Collection
bFunctionProtocol: 0x00 -> PC_PROTOCOL_UNDEFINED protocol
iFunction: 0x01
English (United States) "3D Webcam"

===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x00
bAlternateSetting: 0x00
bNumEndpoints: 0x01
bInterfaceClass: 0x0E -> Video Interface Class
bInterfaceSubClass: 0x01 -> Video Control Interface SubClass
bInterfaceProtocol: 0x00
iInterface: 0x01
English (United States) "3D Webcam"

===>Class-Specific Video Control Interface Header Descriptor<===
bLength: 0x0D
bDescriptorType: 0x24
bDescriptorSubtype: 0x01
bcdVDC: 0x0100
wTotalLength: 0x0055 -> Validated
dwClockFreq: 0x01C9C380 = (30000000) Hz
bInCollection: 0x01
baInterfaceNr[1]: 0x01
USB Video Class device: spec version 1.0

===>Video Control Input Terminal Descriptor<===
bLength: 0x12
bDescriptorType: 0x24
bDescriptorSubtype: 0x02
bTerminalID: 0x01
wTerminalType: 0x0201 = (ITT_CAMERA)
bAssocTerminal: 0x00
iTerminal: 0x00
===>Camera Input Terminal Data
wObjectiveFocalLengthMin: 0x0000
wObjectiveFocalLengthMax: 0x0000
wOcularFocalLength: 0x0000
bControlSize: 0x03
bmControls : 0x00 0x00 0x00
D00 = 0 no - Scanning Mode
D01 = 0 no - Auto-Exposure Mode
D02 = 0 no - Auto-Exposure Priority
D03 = 0 no - Exposure Time (Absolute)
D04 = 0 no - Exposure Time (Relative)
D05 = 0 no - Focus (Absolute)
D06 = 0 no - Focus (Relative)
D07 = 0 no - Iris (Absolute)
D08 = 0 no - Iris (Relative)
D09 = 0 no - Zoom (Absolute)
D10 = 0 no - Zoom (Relative)
D11 = 0 no - PanTilt (Absolute)
D12 = 0 no - PanTilt (Relative)
D13 = 0 no - Roll (Absolute)
D14 = 0 no - Roll (Relative)
D15 = 0 no - Reserved
D16 = 0 no - Reserved
D17 = 0 no - Focus, Auto
D18 = 0 no - Privacy
D19 = 0 no - Focus, Simple
D20 = 0 no - Window
D21 = 0 no - Region of Interest
D22 = 0 no - Reserved
D23 = 0 no - Reserved

===>Video Control Output Terminal Descriptor<===
bLength: 0x09
bDescriptorType: 0x24
bDescriptorSubtype: 0x03
bTerminalID: 0x03
wTerminalType: 0x0101 = (TT_STREAMING)
bAssocTerminal: 0x00
bSourceID: 0x06
iTerminal: 0x00

===>Video Control Selector Unit Descriptor<===
bLength: 0x07
bDescriptorType: 0x24
bDescriptorSubtype: 0x04
bUnitID: 0x04
bNrInPins: 0x01
===>List of Connected Unit and Terminal ID's
baSourceID[1]: 0x01
iSelector: 0x00

===>Video Control Processing Unit Descriptor<===
bLength: 0x0B
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bUnitID: 0x05
bSourceID: 0x04
wMaxMultiplier: 0x7DD0
bControlSize: 0x02
bmControls : 0x7F 0x15
D00 = 1 yes - Brightness
D01 = 1 yes - Contrast
D02 = 1 yes - Hue
D03 = 1 yes - Saturation
D04 = 1 yes - Sharpness
D05 = 1 yes - Gamma
D06 = 1 yes - White Balance Temperature
D07 = 0 no - White Balance Component
D08 = 1 yes - Backlight Compensation
D09 = 0 no - Gain
D10 = 1 yes - Power Line Frequency
D11 = 0 no - Hue, Auto
D12 = 1 yes - White Balance Temperature, Auto
D13 = 0 no - White Balance Component, Auto
D14 = 0 no - Digital Multiplier
D15 = 0 no - Digital Multiplier Limit
iProcessing : 0x00

===>Video Control Extension Unit Descriptor<===
bLength: 0x1B
bDescriptorType: 0x24
bDescriptorSubtype: 0x06
bUnitID: 0x06
guidExtensionCode: {A7974C56-A77E-4B90-8CBF-1C71EC303000}
bNumControls: 0x10
bNrInPins: 0x01
===>List of Connected Units and Terminal ID's
baSourceID[1]: 0x05
bControlSize: 0x02
bmControls : 0xFF 0xFF
D00 = 1 yes - Vendor-Specific (Optional)
D01 = 1 yes - Vendor-Specific (Optional)
D02 = 1 yes - Vendor-Specific (Optional)
D03 = 1 yes - Vendor-Specific (Optional)
D04 = 1 yes - Vendor-Specific (Optional)
D05 = 1 yes - Vendor-Specific (Optional)
D06 = 1 yes - Vendor-Specific (Optional)
D07 = 1 yes - Vendor-Specific (Optional)
D08 = 1 yes - Vendor-Specific (Optional)
D09 = 1 yes - Vendor-Specific (Optional)
D10 = 1 yes - Vendor-Specific (Optional)
D11 = 1 yes - Vendor-Specific (Optional)
D12 = 1 yes - Vendor-Specific (Optional)
D13 = 1 yes - Vendor-Specific (Optional)
D14 = 1 yes - Vendor-Specific (Optional)
D15 = 1 yes - Vendor-Specific (Optional)
iExtension: 0x00

===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x82 -> Direction: IN - EndpointID: 2
bmAttributes: 0x03 -> Interrupt Transfer Type
wMaxPacketSize: 0x0010 = 1 transactions per microframe, 0x10 max bytes
bInterval: 0x0F

===>Class-specific VC Interrupt Endpoint Descriptor<===
bLength: 0x05
bDescriptorType: 0x25
bDescriptorSubtype: 0x03
wMaxTransferSize: 0x0010 = (16) Bytes

===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x01
bAlternateSetting: 0x00
bNumEndpoints: 0x00
bInterfaceClass: 0x0E -> Video Interface Class
bInterfaceSubClass: 0x02 -> Video Streaming Interface SubClass
bInterfaceProtocol: 0x00
iInterface: 0x00

===>Video Class-Specific VS Video Input Header Descriptor<===
bLength: 0x0E
bDescriptorType: 0x24
bDescriptorSubtype: 0x01
bNumFormats: 0x01
wTotalLength: 0x00D9 -> Validated
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmInfo: 0x00 -> Dynamic Format Change not Supported
bTerminalLink: 0x03
bStillCaptureMethod: 0x00 -> No Still Capture
bTriggerSupport: 0x00 -> No Hardware Triggering Support
bTriggerUsage: 0x00
bControlSize: 0x01
Video Payload Format 1 0x00
D00 = 0 no - Key Frame Rate
D01 = 0 no - P Frame Rate
D02 = 0 no - Compression Quality
D03 = 0 no - Compression Window Size
D04 = 0 no - Generate Key Frame
D05 = 0 no - Update Frame Segment
D06 = 0 no - Reserved
D07 = 0 no - Reserved

===>Video Streaming Uncompressed Format Type Descriptor<===
bLength: 0x1B
bDescriptorType: 0x24
bDescriptorSubtype: 0x04
bFormatIndex: 0x01
bNumFrameDescriptors: 0x05
guidFormat: {32595559-0000-0010-8000-00AA00389B71} = YUY2 Format
bBitsPerPixel: 0x10
bDefaultFrameIndex: 0x01
bAspectRatioX: 0x00
bAspectRatioY: 0x00
bmInterlaceFlags: 0x00
D0 = 0x00 Interlaced stream or variable: No
D1 = 0x00 Fields per frame: 2 fields
D2 = 0x00 Field 1 first: No
D3 = 0x00 Reserved
D4..5 = 0x00 Field patterns -> Field 1 only
D6..7 = 0x00 Display Mode -> Bob only
bCopyProtect: 0x00 -> Duplication Unrestricted

===>Video Streaming Uncompressed Frame Type Descriptor<===
--->This is the Default (optimum) Frame index
bLength: 0x22
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bFrameIndex: 0x01
bmCapabilities: 0x00
wWidth: 0x0280 = 640
wHeight: 0x01E0 = 480
dwMinBitRate: 0x04650000
dwMaxBitRate: 0x08CA0000
dwMaxVideoFrameBufferSize: 0x00096000
dwDefaultFrameInterval: 0x00051614 = 33.333200 mSec (30.00 Hz)
bFrameIntervalType: 0x02
===>Additional Discrete Frame Type Data
dwFrameInterval[1]: 0x00051614 = 33.333200 mSec (30.00 Hz)
dwFrameInterval[2]: 0x000A2C2A = 66.666600 mSec (15.00 Hz)

===>Video Streaming Uncompressed Frame Type Descriptor<===
bLength: 0x22
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bFrameIndex: 0x02
bmCapabilities: 0x00
wWidth: 0x0140 = 320
wHeight: 0x00F0 = 240
dwMinBitRate: 0x01194000
dwMaxBitRate: 0x02328000
dwMaxVideoFrameBufferSize: 0x00025800
dwDefaultFrameInterval: 0x00051614 = 33.333200 mSec (30.00 Hz)
bFrameIntervalType: 0x02
===>Additional Discrete Frame Type Data
dwFrameInterval[1]: 0x00051614 = 33.333200 mSec (30.00 Hz)
dwFrameInterval[2]: 0x000A2C2A = 66.666600 mSec (15.00 Hz)

===>Video Streaming Uncompressed Frame Type Descriptor<===
bLength: 0x22
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bFrameIndex: 0x03
bmCapabilities: 0x00
wWidth: 0x00A0 = 160
wHeight: 0x0078 = 120
dwMinBitRate: 0x00465000
dwMaxBitRate: 0x008CA000
dwMaxVideoFrameBufferSize: 0x00009600
dwDefaultFrameInterval: 0x00051614 = 33.333200 mSec (30.00 Hz)
bFrameIntervalType: 0x02
===>Additional Discrete Frame Type Data
dwFrameInterval[1]: 0x00051614 = 33.333200 mSec (30.00 Hz)
dwFrameInterval[2]: 0x000A2C2A = 66.666600 mSec (15.00 Hz)

===>Video Streaming Uncompressed Frame Type Descriptor<===
bLength: 0x22
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bFrameIndex: 0x04
bmCapabilities: 0x00
wWidth: 0x0160 = 352
wHeight: 0x0120 = 288
dwMinBitRate: 0x01734000
dwMaxBitRate: 0x02E68000
dwMaxVideoFrameBufferSize: 0x00031800
dwDefaultFrameInterval: 0x00051614 = 33.333200 mSec (30.00 Hz)
bFrameIntervalType: 0x02
===>Additional Discrete Frame Type Data
dwFrameInterval[1]: 0x00051614 = 33.333200 mSec (30.00 Hz)
dwFrameInterval[2]: 0x000A2C2A = 66.666600 mSec (15.00 Hz)

===>Video Streaming Uncompressed Frame Type Descriptor<===
bLength: 0x22
bDescriptorType: 0x24
bDescriptorSubtype: 0x05
bFrameIndex: 0x05
bmCapabilities: 0x00
wWidth: 0x00B0 = 176
wHeight: 0x0090 = 144
dwMinBitRate: 0x005CD000
dwMaxBitRate: 0x00B9A000
dwMaxVideoFrameBufferSize: 0x0000C600
dwDefaultFrameInterval: 0x00051614 = 33.333200 mSec (30.00 Hz)
bFrameIntervalType: 0x02
===>Additional Discrete Frame Type Data
dwFrameInterval[1]: 0x00051614 = 33.333200 mSec (30.00 Hz)
dwFrameInterval[2]: 0x000A2C2A = 66.666600 mSec (15.00 Hz)

===>Color Matching Descriptor<===
bLength: 0x06
bDescriptorType: 0x24
bDescriptorSubtype: 0x0D
bColorPrimaries: 0x01
bTransferCharacteristics: 0x01
bMatrixCoefficients: 0x04

===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x01
bAlternateSetting: 0x01
bNumEndpoints: 0x01
bInterfaceClass: 0x0E -> Video Interface Class
bInterfaceSubClass: 0x02 -> Video Streaming Interface SubClass
bInterfaceProtocol: 0x00
iInterface: 0x00

===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x05 -> Isochronous Transfer Type, Synchronization Type = Asynchronous, Usage Type = Data Endpoint
wMaxPacketSize: 0x1400 = 3 transactions per microframe, 0x400 max bytes
bInterval: 0x01

===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x01
bAlternateSetting: 0x02
bNumEndpoints: 0x01
bInterfaceClass: 0x0E -> Video Interface Class
bInterfaceSubClass: 0x02 -> Video Streaming Interface SubClass
bInterfaceProtocol: 0x00
iInterface: 0x00

===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x05 -> Isochronous Transfer Type, Synchronization Type = Asynchronous, Usage Type = Data Endpoint
wMaxPacketSize: 0x1400 = 3 transactions per microframe, 0x400 max bytes
bInterval: 0x01

===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x01
bAlternateSetting: 0x03
bNumEndpoints: 0x01
bInterfaceClass: 0x0E -> Video Interface Class
bInterfaceSubClass: 0x02 -> Video Streaming Interface SubClass
bInterfaceProtocol: 0x00
iInterface: 0x00

===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x05 -> Isochronous Transfer Type, Synchronization Type = Asynchronous, Usage Type = Data Endpoint
wMaxPacketSize: 0x1400 = 3 transactions per microframe, 0x400 max bytes
bInterval: 0x01

===>Additional Error Checking<===
PASS: number of uncompressed-frame frame descriptors (5) == number of frame descriptors (5) specified in uncompressed format descriptor(s)

-----------