【问题标题】:Midi Controller Device NamesMidi 控制器设备名称
【发布时间】:2017-02-28 22:16:27
【问题描述】:

为了编写一个 midi(包装)库,我试图弄清楚 midi 设备的“名称”是在哪里定义的。是设备给定的还是它所连接的系统给定的?

例如,我在一台连接了 midi 控制器的 linux 机器上从“amidi”获得以下输出。

amidi -l
Dir Device    Name
IO  hw:1,0,0   MIDI 1

它的名字总是“MIDI 1”(原文如此!),我不确定我是否可以假设这个供应商/型号的每个设备都具有相同的名称。

【问题讨论】:

    标签: midi


    【解决方案1】:

    对于 PCI 声卡,驱动程序知道名称。

    对于 USB 设备,snd-usb-audio 驱动程序查看设备的描述符以获取设备名称,并附加“MIDI x”以获取 MIDI 端口名称。如果没有定义设备名称,它会根据设备编号构造一个默认名称,因此这看起来就像您的 MIDI 控制器显式返回一个空字符串。在您的情况下,这会导致一个荒谬的结果,但是使用这个名称是您的库可以做的最好的事情。

    (以 root 身份运行“sudo lsusb -v 2>&1 | grep -e iManufacturer -e iProduct”以查看您的 USB 设备声明的内容。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-14
      • 2022-12-12
      • 1970-01-01
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多