domino/要望001/66

Last-modified: 2007-12-31 (月) 19:35:12

「MIDI機器の状態を合わせる」 に 「Program Change を含まない」 設定

  • ページ: domino/要望
  • 投稿者: 逃亡者?
  • 優先順位: 低
  • 状態: 完了
  • 投稿日: 2007-03-12 (月) 19:34:57

メッセージ

レイヤーを使用して異なる楽器で鳴らしている場合、現在の仕様では
Program Change が送信されて同じ楽器になってしまうため、
「MIDI機器の状態を合わせる」 が使えません。
Program Change を含まない設定に出来ると、レイヤーを使用していても
「MIDI機器の状態を合わせる」 を使うことが出来るようになります。


  • program changeを送ると、MIDI音源側の2パートで受信してしまう、ということでしょうかね。 -- たかぼー? 2007-03-12 (月) 23:43:06
  • そうです。正確には受信させている、ということになります。同じフレーズをコピペする代わりに受信 CH を変更し、一つの CH の情報を複数のパートに送ります。当然、Program Change だけではなく全部送られることになるのですが、他のイベントは定義ファイルを弄れば解除できますので、残るは Program Change だけなのです。
    用途としては、Pitch Bend・Modulation・Expression・CAT・PAT・AC1・AC2 だけにして、簡易リセットのような感じで使おうと目論んでいます。 -- 逃亡者? 2007-03-13 (火) 18:35:26
  • 「Program Changeだけ合わせない」コマンド、というのは機能的に中途半端ですので、例えば「このトラックは状態を合わせない」コマンド(ON/OFF切り替え)、というようにトラックまるごと合わせない設定機能にしてしまう、という案ではどうでしょうか?これなら定義ファイルをいじる必要はありませんよね(?) -- たかぼー? 2007-03-14 (水) 10:34:03
  • いえ、外したいのは 「Program Change だけ」 で、他のイベントは必要なのです。例えば、file94_test_msgs.mid *1 (※ MSGS専用です。他の音源ではレイヤーが効いていません。) この例ですと、両方とも Pitch Bend と Expression が必要になります。(でないと片方だけ Pitch がズレてしまいます)
    でもトラック毎のON/OFFというのも、私の定義ファイルでドラムの個別設定をリセットされないようにするには有効ですね。これはこれで価値があるような気がします。しかし、今回の要望はこれでは解決しません。
    定義ファイルを弄らなくても済むようにするには、例えば 「トラックモニターバーのカスタマイズ」 のように対象のイベントのリストから取捨選択できる形が理想です。そうなれば、定義ファイルを弄る必要がなくなります。 -- 逃亡者? 2007-03-14 (水) 21:22:59
  • ん??レイヤ状態ならば、どのみちA1のpitchbend とexpressionがA2側でも受信するので片方だけあればいいんじゃないでしょうか?んーレイヤ状態でMIDI状態を合わせること自体が無謀かも。。。 -- たかぼー? 2007-03-14 (水) 21:34:03
  • イベント一つ一つに対して「処理しない」ように設定できるようにし、レイヤする側、される側のセットアップトラック辺りのイベントほぼ全て(パンポット等)に「処理しない」ように設定しておけば、いけるかもしれませんが、解りにくいですね・・・。うーん -- たかぼー? 2007-03-14 (水) 21:41:51
  • その片方に Program Change が含まれてしまいますので・・・。結局の所、必要なのは Program Change を OFF にする機能のみということになります。 -- 逃亡者? 2007-03-14 (水) 21:48:47
  • その片方にはもちろんpanpotも入ってるので、通常は両パートとも同じpanpotになってしまいますよね?そこをあえて逃亡者さんは定義ファイルをいじって、panpotは処理されないようにして回避しているのですよね?だとすると、レイヤーとは関係ないトラックまでpanpotが処理されなくなってしまって、逆に困ってしまう場合もあるんじゃないのかな?とも思うのですが、その辺はどうなのでしょうか? 私としては(一般ユーザーの使い勝手のためにも)定義ファイルに手をいれることなく、レイヤー問題を解決する方向性で行きたいのですが (^^;  programchangeだけでなく、各イベントも、定義ファイルをいじることなく、レイヤー状態でも●×△すれば音源状態が合うようになる(合うのが難しいので、結果的に「処理しないようになる」、ですが)、といった方向性です。 -- たかぼー? 2007-03-15 (木) 15:29:32
  • 私なんてコピペでユニゾンさせてますけど (OO; -- たかぼー? 2007-03-15 (木) 15:47:09
  • あ、いや、それを実装するのは面倒かなと思いまして^^; 各イベント&トラック毎にON/OFFが出来るようになれば、それが最も理想的です。
    > その辺はどうなのでしょうか?
    ズバリ、諦める方向でした^^; -- 逃亡者? 2007-03-15 (木) 20:19:55
  • 時間が経ってしまって申し訳ありませんm(_ _)m どのみち何かを諦めるのでしたら、レイヤとは関係のない通常のトラックは今までどおりとし、レイヤ機能に関わっている部分の状態合わせを諦める方が、良いかなと思います。 いろいろ考えてはみたのですが、①トラック毎に処理する/しない の設定ができるようにする ②トラック毎に、指定tickまでのイベントは処理しないように設定できるようにする 辺りが現実的かなぁとは思いますが、どちらが良いでしょうか?(または「その他」でも構いません。) -- たかぼー? 2007-04-02 (月) 02:16:17
  • こちらこそ、かなり特殊な状況にも関わらずお手数を掛けて申し訳ありません。レイヤー目的だと①で十分ですが、②の方が別の応用が効きそうな気がするので(具体例は思い浮かびませんが^^;)、②でお願いします。m(_ _)m -- 逃亡者? 2007-04-02 (月) 19:14:48
  • やってみました→http://www.tkb-soft.hmcbest.com/Domino112_dev004.ZIP 演奏メニューの中に「トラック個別設定」という機能がありますので、実行してみてください。全トラックを見渡せた方が、現状がどうなっているか把握しやすいと思いましたので、こんな形になりました。 -- たかぼー? 2007-04-04 (水) 23:07:00
  • ありがとうございます [heart]  レイヤー CH とドラム CH で試しましたが分かりやすいです (^^) -- 逃亡者? 2007-04-05 (木) 23:37:32

*1 PC#30 と PC#31 で左右で鳴らしています。この場合、PC を受信すると同じ楽器で同じ音階を左右で鳴らすことになり、真ん中から聞こえてしまいます。