Q&Aコーナー

      毎度、お世話になります。
      またしても質問です。
      複数のメンバーにわたって同時に音量を変化させたかったので、
      以下のようなマクロを書きました。

      #B0@┃_8 $FinV{V110 _8 V-60:16. _8 V+75:8 _8}
      #B1@┃_8 o6 (d>cc-)8 &c-4 (&c-/l-sfm-r-)4┃d8/
      #C0@┃_8 ${FinV} 
      #C1@┃_8 o6 d4. (&d/ddddd)4┃d8/

      このマクロが、4メンバーまでは適用しても有効に働くのですが、
      5メンバー以上になると何故か音が途切れてなくなってしまうのです。
      具体的には、Bだと最初の(d>cc-)8だけ鳴って、
      音が完全に無くなって(全メンバー)
      (&c-/l-sfm-r-)4からまた全メンバーの音が復活します。
      マクロを使用せず、音量変化の記述をコピー&ペーストで
      他のメンバーに貼り付けても同じ現象が起こるみたいです。

      理由や解決方法がわかれば教えてください。
      よろしくお願いします。
[199] Re[1]: 仕様?バグ? 
投稿者:くさば 投稿日:2002/03/16(Sat) 21:12:31  [ 返信 ] 

      > 理由や解決方法がわかれば教えてください。
      > よろしくお願いします。

      僕の環境ではうまく問題が再現できませんでした。
      よければ、問題が出てくるデータをここにのせて下さい。
      それと、音源も関係してきそうなのでお使いの音源名を
      書いておいた方がいいかもしれません。
      くさばさん、早速ありがとうございます。
      かなり省略しましたが、それでも結構長くなってしまいました。
      「;」をひとつでもはずすと現象が再現します。
      確認音源はRoland SC-88です。
      Microsoftの音源だと再現しないようです。

      %72*FING "v112"
      #A0@┃_8 V110 _8~32 V-60:16. %65 _8^32 V+75:8^32
      #A1@┃P74 _8 o6 $Fin_l{q-25 (l-s q0 f)8 &f4^32. (&f/m-rd>c-r-)4~32.┃s8/}
      #B0@┃_8 $FinV{V110 _8~32 V-60:16. _8^32 V+75:8^32 _8}
      #B1@┃P73 _8 o6 $Fin_d{q-25 (d>c q0 c-)8 &c-4^32. (&c-/l-sfm-r-)4~32.┃d8/}
      ; #C0@┃_8 ${FinV} 
      #C1@┃P69 _8 o6 d4.^32. (&d/ddddd)4~32.┃d8/
      ; #D0@┃_8 ${FinV} 
      #D1@┃P70 _8 o4 l-4.^32. (&l-lc-c<dd+)4~32.┃r8/
      #E0@┃_8 V110 _8~32 V-60:16. _8^32 V+75:8^32 _8
      ; #E2@┃P72 _8 o6 @T-2 r4.^32. (&r/rrrrr)4~32.┃r8/
      #F0@┃_8 ${FinV} 
      #F1@┃P67 _8 @T0 o5 ${Fin_d}
      ; #G0@┃_8 ${FinV} 
      #G1@┃P71 o3 @T0 l-8/ l-4.^32. &l-8~64. (l-/l-l-)┃s8/
      #H0@┃_8 ${FinV} 
      #H1@┃P61 _8 o5 s4.^32. (&s/sssss)4~32.┃s8/
      #I0@┃_8 ${FinV} 
      #I1@┃P60 _8 o6 v127 ${Fin_d}
      ; #J0@┃_8 ${FinV} 
      #J1@┃P58 ?4 o4 c-8/ <m-4.^32. (&m-mf-fss+)4~32.┃l8/
      ; #K0@┃_8 ${FinV} 
      #K1@┃P59 o2 f8/ f4.^32. &f8~64. (f/ff)┃d8/
      #M0@┃_8 ${FinV} 
      #M1@┃P49 _8 o6 ${Fin_d}
