最近更新した記事
各種統計値
ユーザーID:
934152総レス数:
37(第59023位)総編集数:
34(第8648位)総お絵カキコ数:
4(第3628位)総新規記事数:
1(第52521位)総ピコカキコ数:
20(第97位)ユーザーボックス | ||
---|---|---|
|
||
|
||
|
多分、記事に投稿するほどでもないものとか、該当する記事がないピコカキコ置き場になるかと。
ピコカキコのエンジン(FlMML)についてもいろいろメモを書いてたり。
量もそれほど多くはないんだけれども一応リストに。上に行くほど新しい。
対武器ボス戦 | 危険なピコカキコというよりは危険な波形定義。 | |
ヴェエエエエエェェエエエェエエ | ワールドカップの時にうるさかったアレ | |
海都アーモロード | ゲームはまだ未クリアな世界樹IIと並行して進めることに。人は気にせずゆっくりプレイする。 | |
LEVEL5 -judgelight- | どうしてあのPVはあんなことになったんだろう・・・ | |
不思議の国のアリス | #WAV13すげぇ。超すげぇ。 | |
Artificial Intelligence Bomb | mckからピコカキコへの手動変換とか。ぜひとも原曲も聞いていただきたい。ちょっとミスあり。 | |
あ゛ぁん/// | やれるものならやってみろと言われたので。ごめんなさい勢いでやりました。 | |
VSプロト | だいたいGBA音源準拠のはず。まぁPCMあるからなんでもありと言えばそうなんでしょうけれども。 | |
シュレーディンガーの猫 | かいててわけがわかりませんでした | |
カーニバルだ! | 矩形波1トラックのみ。アレンジ音源を先に聞いてて何かの拍子にBio_100%のサイトから元音源聞いたらBEEPだなんてびっくりですよ。 | |
東方妖怪小町 | FM音源の練習も兼ねて。なんとなく旧作っぽい感じで。 | |
えれくとりっく・えんじぇぅ (FC風アレンジ) | ひたすらアルペジオとピッチベンド。キックとスネアの補助にDPCM使用。 | |
(D)PCMテスト | ピコカキコ、楽しいよ! | |
魔理沙は大変なものを盗んでいきました の冒頭のあの音 | また再現ネタ。いわゆるガバキック。流用したい人向けのコメント付き。 | |
自作曲 | 前にDAWで作った自作曲をピコカキコに移植。FC音源っぽい感じで。 | |
シンデレラケージ ~ Kagome-Kagome | 勢いで再現ネタ。ピアノは無理・・・・・・。みょんみょんした音が鳴るのはどうしようもなかった。下のほうにある「なんか高音で変なノイズが乗る」の項を参照。 | |
街景 その名は百巻目に刻まれた! (街施設 冒険者ギルド) | FMでやろうかと少し思ったけど結局フィルタと波形メモリ中心。重いのはご愛嬌。 | |
冥 | FC風音源の実装と聞いて。 | |
RYDEEN | 結構重いです。余裕という人はコメントを見てさらに重たいものでも。 | |
ネイティブフェイス | 以前にトラッカーで打っていたものをMMLで書き直したもの。 |
ピコカキコのエンジンであるFlMMLについてのメモ。出来るだけ最新版に追従してるつもりですが、遅れたりしてるかもしれません。
リファレンスに書かれていない事を中心に。間違いがあったら掲示板で教えてくださると助かります。
パラメータ名 | デフォルト値に設定するコマンド | |
---|---|---|
音程関連 | オクターブ(O[n]) | O4 |
デチューン(@D[n]) | @D0 | |
LFO(@L[n],[n],[n],[n],[n]) | @L0,0,0,0,0 | |
音長関連 | デフォルト音長(L[n]) | L4 |
ゲートタイム割合指定(Q[n]) | Q15 | |
ゲートタイム絶対指定(@Q[n]) | @Q0 | |
音量関連 | ベロシティ指定(V[n], @V[n]) | @V100 |
エクスプレッション(@X[n]) | @X127 | |
音量モード指定(X[n]) | X0 | |
制御関連 | テンポ指定(T[n]) | T120 |
パン振り(@P[n]) | @P64 | |
音色関連 | VCO波形選択(@[n]) | @3 |
VCAエンベロープ(@E1,[n],[n],[n],[n]) | @E1,0,60,30,1 | |
VCFエンベロープ(@E2,[n],[n],[n],[n]) | @E2,0,30,0,127 | |
ノイズ周波数設定(@N[n]) | @N0 | |
パルス幅(@W[n]) | @W50(@3の場合), @W4(@5の場合) | |
フォルマントフィルタ(@'A') | @'' | |
フィルタ(@F[n],[n],[n],[n]) | @F0,0,0,0 | |
FM出力(@O[n],[n]) | @O0,0 | |
FM入力(@I[n],[n]) | @I0,0 | |
リングモジュレータ(@R[n],[n]) | @R0,0 | |
オシレータシンク(@S[n],[n]) | @S0,0 |
初期状態ではそれぞれのメモリに"0123456789abcdeffedcba9876543210"(FC三角波(@6)と等価?)が入っています。
また、再生開始時に初期状態に戻りません。前回再生時に設定したデータが残ります。ピコカキコエディタやFlMMLのフォームで編集するときには注意。
ちなみに、#WAV10で設定するときにデータが32桁に満たない場合の残りの部分は、0で埋められます。
T120 O4 @D0 @L0,0,0,0,0 L4 Q15 @Q0 @V100 @X127 X0 @P64 @3 @E1,0,60,30,1 @E2,0,30,0,127 @N0 @W50 @'' @F0,0,0,0 @O0,0 @I0,0 @R0,0 @S0,0
ブロックダイアグラムで書くと以下の図のようになっているようです。(rev.32278時点のもの)
16以上の値も指定可能。次の音が休符の場合のみ音が長くなる、という定義とかもできる。
Q24 ccr
上のMMLを再生すると1音目と2音目の長さの比は1:1.5になります。
&はノート/音長/付点の直後に書くこと。以下の例のような感じ。
c&l16c; g4.&>g16
V[n]と@V[n]は同じパラメータを変更します。どちらかのうち、後に出てきたコマンドの値が適用されます。
V[n]と指定したときの音量は@V[n * 8 + 7]と指定したときと同じになります。
V[n]と@V[n]の値の範囲以外の違いとしてその後の音量相対指定('(', ')')の際の変動量の変化があります。
最後に実行したコマンドが@Vの場合は1ずつ、Vの場合は8ずつ(それぞれ@Vでの値)変化するようです。
パルス幅設定(@W[n])はVCO波形がFCパルス設定の時とそれ以外のときで変更される箇所が変わります。
トラックの波形が@5(FCパルス)の時に@Wを書くと、@5の時のDuty比が、それ以外のときに書くと@3の時のDuty比が変わります。
@0@w20@3c @5c@w2 @3c @5c
上のMMLを再生すると鳴るパルスのDuty比は順番に、20:80→50:50→20:80→25:75になります。
フィルタ処理が不要な場合には自動で省かれるようになりました。下のような小手先のテクニックはもう要らないはず。
フィルタ(@f)とフォルマントフィルタ(@'')は音が鳴っていないときにも処理を行うようです。
休符のトラックばかりなのに妙に重い、という場合は疑ってみるといいかも。@f0/@''で一時的にフィルタの動作を止めるのも一つの手。
以前に投稿したシンデレラケージ ~ Kagome-Kagomeで特に顕著な現象。他トラックに埋もれてるけどRYDEENのリードパートなんかでも出てます。
FlMMLのオシレータ部(特に@1~@3)が非常にシンプルな波形を生成しているため、折り返しノイズが発生してそれが十分に聞こえるレベルになっちゃっているのが原因。フィルタとかLFOとかと組み合わせると非常に目立つから困り者。
対策としては・・・・・・ユーザレベルじゃどうしようもないかなぁ。FlMML自体にテコ入れすれば改善できると思うけれども結構重たい処理になる気がする。
置いときますね。DPCM自体の使い方はおーさんのブログのエントリを参照のこと。
http://www.logicmachine.jp/files/DPCMConverter.swf
http://www.logicmachine.jp/files/DPCMConverter.src.zip (ソースコード)
ピコカキコで投稿されているものなど、FlMML用のMMLデータの再生結果をWAVファイルに録音できるツールです。再生時の負荷が大きく再生が途切れ途切れになるものでも、きちんと繋がった形で録音します。
ダウンロードは以下のリンクから。Adobe AIRランタイムがあればWindowsでもMacでもおおよそ使えるはずです。使い方は同梱のReadme.txtを参照してください。
codereposにあがっているものに反映していただけたので簡単に説明を。
まずは分かる人向けの簡潔な説明。
$m{cmd}=@v100%cmd16@v16%cmd16; $m{c} $m{d} $m{e};
@v100c16@v16c16 @v100d16@v16d16 @v100e16@v16e16;
マクロ定義のときに$[macroName]{[argName0],[argName1],...}=...
というようにマクロ名を決めると、そのマクロの定義中で%[argName0]
, %[argName1]
...というような値がマクロのように扱うことが出来るようになります。
ここで、%[argNamen]
と置換される文字列は、マクロを呼び出す際に決定されます。
$macro{[val0],[val1]}
という具合に呼び出すと、その呼び出し部分の展開時には%[argName0]
が[val0]
に、%[argName1]
が[val1]
に、といった具合に置換された上で通常のマクロ置換が行われます。
・・・・・・プログラム経験無い人には分かりにくいよなぁ。誰かもっと分かりやすく解説してくれないだろうか。何かよく分からないところがあったらここの掲示板にでも書いてくれればいくらか対応できるかもしれません。
掲示板
急上昇ワード改
最終更新:2024/04/24(水) 19:00
最終更新:2024/04/24(水) 19:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。