最終更新:2025-10-03 (金) 12:08:21 (287d)  

UAC 1.0/ディスクリプタ
Top / UAC 1.0 / ディスクリプタ

構造

IADを使う場合

  • デバイスディスクリプタ
      └コンフィグレーションディスクリプタ
        └インターフェイスアソシエーションディスクリプタ (bFunctionClass: 0x01 (Audio) / bFunctionSubclass:0x02 (Audio Streaming))
           └インターフェイスディスクリプタ (bInterfaceClass: 0x01 (Audio) / bInterfaceSubclass:0x01 (Audio Control))
             └AudioControlインターフェイスヘッダーディスクリプタ
             └AudioControlアウトプットターミナルディスクリプタ
             └AudioControlフィーチャーユニットディスクリプタ
           └インターフェイスディスクリプタ (bInterfaceClass: 0x01 (Audio) / bInterfaceSubclass:0x02 (Audio Streaming))
             └AudioStreamingインターフェイスディスクリプタ
             └AudioStreamingフォーマットタイプディスクリプタ
             └エンドポイントディスクリプタ
             └オーディオデータエンドポイントディスクリプタ

USB/クラス

  • クラス
    AUDIO0x01
  • サブクラス
    SUBCLASS_UNDEFINED0x00
    AUDIOCONTROL0x01
    AUDIOSTREAMING0x02
    MIDISTREAMING0x03

メモ

UAC周りのディスクリプタ

インターフェイスアソシエーションディスクリプタ (IAD)

インターフェイス0 (AudioControl?)

インターフェイス1 (AudioStreaming?)

  • AudioStreamingインターフェイスディスクリプタ? (クラス独自、AS_GENERAL)
    bDescriptorType0x24 (CS_INTERFACE、クラス独自)
    bDescriptorSubtype1 (AS_GENERAL)
  • AudioStreamingフォーマットタイプディスクリプタ? (クラス独自、FORMAT_TYPE)
    bDescriptorType0x24 (CS_INTERFACE、クラス独自)
    bDescriptorSubtype2 (FORMAT_TYPE)