[203] Re[3]: 仕様?バグ?・・・長くなりますが 
投稿者:開発者 投稿日:2002/03/17(Sun) 12:41:25  [ 返信 ] 

      ○○さま

      「5メンバー以上になると何故か音が途切れてなくなってしまう」
      という現象に関してです。

      [201]で公開されたテストデータで試してみたのですが、
      残念ながら当方のVSC(ソフト音源)では再現しませんでした。
      ○○さんの症状出現の音源がSC-88(ハード音源)ですので、
      もしかしたら同時発音数の問題かとも思ったのですが、
      VSCのパネルで調査すると最大でも28音ですので、
      この原因でもないようです。

      困りました。そこで、少し系色を変えたテストをお願いします。
      もしかしたら、何かヒントが得られるかも知れません。

      (1)エクスポートしてMIDIファイルで演奏させてみる。
      (2)${FinV}ではなく、以下のようにメンバ一括指定の記述に変えてみる。

      %72*FING "v112"
      %
      @ABCDEFGHIJKM
      #A2 ┃_8 V110 _8~32 V-60:16. %65 _8^32 V+75:8^32 _8

      #A1@┃P74 _8 o6 $Fin_l{q-25 (l-s q0 f)8 &f4^32. (&f/m-rd>c-r-)4~32.┃s8/}
      #B1@┃P73 _8 o6 $Fin_d{q-25 (d>c q0 c-)8 &c-4^32. (&c-/l-sfm-r-)4~32.┃d8/}
      #C1@┃P69 _8 o6 d4.^32. (&d/ddddd)4~32.┃d8/
      #D1@┃P70 _8 o4 l-4.^32. (&l-lc-c<dd+)4~32.┃r8/
      #E2@┃P72 _8 o6 @T-2 r4.^32. (&r/rrrrr)4~32.┃r8/
      #F1@┃P67 _8 @T0 o5 ${Fin_d}
      #G1@┃P71 o3 @T0 l-8/ l-4.^32. &l-8~64. (l-/l-l-)┃s8/
      #H1@┃P61 _8 o5 s4.^32. (&s/sssss)4~32.┃s8/
      #I1@┃P60 _8 o6 v127 ${Fin_d}
      #J1@┃P58 ?4 o4 c-8/ <m-4.^32. (&m-mf-fss+)4~32.┃l8/
      #K1@┃P59 o2 f8/ f4.^32. &f8~64. (f/ff)┃d8/
      #M1@┃P49 _8 o6 ${Fin_d}

      よろしくお願いします。
      なかなか再現しない、ローカルな問題が多くてすみません。(^_^;)

      > もしかしたら同時発音数の問題かとも思ったのですが、

      同時発音数は64音あるはずなので、これではないと思われます。


      > (1)エクスポートしてMIDIファイルで演奏させてみる。
      > (2)${FinV}ではなく、以下のようにメンバ一括指定の記述に変えてみる。

      (1)エクスポートしても再現します。これは私のオリジナルデータでも同じです。
      (2)[203]のデータで早速試してみましたが、やはり再現します。

      > @ABCDEFGHIJKM
      の、"G"より手前に";"を入れると再現しませんが、"H"以降だと再現します。
      どうもこれは、SC-88固有の問題のような気がしてきました。
      SC-88といえば、6〜7年前のモデルです。
      当然現在の音源に比べて処理速度で劣るはずです。
      そこで同時イベントの処理に仕様として制限を設けている
      ・・・ということは考えられますでしょうか?
      (マニュアルを読んでもサッパリわかりません!)
[208] Re[5]: 仕様?バグ?・・・長くなりますが 
投稿者:くさば 投稿日:2002/03/17(Sun) 16:45:41  [ 返信 ] 

      > の、"G"より手前に";"を入れると再現しませんが、"H"以降だと再現します。
      > どうもこれは、SC-88固有の問題のような気がしてきました。
      > SC-88といえば、6〜7年前のモデルです。
      > 当然現在の音源に比べて処理速度で劣るはずです。
      > そこで同時イベントの処理に仕様として制限を設けている

      えーと、頂いたデータを演奏させてみました。
      その結果、SC−8850、SC−55STでは再現できませんでした。
      SC−55STというと、SC−88よりも格下の音源になるわけですが
      それでも確認できませんでした。

      そういえば、以前むらったさんの競演ステージに登録されたデータで音が遅れるという
      現象がありました。そのデータを以前借りていたSC−88ProSTで演奏してみた
      ところ、音が演奏の途中でまったく出なくなるということがありました。
      もしかしたら、接続の方法も問題になるのではないかなという気がします。
      ちなみに、SC−88ProSTはシリアル接続していました。

      現在、SC−8850はUSB接続。SC−55STはSC−8850からの
      MIDIOUTを経由しての接続となっています。

      何かの参考になりましたでしょうか?
      > ちなみに、SC−88ProSTはシリアル接続していました。

      私のSC-88もシリアル接続です。
      くさばさんの説も、大いにありえそうですね。
[211] Re[6]: 仕様?バグ?・・・(追試) 
投稿者:くさば 投稿日:2002/03/17(Sun) 16:53:47  [ 返信 ] 

      > もしかしたら、接続の方法も問題になるのではないかなという気がします。

      という、自分の発した一言が気になったので、SC−55STをシリアル接続
      につなぎ直してみました。
      そしたら、MIDIケーブルで接続していたときと明らかに違う振る舞いをしました。
      なんと、問題の現象が再現したのであります。

      そして、ついでとばかりに、SC−8850もシリアル接続にしてみたのです。
      そうしたら、問題の現象は再現できませんでした。

      というわけで、音源の処理能力+転送能力あたりが原因でなはいかと推測します。
