Closed musicalman closed 3 years ago
はい、すべてがスムーズに機能しています。
ボリュームのアルペジオ→未対応
LFOじゃだめかなぁ。。。
返事が遅くなってごめん。 あなたの言っていることがよくわかりませんでした。 しかし、ボリュームコマンドアルペジオのアイデアは興味深いと思います。
はい、LFOが適切な形状を提供できない場合には必要です。他のいくつかのコマンドと組み合わせることで、チップチューンスネアを作るために使用することができます。特に、ボリュームコマンドがノイズジェネレータを制御する限り、AYで便利です。また、レジスタ書き込み、ノイズ周波数などのより多くのパラメータを操作することができれば、実際には多くのパッチで町に行くことができました。直接音色出力を変更するすべてのコマンドは、これらのコマンドアルペジオに動作することはできませんか?
あなたの言っていることがよくわかりませんでした LFOがボリュームのアルペジオの代わりにはなりませんか という意味です(^^;
全てのコマンドというのはかなり大変ですわ。。。 ソースを見ていただくとわかると思うのですが、 ひとつひとつコマンド毎、チップごとにコードを書く必要があり、 そう簡単な作業ではないです。
とりあえずボリュームのアルペジオはそのうち対応したいと考えてますが。。。うーむ。
ああ、わかりました。 ボリュームアルペジオを実装する予定がある場合は、試してみます。 ボリュームアルペジオは私にアイデアを与えました。 ノートのサステイン中に1つのアルペジオを使用し、ノートがリリースされたら、別のアルペジオに切り替えるのがクールです。 リリースは、rコマンドが検出されたとき、またはqまたはQコマンドによって音符が短縮されたときに発生します。 理想的には、サステインとリリースの部分は、/または同様の文字で区切られた同じアルペジオにある可能性があります。 /に遭遇したら、サステインループから抜け出し、リリース部分に切り替えます。 しかし、サステイン用とリリース用の2つのアルペジオを使用する方が簡単な場合は、それも機能します。 うまくいけば、それは理にかなっています。
Eコマンドのように、キーオフしたらリリース専用のアルペジオに移行できるかんじですね? ループとかはどうなるのかしら
はい、Eコマンドのリリースセグメントのように。 リリースに切り替えるときは、前のシーケンスループから抜け出します。 おそらく、サステインとリリースの両方が、独自のループを持つ別々のアルペジオとして扱われる可能性があります。 または、リリースは追加の同期モードである可能性があります。 別の問題:Eとボリュームアルペジオを一緒に使用するとどうなりますか?
Eとアルペジオは加算するべきでしょうね。。。
音程向けは既存のARPコマンドを使用する 例) '@ ARP 0 , 1 , q1 , #12 , 0 , | , 3 , -3 定義番号0に以下を定義する。 > タイモードを有効にする。 > gatetimeを1 > clock数を12に設定する。 > シフト無しで12clock発音。 > 3つ半音を上げて12clock発音 > 3つ半音を下げて(元の音程に戻して)12clock発音 > 1個目のループポイントに戻る
ARPはKeyOff時の特別な動作無し。
音量向けに新規コマンド(VAR)を追加する
例) '@ VAR 0 , 0 , #12 , 0 , | , 3 , -3 , | , 3 , -4 定義番号0に以下を定義する。 > 音量モード0にする。(dummy) > clock数を12に設定する。 > シフト無しで12clock発音。 > 3つ音量を上げて12clock発音 > 3つ音量を下げて(元の音程に戻して)12clock発音 > 1個目のループポイントに戻る KeyOffしたら > 3つ半音を上げて12clock発音 > 4つ半音を下げて(元の音程に戻して)12clock発音 > 2個目のループポイントに戻る
'@ VAR 0 , 0 , #12 , 0 , | , 3 , -3 , / , 3 , -4 KeyOffしたら > 一旦変化量を0に戻す > 3つ半音を上げて12clock発音 > 4つ半音を下げて(元の音程に戻して)12clock発音 > 2個目のループポイントに戻る
音程はARPコマンドにて定義。 音量はVARコマンドにて定義。 他のコマンドはCARコマンドにて定義。
ARPコマンドの時。 |と/の効果の違いは無い。 |と/は合計1個まで定義可能。 eは使用できない。
VARコマンドの時。 /を指定すると変化量をリセットする。 |と/は合計2個まで定義可能。 eを指定するとアルペジオ終了。(変化量リセット含む)
CARコマンドの時。 |と/の効果の違いは無い。 |と/は合計2個まで定義可能。 eを指定するとアルペジオ終了。(変化量リセット含む)
私はそれが好きです。 したがって、varコマンドはEコマンドの代替です。 これを実装できれば、より複雑なボリュームエンベロープを作成すると非常に便利です。 それほど重要ではありませんが、arpコマンド内で[]ループを使用する方法を追加できるかどうかも疑問に思いました。 これにより、何かを複数回繰り返すのが簡単になる可能性があります。 したがって、-2、-2、-2、-2、-2 ...と入力する必要はありませんが、代わりに[-2、] 10などを使用できます。 しかし、それは私がタイプしているときに思いついたランダムな考えだったので、それほど重要ではありません。
実装しました eは未実装
ありがとう、うまくいっているようです! しかし、私はバグがあると思いますか? テストとして、testArpeggio_2.gwiのこの部分を試しました。 '@ VAR 1 0 '@#6 0 | 3 -3 /#2 -6 アルペジオの最初の部分は問題ありませんが、キーオフしようとすると音が途切れます。 したがって、/の前の部分だけが聞こえます。 おそらく私は何か間違ったことをしていますか?
また、@ arpコマンドを使用すると、モード2と3が機能しないようです。 コマンドメモに記載されていますが、まだ実装されていないと思います。
testArpeggio_2.gwiであれば、56行目の 'F1 VP0 [c4r4c4r4] を 'F1 VP1 [c4r4c4r4] に変更すると、VAR 1 ~の定義が試せます。 そのままだとVAR 0 ~の定義が使用されます。
後、「|」,「/」を使用するとループしますので、キーオフした際に「#2 -6」を繰り返すことになります。 (これを任意のタイミングでやめさせるために「e」を考えてますが、未実装です)
ARPのほうは、まだ未実装ですw(忘れてた) CARも手を付けていません。
あと [と]で繰り返しができるようにする機能は今のところ実装する気はありません。 やるとしても、もう少し作りこみができてからかな。。。 実装したくない理由は、処理がいきなり複雑になってしまって混乱しそうだからです。 また、 [と]の中に、|と/を挟んだときどうする とか決める必要がでてきます。
キーオフについてもう少し調べました。 これが私のgwiファイルです: '@VAR0,0,|,#6,-1,-1,1,1,/,|,#3,-1 'A1 T120 v15 l4 o4 VP0 crergr
音が切れているようですので、/以降は何も聞こえません しかし、Ay3チップ(上記のファイルで使用)では、キーオフ中にパチパチという音が聞こえます。 このパチパチという音は、アルペジオの内容によって変化します。 ですから、キーオフ部分は認識されていると思いますが、音が切れすぎてしまいます。
とりあえず。。。 |と/は合計2個まで です。
'@var0,0,|,#6,-1,-1,1,1,/,|,#3,-1 は、3個つかっています。
今 外出中で動作確認できないのですが とりあえずopnで確認してください… おそらく リリースを出力できる音源である必要があると思います ソフトエンベロープを有効にするとAYでもいけるかもしれないですが。
FM音源では、RRに低い値を使用して、KeeyOff後の音を維持することができます。 次に、ボリュームアルペジオを使用すると、/の後のセクションが聞こえます。 しかし、RRに高い値を使用すると、KeyOff後もサウンドが十分に長く持続しません。 また、他の音源は瞬時にカットされるため、/以降の部分は聞こえません。 したがって、ボリュームアルペジオで/を使用する場合は、新しい音が鳴るまで音源のKeyOffを遅らせたいと思います。 @Eコマンドを使用した場合のKeyOffの遅延と同様です。
FMの場合は現状の実装のままで良いかなーと思ってます RRはユーザーが自分で設定するでしょうし。
問題はAYのようなソフトエンベロープを必要とする音源でしょうねぇ
そうですね。 ただし、Eコマンドはこの問題を回避します。 そしてそれはまた柔らかい封筒です。 それで、おそらく同じメカニズムをvarで使用できますか? そうでない場合、ボリュームアルペジオの/部分は制限されます...
と思ったんですが、いじってみたらmusicalmanさんの方法で十分のようですので それでいこうと思います。;-P
↑ちょっとためしてみてくださいませ e も実装しました。
おかげで、私はそれをテストしました。 私は2つのバグを見つけたと思います。 SN76489は、キーオフ後に続行されません。 音が途切れる。 K053260は、ボリュームアルペジオがアクティブな間は楽器を切り替えることができません。 例はここにあります:http://www.fileconvoy.com/dfl.php?id = ga8cb5a9715d798201000308368bc324bca73430261 これまでのところ他の問題はありません。
レポートありがとうございます。 TAG329 で修正しました。
test k053260.gwiですが、 '@VAR0,0,#4,-2,3,5,4,|,0,|,#2,-1 'S1 r1 T120 l2 v5 VP0 o3 c d e f g r e r に修正して確認しました。 元のままだと、 ・開始音量が大きいため、だんだん大きくなる変化がなくなってしまう。 ・RR時のコマンドが「/」の為、変化量が0に戻り、減衰がわかりにくい。 ためです。
ありがとう、修正されました! 今、私はいくつかの楽しみを持って、あなたを気にしないでしょう。
とじます
2つ、おそらく3つのアルペジオバグを見つけました。
ありがとうございます。 調査しまーす
音量アルペジオは同期モードは、存在しません。 (将来のために0として用意だけはしています) また、音程アルペジオのモードを他のアルペジオが参照することはありません。
コマンドアルペジオにはSyncという同期モードがありますが、 これもコマンドアルペジオのみの話であって、他のアルペジオがそれを参照することはありません
よって bug2とbug3は仕様通りの動きであってバグではありません。。。 。。。のですがちょっと動きとしてどうなのというかんじなので、 音程アルペジオのタイモードが無効の場合は、 通常のエンベロープと音量アルペジオをリセットするようにします。
なおbug1はバグでしたので修正します。
説明をありがとう。 あなたが説明するように物事は今行動しているようです!
@arpコマンドを使用しているときに何か他のものを見つけました。 アルペジオデータでqnまたはQnを使用すると、ノートは以前のようにキーオフされません。 FMトーンはコマンドに従ってキーオフするように見えますが、@ Eまたはボリュームアルペジオはキーオフしません。 少なくとも私が使ったサウンドチップでは。
例: '@ARP0,0,#24,q6,0,|,2,2,1,2,2,2,1,-12 '@VAR0,0,#5,0,|,-1,/,#1,-3,-2,-2,-2,-2,-2 '@E1,14,0,5,8,1,1,1,Ay3 'A1 T120 v14 l1 AP0 VP0 o4 c VPOF @E1 c1 EOF
この例では、エンベロープは早期にキーオフされませんが、古いバージョンではキーオフされました。 どのバージョンが変更を導入したかはまだ調査していません。 バグですか?
バージョンの番号はわかりますか?
まだですが、後で古いバージョンに戻ります。
アルペジオの振る舞いが変わったところを見つけました! TAG 352では、ノートは期待どおりにリリースされますが、TAG353ではリリースされません。 その時、あなたは私の以前の報告に応えて、新しいノートでエンベロープとボリュームアルペジオをリセットしました。 ただし、qnコマンドとQnコマンドはアルペジオ内で機能しなくなりました。
ありがとうございます!助かります!
TAG361で修正しました。ご確認ください。
いいですね、今のところ問題は発生していません。
いいですね、今のところ問題は発生していません。
ボリュームアルペジオでもう1つ見つけました。 多分それはバグです。 徐々に音がフェードアウトするボリュームアルペジオを作ろうとしていますが、key offで止めることができます。 おそらく私はそれを正しくやっていないのですか? 問題は、key offが遅すぎるか、まったく発生しない場合があることです。 #で指定されたクロック数が経過するまで、key offは発生しないようです。 gwiデータ:
'@VAR0,0,#3,15,-2,-2,#20,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,/,0 e 'S1 T120 l4 o3 v0 bug: 'S1 VP0 Q5 c d e f g a b >c
また、これがバグである場合は、@ arpコマンドを確認することを忘れないでください。
keyoffのタイミングでアルペジオの処理は '/' の位置に移動します。 そこで変化量0のまま、アルペジオは終了するので 音が出続ける状態になります。
申し訳ありませんが、理解できないと思います... 奇妙なことを説明させてください。 gwiファイルのQ5をQ4に変更したところ、期待どおりに音符がカットされました。 しかし、Q5を使用すると、音符が切れません。 アルペジオを変更した場合、たとえば#20を#18に変更した場合、音符はカットされますが、遅れます。
うーん、、、わからないのでmmlを提示してもらえませんでしょうか
ここからダウンロード: https://cp.sync.com/dl/a2ae279b0/rg25wye9-jur89xc4-6tbw5qpz-kxkj2d7j mmlデータを調整したので、動作は明らかです。
ウェーブテーブルサウンドチップ(HuC6280およびK051649)の新機能のアイデアがあります。 説明するのは少し難しいです。 言語翻訳がそれを台無しにしないことを願っています。 基本的に、私の考えは、ノートの演奏に合わせてウェーブテーブルを変更することです。 @hコマンドを使用してウェーブテーブルを通常どおりに定義しますが、パターンを使用して、時間の経過とともにウェーブテーブルを変更できます。 パターンの各ステップには、ウェーブインデックスとクロックティック単位の長さが含まれます。 さらに、ループポイントをパターンに含めることができます。 アルペジオコマンドに似ています。 これにより、パルス幅変調、フィルタースイープなどの興味深い効果が可能になります。 楽しみのために、手動でこれを実行して、どのように聞こえるかを確認しました。 これが私が使用したgwiデータであり、私が考えている種類の効果を見ることができます。 http://www.fileconvoy.com/dfl.php?id=g48cdcde7c49bc30d10002960193773bb8c34bab718 どう思いますか?