MIDI デジタル音楽プロトコルが初めて導入されてから約 40 年が経ち、2020 年に、音楽機器で広く使用されているこの標準の大幅な見直しとして MIDI 2.0 プロトコルが発表されました。本日送信された大きなパッチ シリーズでは、Linux カーネル サウンド ドライバーを MIDI 2.0 用に準備します。
MIDI 2.0 では、より高い解像度、より優れたアーティキュレーション、複数の MIDI メッセージをパッケージ化して転送を容易にするユニバーサル MIDI パケット (UMP)、ジッターの軽減、その他のさまざまな新機能と改善が可能です。 MIDI 2.0 仕様は、MIDI Association (MIDI.org で、Linux カーネル ドライバーが MIDI 2.0 用に拡張されているのを今朝初めて確認しました。
SUSE の Linux サウンド サブシステム メンテナである岩井隆氏は、主に USB オーディオと生の MIDI ドライバー。
岩井隆氏が パッチ シリーズ:
「これは、MIDI 2.0 機能のサポートを追加するための (大規模な) パッチ セットで、主に以下を対象としています。 USB デバイス。MIDI 2.0 は、40 年前の MIDI 1.0 を完全に見直したものです。MIDI 1.0 バイト ストリームとは異なり、MIDI 2.0 は、ユニバーサル MIDI パケット (UMP) プロトコルの 32 ビット ワードのパケットを使用します。互換性のために MIDI 1.0 コマンドと、より高い解像度とより多くの機能を実現する拡張 MIDI 2.0 コマンド。
UMP をサポートするために、パッチ セットは既存の ALSA rawmidi およびシーケンサー インターフェイスを拡張し、標準 USB オーディオ ドライバーに USB MIDI 2.0 サポートを追加します。
UMP の rawmidi には異なるデバイス名 (/dev/snd/umpC*D*) があり、32 ビット CPU ネイティブ エンディアンで UMP パケット データの読み取り/書き込みを行います。古い MIDI 1.0 アプリケーションの場合は、従来の rawmidi インターフェイスも提供されます。
デフォルトでは、USB オーディオ ドライバーは MIDI 2.0 インターフェイスの代替設定を採用し、MIDI 1.0 との互換性は rawmidi 共通レイヤーを介して提供されます。ただし、ユーザーはモジュール オプションによってドライバーを古い MIDI 1.0 インターフェイスに戻すこともできます。
UMP 対応の rawmidi デバイスは、対応する ALSA シーケンサー クライアントを作成して、UMP エンドポイントおよび UMP グループ接続をサポートできます。 ALSA シーケンサーの性質として、クライアント/ポート間の任意の接続が許可されており、ALSA シーケンサー コアは、新しい UMP シーケンサー クライアントとレガシー MIDI 1.0 シーケンサー クライアント間の接続の自動変換を実行します。これにより、既存のアプリケーションは変更せずに MIDI 2.0 デバイスを使用できるようになります。
MIDI 2.0 のもう 1 つの主要な拡張機能である MIDI-CI は、このパッチ セットではカバーされていません。むしろユーザー空間に実装されるでしょう。」
Linux カーネルの MIDI 2.0 コードは現在レビュー中であり、すべてがうまくいけば、v6.5 サイクルでメインライン化される可能性があります。夏。