fc2ブログ

[TiMidity] うーん

とりあえずドライバー周りをさわろうかと思ってみたり。

誰得という感じですが、とりあえずこんなのやってます。

すでに入れ終わったもの(デバッグなう)

・ドライバーインストーラにアンインストールをつける。
・インストール時に単体インストールか三種類インストール
 (timiditydrv, timiditydrv1,timiditydrv2)か
 選べるようにする
・ドライバーの音量設定をtimiditydrv, timiditydrv1,timiditydrv2
 それぞれ別々にできるようにする

次入れようかなと思っているもの

・強制GM/GS/XGリセット命令などを送れるようにする
  ドライバー再生での、稀に起こる不具合回避用
・Windows 64bit 用ドライバーインストーラを作る

入れるか未定のもの

・portaudioの実装ではなく、ちゃんとしたDirectSound出力を実装
  誰得度高いのでたぶんやらない。
・VSTを使えるようにしてみる
  内部にダミーウィンドウを生成する処理をいつぞやの更新で仕込んだので、
  できなくはないが、素直にtwsyng使えばいいと思います。。

とまあ微妙なものオンパレードです\(^o^)/
次の更新はいつになるんでしょうね・・・。
スポンサーサイト



[TiMidity] ふぇぇ・・・

某所に公開されているうんこ氏のソースコードをbw版に一部反映させようかと思って
差分見てみたら多すぎてびっくりしたよぉ・・・。

とりあえず、MAP周りとreverb.cまわりを中心にマージしていこうかと思います。。。

SDまわりも私のなんちゃって実装とは違いしっかりしてるようなので
その辺りも自分のコードをポイして反映させる予定です。
あとドラムパートエフェクトも・・・。

忘れないうちにマージ状況
・reverb.c をマージ 終了
・playmidi.c をマージ 終了(テストフィルタとエミュレーションディレイは未反映)
・interface周りをマージ たぶん終了(OUTPUTとDELAYは未反映)
・GUI周りをマージ 終了(ディレイとOUTPUTは未反映)
あとはマップのロードまわり?かな・・・たぶん・・・。

こんな素晴らしいものを公開してくれたうんこ氏には頭が上がりません。ありがとうございます。
某所に書き込む勇気もないので、勝手ながらここでの一方的なお礼とさせて頂きます。すいません。。。
もしマージがダメとか、何かありましたら連絡くれると嬉しいです。

なおLPF butterworthですが
レゾナンス計算式を
double r = 1.0 / (1.0 + fc->midi_reso * 8.0);
みたいにするとかかり方がまた変わってくると思います。
レゾナンスが今まで以上に強力にかかるかもしれません。
なお書き換えた後は音量にご注意ください。
調整中にあやまって違うところ書き換えて大惨事になったとか恥ずかしくて言えない。

[TiMidity] スナップショット的な??

ソースコード(差分あるものは差分無いものはファイル):
http://bluewing.usamimi.info/timidity/files/src20130323.zip

バイナリ:
http://bluewing.usamimi.info/timidity/files/timidity_bwv_20130323_vc9_x32.zip

変更点
LPF周りを変更。butterworthフィルタ追加
REDUCEの値を変更(ドライバ遅延がましになってるかもしれないしなってないかもしれない
ドライバーコンフィグを修正とか
/LARGEADDRESSAWAREをリンカーオプションに追加 これで32bitでも4Gまで扱えるかもしれない。
(未確認)
Shake氏(http://www.shakemid.com/)の巨人のダンジョンのMIDIが正常にならなかった不具合を修正


おおまかには多分こんなトコロです。
LPFはbutterworth以外使ってないのでほかの挙動が怪しくなってるかもしれません。
もし挙動が怪しいところを見つけましたらお手数ですが報告いただけると助かります。
出力が48000hz以外の動作は怪しいかもしれません。
ほかにもなにかいじった気がしますが、LPF周りの演算を変えた以外の記憶が余りありません。

こんな怪しい状態で使用する人もいない気がしますが、とりあえずおいておきます。。。
なお某所に公開されているソースコードの内容は一切含んでません。

64bitビルドとか64bitで64bitドライバインストール手順とかもそのうち・・・

[TiMidity] timvstwrapのみ更新

やってしまいました。

チャンク保存時にデバッグ用ダイアログを仕込んでたんですが、
公開時に削除し忘れておりました。
大変申し訳ございません。

http://bluewing.usamimi.info/timidity/files/timidity_bwv_20120917_2_vc9_x32.zip

変更箇所:
チャンク保存時に意味のないダイアログが出現する問題を修正
チャンク保存・読込処理があんまりよくなかったので、修正
 →動作に影響はないはずです。
チャンク読み込み時に4バイトずれる問題がありました。おもいっきり嘘つきました。
timidity_bwv_20120917_2_vc9_x32.zipでは修正済みです。

[22:33]:追記
チャンク読込に問題があったので再修正しました。
プリセット読込がおかしかった場合この更新でなおるかもしれないです。

orz
MD5などを取るとわかると思いますが、一応フルパックという形をとってますが
timvstwrap以外更新はありません。
本体のソースも触ってないので、ソースコード差分は本日無いです。

更に追記。
VSTのプリセットの読込がおかしい場合や、VSTが正常に読み込まれない場合、
TiMidityを一度終了させた後、Presetディレクトリ内のpri fxp fxbを
削除してみてください。
プリセット情報が初期化されてしまいますが、これで多くの場合読み込めるようになるかと思います。

TiMidity 32bit 120902

いつものごとくテスト版です。
変更点は

vienaにてサウンドフォント編集時sample_linkが壊れる件の対策
(設定されたsample_linkを無視するように)
同名のVSTを選択時、それぞれ正しく設定が保存されるように変更

チェックが甘いのはいつもどおりなので、
うまく動かないとか、なおってないなどありましたらご報告いただけるとうれしいです。

チャンネルVSTモード有効時、ドラム音が正常にならない不具合を確認しました。
こちらの改善方法ですが、NRPNドラムパートエフェクトのチェックを外すことで改善されます。

BINARY (32bit)
http://bluewing.usamimi.info/timidity/files/timidity_bwv_20120902_vc9_x32.zip

SOURCE (zip)
http://bluewing.usamimi.info/timidity/files/src20120902.zip

追記
本更新後、VSTを使用されている方は、一度VSTの設定が
正しく読み込まれているか念のため確認をお願いいたします。

PageTopNext>>

最近の記事
月別アーカイブ
カテゴリー
FC2カウンター
プロフィール

えりおん

  • Author:えりおん
  • 詳細情報
  • 性別:男です
  • 年齢:まだまだ若いですお♪
  • ちゃんと就職できたようです。社会人生活!

ブログ内検索

RSSフィード
リンク