問題タブ [sysex]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
midi - Alesis QS MIDI Sysex データ変換
私の目的は、Alesis シンセサイザーから送信されたバイト コードのストリームを人間が読める形式に変換することです。「プログラム ダンプ」を取得して、パッチ名を構成する 10 文字の文字列を読み取れるようにする必要があります。
シンセから「プログラム ダンプ」を受信するために、MIDI-OX 経由で次のコマンドをシンセに送信しました。
プログラム 73 のダンプを送るように要求しました。
私はこれを受け取りました:
MIDI-OX は、408 バイトを受信したと教えてくれました。
これは仕様と一致します:
「1 つのプログラム ダンプに対して送信されるデータ バイト数は 400 で、これは 350 バイトのプログラム データに相当します。ヘッダーを含めると、プログラム ダンプで送信されるバイトの総数は 408 です。プログラム ダンプ内の各パラメータの位置が示されています。次のセクションで。」
「プログラム ダンプ」は、次の値で構成されている必要があります。
つまり、データは「00 60」で始まり、「07 F7」で終わる必要があります。
これで、この 400 バイトを、このプログラムの「350 バイトのパックされたパラメータ データ」に変換できるはずです。「番組データフォーマット」に従い、10桁の番組名をパックデータ内のどこかに配置する必要があります。パッチ 73 は「BlowDeTune」または「PanBristle」と呼ばれますが、0 から始まるか 1 から始まるかは完全にはわかりません。
では、変換を行うにはどうすればよいでしょうか。仕様のページ 1 に伝送フォーマットが記載されていますが、解凍方法がわかりません。
誰でも助けることができますか?
Alesis QS MIDI Sysex 仕様は次のとおりです。
http://www.midiworld.com/quadrasynth/qs_swlib/qs678r.pdf
MIDI-OX は次の場所にあります。
c# - .Net 内での Midi 実装
C# Winforms で MIDI ベースのアプリケーションを作成するためのガイダンスや推奨事項はありますか? 私は最近、完全な MIDI 実装を備えた新しいエフェクト ペダルを購入しました (または、そう信じさせられます) が、メーカーは、ライブラリアン/パッチ編集アプリケーションをリリースしないことに適していると判断しました。
キーボードを別の MIDI デバイスに接続する以外に、MIDI の経験は事実上ありませんが、それほど難しくはありませんよね? ;-)
前もって感謝します。
cocoa - MIDIPacketList、numPackets は常に 1
私は iPad で Midi を処理していますが、すべて正常に動作しており、入ってくるものすべてをログに記録でき、すべて期待どおりに動作します。しかし、長いメッセージ (つまり Sysex) を受信しようとすると、最大 256 バイトのパケットを 1 つしか取得できず、その後は何も取得できません。
Apple が提供するコードを使用する:
packetList->numPackets
は常に 1 です。最初のメッセージを取得した後は、「新しい」sysex メッセージが送信されるまで、他のコールバック メソッドは呼び出されません。私の MIDI 処理メソッドが完全な packetList (潜在的に任意のサイズ) で呼び出されるとは思いません。データをストリームとして受け取ると思っていたでしょう。これは正しいです?
私が見つけた唯一のものはこれでした: http://lists.apple.com/archives/coreaudio-api/2010/May/msg00189.html、まったく同じことについて言及していますが、あまり役に立ちませんでした。おそらくバッファリングを実装する必要があることは理解していますが、最初の 256 バイト以降は何も表示されないため、どこから始めればよいかわかりません。
android - Java での sysex メッセージの送信
Roland デバイスに sysex メッセージを送信するアプリケーションを作成しようとしています。私は例を見つけて、自分のニーズに合わせて少し変更しようとしました:
byteString は、次の 16 進メッセージを含む文字列です: F0411000004F1200020201070272F7 ただし、行 textView.setText(message) での私のコントロールの出力は、次の文字列を返します: 15410041000000715
どこが間違っているのかよくわかりません.textViewメッセージは入力メッセージと同じであるべきではありませんか?
よろしく /M
arduino - Arduino Midi ライブラリが 16 進数の F7 を 0 として読み取る理由
エフェクト プロセッサの midi をシールドの arduino midi に接続し、arduino の Midi ライブラリを使用してエフェクト プロセッサからの sysex メッセージを読み取ろうとしていますが、すべて正常に動作しますが、16 進数 F7 になると arduino は 0 を読み取ります。 F7 is 247 is 247 なぜこれが起こっているのか誰か知っていますか?
私はこのコードを使用します
ios - sysex データを MusicTrack に追加するには? (AudioToolbox)
私は小さな midi シーケンサーをブラックジャックなどで書き込もうとしていますが、sysex データを MusicTrack に書き込めません。次のコードを使用してsysexイベントを挿入します
パターンデータは
MusicSequenceFileCreate を呼び出した後に破損したファイルが取得されるため、何か問題がありました。sysex データを音楽トラックに追加する方法の例はありますか?
java - Java で sysex メッセージを送信する
Sysex メッセージを MIDI ポートに送信したいと思います。残念ながら、送信してもまったく返信がありません。通常の MIDI メッセージ ( ) の送信は正常に機能しますが、 を に置き換えるとShortMessage
すぐに機能しなくなります。ShortMessage
SysexMessage
ポートがメッセージを受信しない、またはメッセージが送信されないのはなぜですか?
javascript - Electron - Web MIDI API 経由で Sysex メッセージを送信するとレンダラーがクラッシュする
sysex (システム エクスクルーシブ) MIDI メッセージを MIDI デバイスに送信できる Electron アプリに取り組んでいますが、sysex メッセージを送信しようとするたびに、レンダラーがクラッシュします。非 sysex メッセージ (noteOn、noteOff など) を問題なくデバイスに送信できます。
ここに私がやっていることの少しがあります:
Web ブラウザー (Chrome のみ) では、安全な接続が必要であり、sysex メッセージを送信できるようにするためにユーザー許可を要求する必要があります。Electron アプリのコンテキストでこれらの条件を満たす方法が不明であるため、これら 2 つの Web MIDI sysex 要件がこのクラッシュの原因ではないかと考えています。