【问题标题】:How to find all the available MIDI ports over network using CoreMIDI?如何使用 CoreMIDI 通过网络查找所有可用的 MIDI 端口?
【发布时间】:2017-03-04 05:24:30
【问题描述】:

我正在开发一个需要通过 wifi 发送 Midi 的应用程序。我查看了 CoreMIDI 和 MIDINetworkSession 类。我已将默认会话的策略设置为 .anyone 并启用了它。但我不清楚下一步该做什么。我查看了 PGMidi,但在对会话进行更改后,它没有列出远程主机的 MIDI 端口。

我想要的是我可以连接到运行 MacOSX 的远程机器上的所有 MIDI 端口的列表。

有可能吗?有人可以给我一些提示吗?

【问题讨论】:

    标签: swift xcode swift3 coremidi


    【解决方案1】:

    我能够弄清楚。这是我所做的:

    扫描远程服务 假设我的 Mac 正在运行一个通过 Bonjour 发布的 MIDI 会话。我使用 NetServiceBrowser 扫描本地网络并找出哪个服务器支持“_apple-midi._udp”服务。 Look at the documentation.。 NetServiceBrowserDelegate 在委托回调中接收服务。请注意,服务对象尚未针对 DNS 进行解析,因此不包含主机的 IP 地址。 下一步是使用 NetServiceDelegate 解析服务。在成功委托回调中传递的服务对象包含有关该服务的所有信息。所以现在,您有一个 IP 地址/主机名和相应端口号的列表。

    发送 MIDI 使用 ip 地址/主机名和端口号创建一个 MIDINetworkConnection 实例。它看起来像一个同步调用,所以它可能不联系服务器本身。接下来,获取所有 midi 设备并遍历 Entities 和 Destinations。 Its given in this document

    【讨论】:

      猜你喜欢
      • 2021-09-10
      • 1970-01-01
      • 1970-01-01
      • 2017-02-24
      • 1970-01-01
      • 1970-01-01
      • 2012-06-07
      • 2020-04-18
      • 1970-01-01
      相关资源
      最近更新 更多