自作もの
よくよく見てみたら、ものすごい単純なバグだった…。 リストの「書き込み」と「取り出し」をいくら慎重にやった所で 「削除が適当」なんじゃダメだわな…。 というわけで、即座にバグを直してUPしてみたり。 これでフォーマット0でもいけるはず。*1 ついでに…
が、かなり中途半端です…すいません。 ……すいませんばっかりだな、自分(汗)
「ページに書けや」とか言われそうですが(汗) し、下書きということで…(汗)
というわけで、昨日の(機能の?)詳細をば。 ・WAVE出力 ============ 「譜面と同じディレクトリ」に 「test.wav」という名前で出力します。 ============ 重いです(汗) 1〜3分くらい待ちましょう…。 ・MIDI読み込み ============ ch10を「ランダムノイズ」に…
「WAVE出力」と「MIDI読み込み」を実装したものをUPしました。 MIDIの方はまだ簡易読み込みですが。 後、いつまで経っても改善出来ないので、 SDL版も明日UPしようかと思います。
とりあえず、一通りメッセージ(?)は読めるようになった。 これで後は、譜面に落とし込むだけ。…まぁ、それが少し面倒なんだけど(苦笑) …それよりもなんかベンドがズレるんですが(汗) 初期化の「0」が「+3」になる。 それ以外でも大体「3〜8」位はズレてるか…
とりあえず、コピペで。 ちょっとずつ修正していきます。 …ちなみに、読みは「ぜねらてぃお」だったりします。 ……仮名ですが(苦笑)
マルチスレッド化及び、マルチプラットフォーム化はほぼ完成。 一応、 // デバッグ用に「0」にして読み飛ばす #if 0//defined(WIN32) || defined(_WIN32) // ←ここに「Windows専用コード」が入る。 #else // ←ここに「機種依存しない(と思われる)コード」が…
マルチスレッド関連は簡単そうなので さっさと済ませてしまおう。 後、マルチプラットフォーム化進行中。 …ファイル名取得はやっぱり出来ないっぽいので、 適当なファイルから拾ってくるようにしようかと思ってます。
とりあえず、変な音になるのは修正。 …出来たんだけど、 何か曲によって変なプツノイズ・汚い連続音が入る。 調べてみたら、 どうも1フレーム*1毎に変なゴミが入ることがあるみたい。 …ゴミが入るなら入るで安定して欲しいんだけどなぁ…(汗) …さらに困ったこ…
とりあえず、SDL_Mixerの仕様っぽいのを少し。 ・実際に流すバッファは 最初に「Mix_OpenAudio() *1」で設定したバッファ長 を基準にして確保してあるみたい。 ・…というか、上記の分のバッファx1だけなんではなかろうか? ・え〜と、じゃぁマルチバッファは…
とりあえず、こんな感じ…? 詳しいことは、「マニュアル」の方を参照ということで。 う〜…いろいろ足りないから、ちまちま増やさねば…。
波形選ぶついでに、 「初期位相設定」や「フィードバック設定」も設定可能に。 デチューンどうしよ…。 そこそこ使えるようになってきた(気がする)ので、 サンプルのページに暫定版を置いておきました。 後は、「アルゴリズム設定」と「キーボード入力」あた…
現在こんな感じなんですが。 (何となく「2番のインストの4番のオペレータ情報」を出力してみたの図) まだエンベロープを何となく出力しただけ…(苦笑) 一応、裏で普通に鳴らしながら描画してます。 (鳴らして確認しながらいじくれるぞ…と言った具合のを考慮中…
…あ、そうか。 feedbackは「初期位相」じゃないのか。 コレは、「初期位相」ではなくて 「(自分に変調する際の)周波数」…なんだろうな。 でないと、「2Π」や「4Π」が意味不明すぎる。
…?feedback(=初期位相)「4Π」とか「2Π」なんてどう使うんだろう…? …と思ったけど、何でか音が変わるな…謎だ(汗)
サンプルなページ とりあえずエンベロープやら何やらも一通り実装完了。 次はGUIな波形エディタやら何やらですか。 …無意味にDirectX使うかも…(え〜(汗))
ココ最近の成果。 今回は擬似じゃなくて*1、ちゃんとオペレータっぽいのを作って鳴らしてます。 …が、単純に合わせただけで、異様に変調がかかってますね… TSSだと、…4か5位の変調度じゃないか…コレ(汗) それよりも、音がナイストっぽい方が問題じゃないか?…
…よくよく考えてみると、 別にモジュレータ部分はステレオ出力しなくてもいいんじゃないかと。 panとかでいろいろアホな真似が出来ないかと思ってたんですが、 あんまり意味がなさそうですし。 panの振り分けも、最後の出力*1で振り分ければOKでしょうし。 ……
部室に何故か 「x68000のマニュアル」と「X-BASICのリファレンス」 が転がっているので、ちょっと拝借して読んでみる。 「X-BASIC...」の方にはFM音源のパラメータ云々に関して書いてあったのを思い出したので。 で、大体わかったこととしては…、 ・アルゴリ…
いい加減うやむやなのも嫌なので、 何かこう、汎用インターフェース(?)を考える。
…そういえば、出力フォーマットをどんな感じにするか決めてなかった…(汗) どうするか? ・波形丸々 --- 悪くないけど、FMとか使った場合は意味合いが薄くなっちゃう。 後、無いと思うけど、データがデカくなり過ぎると*1落ちる(汗) ・用意してあるFM用関数で…
前回の通り、描画をSDLに任せた結果こんな感じになりました。 …まぁ、ファイル読ませて譜面通り描画するだけなんですけども。 ついでに、DLLを更新して 譜面の情報をDLLから読めるようにしたのが功を奏し、 思ったよりも楽に出来ました。 ……んまぁ、そのDLL…
に当たって、描画にSDLを採用しようかなぁ…と。 理由としては、 ・自作ライブラリを使うとなると、無意味に3D処理を使うことになるので嫌。 ・前に使ったことがあるので、基本的な描画はすぐに出来る。 ・WinAPIでもいいけど、覚えるのが面倒。 ・DLLを同梱…
で、昨日のイベントにて o4/:cde>c:/ = cde>c o4 cde>cというアドバイスを頂いたので、 修正してみる。 …が、やっぱりズレる …と思ったけど、ズレる譜面は一つだけ…か? 確かこの譜面もズレるのは /:〜/:〜/>〜:/〜:/となってる部分だけなんで、 それを基準…
かなり似非っぽいけど、シーケンス式(っていうのかな?)のFM変調が出来た(嬉) ……には出来たけども、「@i1,n」以外の変調度だと変な鳴り方になる。 ある程度は予想していたけども、そのまんま積算じゃダメだわね…(苦笑) どうせなので、成果を晒そうかと思った…
ぬぅ〜… 「ボリューム」と 「(左右別指定)ボリューム」と 「マスターボリューム」と 「パン」と 「ミュート(左右限定での指定可)」がある〜(大汗) も〜ぅワケワカラン…(壊) いやま、元から「(チャンネル用)ボリューム」と「(ノート用)ボリューム」は別に管理…
「32ch以上あると再生できない」バグがとれましたよと。 元をたどれば何てことはない単純なボケかましてただけでしたよ…(苦笑) (確か、1,2ヶ月前に直そうとしていたとこだし…) if( mml_data[i] >= 'A' && mml_data[i] 'A'+(char)(*master)->part_num ) じゃ…
何やら知り合いの某氏(id:hebiyan:20060927)が頑張っているようなので、 負けじと「自作音源でTSS形式のMMLも読める」ようにしてみる。 http://www.geocities.jp/r_mujirushi_9/GENE_TSS.zip確か直リンクはダメだったので、コピペでお願いします…。 一応、大…