我有一个通过 USB 连接到计算机的 DJ 控制器。它由许多按钮、旋转拨盘(看起来像电位器)、交叉渐变器以及用于刮擦的转盘组成。该控制器能够用于流行的 DJ 节目并且工作正常。在 DJ 程序中,我能够将设备上的不同按钮和控件映射到 DJ 程序中的软件功能。映射时,按钮的名称会显示在 DJ 程序中(名称如“FX1” - 不仅仅是映射到键盘按钮)。
我想创建一个能够从 USB DJ 控制器获取输入的应用程序。没有花哨的音频处理或类似的东西,我想做的就是能够:
- 获取设备可用的按钮和控件列表
- 从这些控件而不是从键盘获取值
因为按钮、滑块等在 DJ 控制器中显示为命名控件,这让我相信这些信息是可访问的,可能与操纵杆的工作方式类似(尽管我实际上没有在 .NET 中使用操纵杆)。
一般而言,尤其是在 C# 中,如何与这样的 USB 设备进行通信?