[212] Re[5]: 仕様?バグ?・・・長くなりますが 
投稿者:開発者 投稿日:2002/03/17(Sun) 16:53:50  [ 返信 ] 

      >(1)エクスポートしても再現します。これは私のオリジナルデータでも同じです。
      >(2)[203]のデータで早速試してみましたが、やはり再現します。

      うむ〜。この仕掛では、魚はかかりませんでしたか...。(笑)
      >そこで同時イベントの処理に仕様として制限を設けている
      >・・・ということは考えられますでしょうか?
      >(マニュアルを読んでもサッパリわかりません!)

      あはははっ。
      私はSC-88のマニュアルを持っていないので、断定できませんが...。
      でも、持っていても理解できないかも知れない。
      音源のマニュアルは、わかりにくいと有名ですからね(笑)

      ただ、
      論理的には同時イベントであっても、物理的には順番に送信していますから、
      制限というのは考えにくいのですが、○○さんが仰有るように、
      処理速度が追従できないという可能性はあります。
      でも、その場合は、SC-88の表示パネルに「BUSY」とか「JAM」とか
      出ませんかねぇ〜? よく知らないのですが...。

      話は変りますが、
      この症状が出るのは、演奏を曲頭から通して再生する場合でしょうか?
      それとも、問題の部分だけを再生しても起るのでしょうか?

      と申しますのは、同時発音数というのは残響なども含めての制約ですので、
      もしかしたら、R指定やY指定などが効いて、ずっと以前の音がかすかに
      残っており、それが累積されて64音を越えるという可能性もあると思っ
      たからです。
[213] Re[6]: 仕様?バグ?・・・長くなりますが 
投稿者:くさば 投稿日:2002/03/17(Sun) 17:16:36  [ 返信 ] 

      > でも、その場合は、SC-88の表示パネルに「BUSY」とか「JAM」とか
      > 出ませんかねぇ〜? よく知らないのですが...。

      SC−8850の場合ですと、「MIDI Buff. Full」というのがそれに当たる
      みたいですね。説明書にはこう書いてあります。

      原因:SC−8850が多量のMIDIデータを短時間で受信したため、処理できません。
      対応:多量のMIDIデータを短時間で送信していないかどうか調べて下さい

      こうしたエラーメッセージがSC−88にもあるかどうかは別問題ではありますが一応参考までにお知らせしておきます。
      > この症状が出るのは、演奏を曲頭から通して再生する場合でしょうか?
      > それとも、問題の部分だけを再生しても起るのでしょうか?

      もちろん、問題の部分だけです。
      [203]のでーた「だけ」でも起こりますので。
      くさばさんの追試は興味深いですね。
      私は他に接続手段を持っていないので、
      このような検証は出来ませんが。
[215] Re[7]: 仕様?バグ?・・・長くなりますが 
投稿者:名越 投稿日:2002/03/17(Sun) 17:24:50  [ 返信 ] 

      くさばさんの説の通りのような気がします。
      私の音源YamahaのMU2000で、問題のデータはちゃんと再生できました。
      でもくさばさんが書かれたように以前むらったさんの競演で問題になったデータはうまく再生できませんでした。
      両方のデータに共通していることは、Vの変化の量が激しく、それが適用されるメンバー数が多いということです。このとき、Vの
      変化のためのデータが短い時間にたくさん送られて音源が(またはインターフェースが)処理しきれないということになります。
      とりあえず、V-60:16. のところを、V-20:16. に変えてみるとちゃんと再生できるのではないでしょうか。(これは問題を特定す
      る為のテスト)
      解決策としては、V-60:16._8^32 を、{_64V-10}6_16 のように、スロープから階段にしてみてはどうでしょうか(その次の部分
      も同様に)。この程度の階段で、耳で違いは分からないと思います。
      > とりあえず、V-60:16. のところを、V-20:16. に変えてみるとちゃんと再生できるのではないでしょうか。(これは問題を特定
      する為のテスト)

      あたりでした!
      V-32までは再生できますが、V-33以降、現象が再現します。
      名越さん提案の階段式の記述も試してみました。
      再生は可能みたいですが、なかなか音量変化が思うようにいきません。
      もう少しいろいろなパターンで研究してみます。
      ありがとうございました。
      >>でも、その場合は、SC-88の表示パネルに「BUSY」とか「JAM」とか
      >>出ませんかねぇ〜? よく知らないのですが...。
      >−中略−
      > こうしたエラーメッセージがSC−88にもあるかどうかは別問題ではありますが一応参考までにお知らせしておきます。

      現象再現中、何のメッセージも出ていないようです。
      メッセージを出すヒマも無いとか・・・。(笑)
      くさばさんも、いろいろありがとうございました。

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-04-29 (土) 22:15:22