VST Plugins Development 1.0
1 :
1 :
02/08/29 20:49 ID:f+MFjFW3
2 :
1 :02/08/29 20:50 ID:f+MFjFW3
3 :
名無しサンプリング@48kHz :02/08/29 20:50 ID:TzHZJ/cZ
うるせー馬鹿
4 :
名無しサンプリング@48kHz :02/08/29 21:09 ID:LXdiU1L4
硬派なスレだね。DTM板で一番難解になるかもよ。 でも期待age。
5 :
Loveeye :02/08/29 21:35 ID:GMRrYqdU
VC++6で開発すんのか?ヤパーリ。高いなぁ。
6 :
名無しサンプリング@48kHz :02/08/29 21:43 ID:YAGGf6EV
日本はプラグインが何故かすくないのでがんがん作ってちょ−だい
7 :
630 :02/08/29 21:53 ID:4mWDSVds
むしろMIDIフィルタを作りたい。 いまはインターフェース込みのcakewalk-CALランチャを製作ちう。
9 :
名無しサンプリング@48kHz :02/08/29 22:13 ID:rCwLG4iF
Buzzのmachine作ってやる! ていうつわものもいませんか?
11 :
ぽぴぃ :02/08/30 00:00 ID:zQzXJBRl
まずはSyntheditでオリジナルのシンセを作るところから始めてみるというのは?
12 :
名無しサンプリング@48kHz :02/08/30 00:25 ID:iy9DPrrL
何か「やれるもんならやってみろ!!」的なスレやね、いやいい意味で。(w 漏れの場合Cから始めないとだめぽ。だめぽ・・・
13 :
名無しサンプリング@48kHz :02/08/30 00:30 ID:l2AJSSND
この板に作れるやつなんか居るのか...
HSPあたりで作れると良いのだけどね。
15 :
名無しサンプリング@48kHz :02/08/30 04:34 ID:NnZJmySQ
一応C系言語は出来るのだが音声加工ソフトは数学の素養が要るだろ。 う〜ん、俺みたいな三流プログラマーにゃ敷居が高いなぁ。
16 :
名無しサンプリング@48kHz :02/08/30 04:41 ID:NnZJmySQ
あ、でも1のページ見ると単なるDLLなんだな。 理想のディストーションを作りたい。。。
17 :
1 :02/08/30 04:47 ID:UgY3K15h
1です。初めてスレを立ち上げてみたのですが、 みんなけっこういいレスを返してくれてありがたいっす。 2chでこんなにうれしいのは初めてです(笑)。 まずは上々のすべりだし。
Mac OS Xには豪華な開発ツールが最初から付属してるから 興味のある人は挑戦してみるのも楽しいかもですよ
19 :
名無しサンプリング@48kHz :02/08/30 06:02 ID:FsDcbOnu
VST SDKダウンロードしてみました。 ここまで開発環境がそろっていれば、あとはアイデア勝負やね。 ところで、みなさん環境はwin? それともmac? わし両方使ってるので、多少はお手伝いできるかも。
21 :
ぽぴぃ :02/08/30 19:58 ID:zQzXJBRl
>>20 私はWin、Mac、Linuxです。
でもMacのC++は持ってないので、CodeWarrior買おうかどうしようかという段階です。
保守ageします。
22 :
1 :02/08/30 21:17 ID:qdSpTnrr
あっ、ぽぴぃ はそんなにいっぱい持ってるんだ。 俺はWinXP(Home)。
23 :
名無しサンプリング@48kHz :02/08/30 23:31 ID:Ggbfkq0Z
ak.SysのVSTi版作って。 実態は外部音源だから、 高機能なのに超軽いソフトサンプラーになると思うんだが。
24 :
名無しサンプリング@48kHz :02/08/31 04:25 ID:Dj9H+4Sh
タダのBC++5.5で出来る? 本当ならDelphiで出来れば一番楽なのだが。
25 :
名無しサンプリング@48kHz :02/08/31 04:32 ID:Dj9H+4Sh
で、大まかにどういう仕組みでプラグインされるんでしょうか。関数ポインタとか 渡しといてバッファに音の信号が特定量たまる度にDLL内のコールバック関数が 呼び出される感じかな。そんな感じなら作れると思うのだが。
26 :
名無しサンプリング@48kHz :02/08/31 04:33 ID:GbsM9Qnh
ただのDLLだとしたら、ぶびでも作れる、ってコトか? SDKに回り道させて、衣着せて…
27 :
名無しサンプリング@48kHz :02/08/31 09:46 ID:DacFto1t
>>24 , 26
C++とのインターフェイスを書けばできるけど、フツーはそんな面倒なことやらないよ。
BC++ならできるかも知れない。でも自分で手探りになっちゃうやねぇ。
>>25 その通りだよ。
とりあえずIDだけ取得してみますた(w
でも配布するには事前にスタインとライセンス契約しないとイカンのね。
28 :
名無しサンプリング@48kHz :02/08/31 20:15 ID:MNotwd6P
お、立ってる がんがろー とりあえずWindowsサウンドプラグラミングという書籍を買ってみた
29 :
1 :02/08/31 21:29 ID:y2qLXoxw
ちょっと調べてみた。kakaku.comで。 Visual C++ 6.0 Standard 17,300 Visual C++ 6.0 (アカデミックパック) 9,580 Visual C++ 6.0は2日ぐらい前に値下がりした模様。 それまでは2万ジャスト。 もしかしてこのスレを見たのか(笑)?!! しかしたかいなあ。.NET Framework SDKではできないかなあ。
30 :
名無しサンプリング@48kHz :02/08/31 21:37 ID:MNotwd6P
visual C++.netでもいいのかな? まったくの初心者でスマソ、気長にやります
できたら公開してくださいね。っと。
32 :
名無しサンプリング@48kHz :02/09/01 02:00 ID:Y8QOJ7/U
フーリエなんたらとかわかんねーよ。。。 エフェクターへの道は遠い。あー、高校の頃ちゃんと数学やっとくんだった!
33 :
名無しサンプリング@48kHz :02/09/01 02:05 ID:3l3yhWbF
誰かVSTホストから信号を受け取ってそのままスルーできるVSTテンプレ作ってソース公開してくれ! 後はDSP部分を自分の好みのように改造すればOK、でみんな(゚д゚)ウマー
34 :
sage :02/09/01 02:11 ID:3l3yhWbF
ってか、VST-SDKに入っていた罠 スマソ
35 :
名無しサンプリング@48kHz :02/09/01 03:15 ID:twui+uQF
vc6stdはコードの最適化ができないからこういうリアルタイムなプラグインには 向いてないんじゃないかなぁ。試作くらいならいいだろうけど。
>>35 別に、組み込み系やるわけじゃないんだし、
そんなに強い最適化いらんと思うけど・・・
しかもVCだし。
でも、どうせなら Intel の C/C++ コンパイラぐらいはホスイ・・・
37 :
名無しサンプリング@48kHz :02/09/01 10:07 ID:zY0qxmNL
>>36 リアルタイム処理には最適化が必須でしょ。
レイテンシに関わる部分だから、速ければ速いほどイイ。
>でも、どうせなら Intel の C/C++ コンパイラぐらいはホスイ・・・
素朴な疑問だけど、なぜにIntel? VC++よりいいんですか?
それはさておき、ちと検索してみたら面白いサイトがありました。
たとえばMusicdsp.org 参考になるコードが盛りだくさん。
http://www.musicdsp.org/ 概算だけど、ReaktorやSyntheditなら鼻歌歌いながら10分で作れるシンセやフィルタも、
Cで書くと何日もかかるねー。ヘタすると数ヶ月かかりそう。
根性でがんがろー(w
38 :
名無しサンプリング@48kHz :02/09/02 03:48 ID:sNvRehpM
>>33 それ俺も欲しい!だいたいこういうプログラミングって
信号の入出力が面倒くさいんだよな。内部アルゴリズムは
パズル遊び的に楽しめるのだが。
>>38 AGainじゃダメなん?
つうかMSPでやればいいのでは?
40 :
名無しサンプリング@48kHz :02/09/02 09:10 ID:J6PLPe9O
VSTプラグインを作りたい人は、 VST Plug-Ins SDK 2.0.pdfの せめて3〜13ページだけでも読んでみれ。 プラグインがどうやって動いていて、 作るためには何をすればいいのか分かるハズ。 ちなみに高校英語で充分読めるぞ。 (このマニュアル書いたの英語圏の人間じゃねーなw)
このスレ終わったな。
>>23 ちょっと遅レスだけどこのアイデアすごい良いね。
VSTi感覚で扱いながら、専用DSP積んでるみたいに
サクサク動く。さいこーじゃないすか。
43 :
名無しサンプリング@48kHz :02/09/04 23:49 ID:pRRVU5Sk
ガンガレ!
44 :
名無しサンプリング@48kHz :02/09/05 01:25 ID:XyclOUB4
bs-1 作った人って日本人?
45 :
名無しサンプリング@48kHz :02/09/05 03:06 ID:Al42oO/Q
>>40 それどこにあんの?SDKはDLしたがHTMLがゴチャっと入ってるだけだった。
46 :
名無しサンプリング@48kHz :02/09/05 03:13 ID:lkSZCxxv
>>45 /doc/VST Plug-Ins SDK 2.0.pdf
これかな?
47 :
名無しサンプリング@48kHz :02/09/05 12:26 ID:pjhe7VDt
>>45-46 解凍したフォルダの中にあるから、探してみそ。
pdfファイルは これしかないからすぐ分かるハズ。
ちなみにWin版だと解凍したフォルダの最上部に
ライセンス書類と一緒に入ってるよ。
そういえば。 vstxsynth.cpp いきなりナイスなバグがあるよ。 コンパイルして起動すれば、一発でわかるバグなのになー。 やる気あんのか?(w > スタイン
49 :
名無しサンプリング@48kHz :02/09/07 04:49 ID:rJkD0773
VST対応ソフト持ってないんですがC++でソフト的にエフェクターを 作れるってのは興味あります。鳴りのテストするだけのフリーの VST対応ソフトってありますか?OSはWinです。
51 :
名無しサンプリング@48kHz :02/09/09 00:24 ID:pfa3nLEi
うーむ、さすがに伸びませんな。。。 ROMって勉強しようと思ってたのだが。
VSTプラグインのソースコードはプラットフォームに依存する。 具体的には各システムの構造による。 ・WindowsのVSTプラグインはマルチスレッドDLLである。 ・MacintoshのVSTプラグインはraw Code リソースである。 プラグインの名前はファイル名ではなくリソース名である。 ・BeOS,SGI(MOTIF)のVSTプラグインはライブラリである。
プラグインの音声処理にはprocess(),processReplacing()の2つのメソッドがる。 process()は必ず実装すること。processReplacing()は選択自由だがなるべくどちらも実装した方が良い。 process()は入力データと処理されたデータを加えた結果を出力(バッファに蓄積)する。 processReplacing()はOutputバッファを上書きする。 ホストは各メソッドに入出力バッファを供給する。 同出力(aux-send bus)の処理はprocess()が効率的。 単純な接続(insert)においてはprocessReplacing()が効率的。 全てのパラメータは常に0.0から1.0の32bit浮動小数点の値をとる。 VSTプラグインによる音声処理は-1.0から+1.0の間の32bit浮動小数点の値をとる。
AudioEffectはVST1.0に相当する基礎クラスで 宣言はaudioeffect.hpp,実装はaudioeffect.cppに記述されている。 構造体の定義はaeffect.hにある。 aeffectx.h,audioeffectx.h,audioeffectx.cppは上記と同じようなものでVST2.0に拡張されている。 ファイル名にXの付くファイルはVST2.0仕様。 基本的に2.0のクラスやファイルは全て1.0にもあるもので新しいものには名前にXがつく。 aeffectx.hはaeffect.hを含む。 audioeffectx.hはaudioeffect.hppを含む。 audioeffectx.cppはaudioeffect.cppを拡張したもの AudioEffectXクラスはAudioEffectから継承されたもので1.0仕様と互換性がある。 あーへたれな訳でゴメン。かいつまんでみた。 ユーザーインターフェイスと内部処理の関係とか重要なとこ訳してないので全然役に立たないっすね… 修正と続きをおながいします。
いいスレだなぁ。DTM板にあるとはおもわんかった。
>>54 乙。base classは基礎クラスっつーより基底クラスのほうが
しっくりくるなぁ。おれもひまなときに訳してみるよ。
56 :
23 :02/09/09 01:27 ID:oberHnSr
>>42 あ、レスついてる。遅レススマソ.
やっぱそー思いますよね。
VSTiにしたら曲と一緒に設定を保存できるし楽っすよね。
>>55 なるほど。基底クラスね!ありがとう。
プログラムの言葉もあまりわかってないのでかなりへたれですががんばります。
58 :
名無しサンプリング@48kHz :02/09/09 19:57 ID:oberHnSr
あと、チューナー作って。
59 :
名無しサンプリング@48kHz :02/09/09 23:06 ID:Imb3KJQU
TVチューナー?
61 :
名無しサンプリング@48kHz :02/09/10 00:50 ID:B43x6/Yq
>60 それマカー用やん Win用のチューナーソフトないですか?
63 :
名無しサンプリング@48kHz :02/09/11 04:55 ID:uTskXO9L
VSTとは関係ないかもしれんがApple,MIDIAのやってる 噂のAudioUnitのサンプルがCoreAudioSDK1.0に入ってました。 思ったよりはやい段階でSDK公開です。 ドキュメントやサンプルがけっこうたくさんあってまだ見きれてないですがちょっと期待です。 OSXのVSTSDKとかどうなってるのか知らないんですが AUのようにAppleの方でも何か動きがあるといいんですが。。。 VSTのカーボナイズとかOSXのVSTがらみで何か情報よろしくです。
補足です。 AudioUnitSDK1.0は大分前に公開されてたみたいでした。知らなかった。。。 うちではホストアプリがないのでサンプルのMultitapDelayAUをコンパイルしてもためせないのが残念です。 で、提案なんですがAudioUnitの開発も話題に入れてもいいでしょうか? 今後VSTやDirectSoundと並ぶ規格になることは間違いないと思います。
65 :
名無しサンプリング@48kHz :02/09/11 08:05 ID:HulkfMV6
>>64 コアの部分は似たようなものだし、このスレで扱うネタは
多いほどいいんじゃないですか。
ただOS X以外ではメジャーな企画にはならないかも。
現時点でサポートしているホストって何があるんですか?
>>65 この前公開されたLogic のOS X版で使えるかもしれません(未確認)。
67 :
63-64 :02/09/11 11:32 ID:uTskXO9L
レスありがとう
>>65 うん、AUの新ネタとかあったらここで盛り上がったらいいかなーと思いました。
まぁまだなんとも言えない状態なんでプラグイン作る人はいないと思うけど
新しいプラットフォームにチャレンジするのは面白いんじゃないかなと
思ってここに挙げました。
>>66 たしかLogicユーザーのみのアップデートですよね。
(ってアップデートなんだから考えてみた当たり前ですね、、、)
うちはQなんで試せないんですよ。
ADCのCoreAudio-MLの方でもいまいちVSTはディスカッションされてないので
こっちで盛り上げていけたらみんなが幸せになれるかなぁ〜って。
そんな期待をこめつつ。自分はまだドキュメント読んでる段階です、、、スマンです。
68 :
63 :02/09/13 12:48 ID:3ZAa82Ud
あー俺MIDIAとか書いてるし… 恥ずかしいです
69 :
1 :02/09/20 01:46 ID:p+vk8p2w
1ですけど、某掲示板でSteinがAU採用との情報を得ました。 AUとVSTとのデヴェロッパーレベルでの話し合いも していきましょう。 一般的な内容は、ほかのスレでしましょう。 AUとVSTの技術の具体的な違いなどの情報はありませんか?
70 :
名無しサンプリング@48kHz :02/09/20 02:19 ID:LP2o9hFA
>>69 僕もその某掲示板でその書き込みを見たんですけどソースを見つけることができませんでした。
Cubase.netでもその話はディスカッションされてましたが結論はまだ出てないように見えましたよ。
で、AUですがHostがねーよ!とか言ってしまいましたがありました。
/Developer/Examples/CoreAudio/Services/AudioUnitHosting/
mp3読めなくて不便ですがaif読ませてApple製のプラグインのいくつかは試せました。
VSTをPBでビルドできるようなスケルトンがあればもっと盛り上がりそうだけどなぁ。
現状OSXにおいてはややAUが有利な感じがしますよ。
VSTカーボナイズの資料もあるのかわからないし(自分がヘタレなだけかもしれんが)
だいたいHostがないんじゃ作っても試せないしなぁ。
とりあえずExampleのAU関係触ってるだけでもおもろいわ〜。 CoreAudio-MLでもAU盛り上がってますよ。 みんなでAUしよう!
72 :
名無しサンプリング@48kHz :02/09/21 07:29 ID:kx68Pk+8
SDK2.2 ダウンロードできないじゃんsage。 スタインはホントにやる気あんのかと。
74 :
名無しサンプリング@48kHz :02/09/22 05:03 ID:X/J+f7EL
たしかにダウンロードできないや スタインからの自動返信メールがこないね、、、
来たけど「The requested URL was not found on this server.」 やる気あんのか?
2.0のSDKをダウソしてきた。 これ、デバッグがかなり厳しいな。 デバッグビルドしたPluginをホストアプリに食わせてデバッグするしか無いのか? ビルドする度にNuendo立ち上げなきゃならんのか。めんどくせー
78 :
名無しサンプリング@48kHz :02/09/22 17:49 ID:X/J+f7EL
AUみたいな検証用の軽いホストアプリがあればいいんだけどなぁ。 波形編集ツールでVSTに対応してるやつならDAWよりは軽いけどね。 WinならDXプラグインのVSTラッパーをかませれば割とどんなアプリでも対応できそう。
漏れもVST作ろうと思ったことあるよ。 ずいぶん前にSDKのチュートリアルやったっきり進んでない・・・。 その時はとりあえずVC++とBC++とDelphiでDelayのサンプル作ってみた。 どれでもちゃんとできたよ。だからコンパイラは何使ってもいいみたい。 スタインのSDKはVC++用だけど、BC++でもソース自体はそのまま使える。 DelphiのSDKはどこかのサイトでだれかが公開している。 でもね、チュートリアルから先がわからんのよ。 デジタル信号処理の教科書(アナログもね)読んだりしたけど、仮にそれを理解して、 アルゴリズムを組み立てたとして、それをどうやってVSTの中に組み込むのかが わからん。 あと、本気でやるならデバッグ用のホストも自作しないと。 というわけで安易にReaktorに逃げますた。
80 :
名無しサンプリング@48kHz :02/09/23 07:15 ID:Q7oNM9y9
>>79 > デジタル信号処理の教科書(アナログもね)読んだりしたけど、仮にそれを理解して、
> アルゴリズムを組み立てたとして、それをどうやってVSTの中に組み込むのかが
> わからん。
そこまで出来てるなら、あとはprocess()とprocessReplacing()の中に
コードを書くだけでは? GUIも作るとなると面倒くさいけどねぇ。
それと、デバッグはパラメータをファイルに吐かせたほうが簡単かも。
昔、リアルタイム処理のプログラム書いたときはそうしてました。
> というわけで安易にReaktorに逃げますた。
それもヒトツの手です。まじでそう思う。
81 :
名無しサンプリング@48kHz :02/09/26 12:46 ID:oIxocNpY
82 :
名無しサンプリング@48kHz :02/10/01 10:25 ID:/D+t2A8C
>>81 ここでDelphi用SDKがゲットできますね。
ところでver.2.1やver.2.2beta3のライブラリを
VC++6でリンクすると、エラーがでるんですが、
解決方法ご存知の方います?
たぶんリンカのスイッチがver.2.0と違うんだと
思うのですが、あれこれやっても自力では解決
できませんでした。
83 :
とほほ :02/10/01 17:06 ID:/D+t2A8C
>>82 あっさり解決。ReleaseとDebugのライブラリ構成を
手動で変更してやったら正常にリンクできました。
「すべての構成」でライブラリ変更しても、
「すべての構成には反映されない」のねー。
つまり、それってバグじゃん(w > VC++
84 :
名無しサンプリング@48kHz :02/10/02 01:07 ID:W710ADum
Synth Editじゃだめなの? 今からやるならAUの方が需要があると思います がんがれ!
>今からやるならAUの方が需要があると思います そうか?だってAU使えるの林檎だけだろ?
86 :
82 :02/10/02 02:44 ID:4wwH9ok3
>>84 今作ろうとしているエフェクタは、SynthEditでは作れないんです。
ReaktorやCsoundなら楽勝なんですが。
結局、自作する目的は自己満足が90%ぐらいかなーと(w
>>84-85 >>今からやるならAUの方が需要があると思います
>そうか?だってAU使えるの林檎だけだろ?
現時点の必要度というか注目度は、確かにAUの方が高いですね。
しかし、今後数年以内にユーザー数がVSTを上回ることはありえないでしょう。
唯一の不安要素は、現行のVSTが16ビット入出力しか対応していないこと。
このあたりを拡張しないと音質面で差がつくかも。
そういえばAUの仕様書、まだダウンロードしてないなw
87 :
名無しサンプリング@48kHz :02/10/02 08:36 ID:Ca8mMxAo
>>86 > 唯一の不安要素は、現行のVSTが16ビット入出力しか対応していないこと。
浮動小数点32ビットでは?
88 :
82 :02/10/02 10:36 ID:4wwH9ok3
>>87 > 浮動小数点32ビットでは?
そうでした! いまのfloatは32ビットでしたね。
ショックっつーか、自分の時代遅れぶりが可笑しいっつーか(w
プラグイン内部はdoubleにして精度上げようと
思ってたんですが、あんまり意味ないかな。
いいディザのルーチンがあれば、double化する価値は
ありそうなんですが……
89 :
名無しサンプリング@48kHz :02/10/03 23:59 ID:H0ecd/d9
VSTプラグイン〜ホストアプリ間の入出力が96kHz32bit-floatで それが音質上のネックになってる…ていうことはちょっと ないんじゃないかなぁ。 プラグイン内部での処理時の語長についてはOSが許す限り プラグイン自身の自由だよ。VSTという規格はそこには立ち入れない。
90 :
名無しサンプリング@48kHz :02/10/04 00:47 ID:ak0OE/wE
そうじゃなくて、データを素通りさせるだけなら 問題ないんだけれど、プラグイン内部で演算すると 常に丸めやケタ落ちの問題がつきまとうでしょ。 VSTの場合、データが0-1で渡されてくるから、 適当な倍数をかけてケタ落ちなどを発生しにくく するとか、 他のルーチンがdouble精度で演算しているなら、 内部はdoubleで扱ったほうがデータ精度は当然有利だし、 場合によっては処理速度的にも有利「かも」しれない と思ってさ。 話は変わるけど、プラグイン内部で起こったDIV by 0エラーは 吸収してくれるのに、なぜかクリップしたあと音が出なくなるのは なんでだろ? 理由わかる人います?
この手のプラグインって、GUI作るのが面倒。 GUIコンストラクションツールみたいのないかな。
92 :
名無しサンプリング@48kHz :02/10/06 20:17 ID:fSd/q+Gk
VST3.0っていつまに出来たんだべ?
93 :
名無しサンプリング@48kHz :02/10/06 20:40 ID:C/5RA/Di
94 :
名無しサンプリング@48kHz :02/10/07 13:14 ID:Ls9+IFw/
>>92 メーリングリストによると、まだ仕様書もSDKも作成中みたい。
まー、スタインの規格だから。中身も発表時期もスタイン次第。
ともあれ、ver.2.x仕様のプラグインは問題なくver.3.0ホストで動くそうな。
つまり当面はSDK2.xで作っときなさいってことでしょう。
リコンパイル不要ってのは、けっこー重要(w
95 :
名無しサンプリング@48kHz :02/10/12 21:29 ID:nV4nmVK3
96 :
名無しサンプリング@48kHz :02/10/12 21:57 ID:RrQdlpmC
>>95 キタ━━━━(゚∀゚)━━━━!!(w
30分で曲作ってみましょうよスレの名曲をこれを見ながらだとさらにイイ(・∀・)カモ?
97 :
95 :02/10/13 10:25 ID:sG8RP9de
98 :
名無しサンプリング@48kHz :02/10/13 12:15 ID:gUPG1sg1
素晴らしい! ちゃんとカスタムGUI使ってるし!
99 :
96 :02/10/13 17:05 ID:Kjrps2YS
>>97 サラニキタ━━━━(゚∀゚)━━━━!!(w
オツカレサマ&イイ(・∀・)
静かな感じから一気にくる曲だと
キタキタキタキタ━━━━(゚∀゚)━━━━!!ってなってツボに入りますた。
カコイイ!!オープンソース化キボンヌ。ついでに100get
101 :
95 :02/10/14 10:13 ID:BMKZp2DC
>>98-100 ありがと〜ん。
ドキュメント読みながらコーディングに30分。GUI作りに3時間(苦
かかっちゃいました。やはりGUIが面倒ですねぇ。
> キタキタキタキタ━━━━(゚∀゚)━━━━!!ってなってツボに入りますた。
なるほど、それじゃ指定したスレッショルド以下なら「キタ」。
それを超えたら「キタ━━━━(゚∀゚)━━━━!!」にすると面白いかもですね。
ただ、この連休中は、ほかのプログラムを仕上げたいので
手を付けられませんが……
> オープンソース化キボンヌ。
ただVUコントロール貼り付けただけですよん。
mac盤もホスイヽ(◎¬◎)ノ
今入門Carbon読んでるから数年待って
MacでスクラッチできるVSTi作ってください。
あと、MPCみたいなヤツ。LoopAzoidにトリガーを付けて、ループ付けて。みたいな。
106 :
名無しサンプリング@48kHz :02/10/17 19:19 ID:A5PIXCmX
おい!ちんちん! 自慰してる場合じゃないぞ!
107 :
名無しサンプリング@48kHz :02/10/17 20:50 ID:gAt01vD5
今更唐突に思ったのだがMacでVST開発するならHostはMSPが良いのじゃないだろうか? 起動もCubaseよりは早いし、いろいろと小回りがききそうで良さそうな気がする。 でもMSPはまだカーボナイズされてないのが鬱だ、、、 VSTの開発するとなるとOS9じゃないとダメなのかなぁ。 つうかOSXでやってる人いる?
108 :
名無しサンプリング@48kHz :02/10/17 22:34 ID:MOu2JWGK
Borland C++ CompilerでSDKにあったサンプルをメイクしたんだけど動かないYO(ノД`)・゜ だれかbcc32で作れた香具師いませんか?
109 :
名無しサンプリング@48kHz :02/10/17 23:45 ID:yT7bTt2y
>108 C++Builderでは、 1) *.defの中の"main"を"main=_main"に修正する。 2)FPUの初期化コードを追加する。 3)longの文字定数がVisualC++と逆順になる。 という問題が以前はありました。 2)はコンパイラのバージョンアップで不要に、3)はSDKの バージョンアップ(SDK2.2)で変換するマクロが追加されて直っているので 1)あたりが原因ではないでしょうか? それ以前にbcc32ってDLLが作れるかどうかは知らないのですが...
110 :
名無しサンプリング@48kHz :02/10/18 00:02 ID:z1Iq1jdS
111 :
108 :02/10/18 10:39 ID:+qdQPTuz
>>109 アリガd。もちっといじってみるっす。
>それ以前にbcc32ってDLLが作れるかどうかは知らないのですが...
そういうオプションつければできますよ。
112 :
95 :02/10/19 10:10 ID:4CgyQVcB
>>102 Mac版もいります?
んじゃ、ちと待ってください。コンパイルできるか試してみますので。
113 :
95 :02/10/19 15:04 ID:4CgyQVcB
114 :
95 :02/10/19 15:07 ID:4CgyQVcB
ついでにageとこう。 他にプラグイン作ってる人いませんか? ヒマを見つけてやってるんだけど、近頃煮えてきました(w
115 :
名無しサンプリング@48kHz :02/10/19 15:09 ID:7tql3OYu
ウインドチャイムのVSTiを作っているのだが 難しい・・・ エンベロープの設定を音に反映させるのきつー
117 :
ほすぃ :02/10/19 16:17 ID:nuY0uFBc
手描き波形を再生できるVSTi。ADSRと。フィルター付き。2chDTM印とかどう?
>>117 手書き波形か。PaintBrushみたいなキャンバスに波を描いて再生するのか?
おもしろそうだな。
だが本業が忙しくて家でコーディングする気にならぬ。。。。
落ち着いたら研究してみるか。
Absynthじゃん
>>113 キタキタキタキタ━━━━(゚∀゚)━━━━!!
乙です、とてもよいです。
ちなみにDP,Pluggo上での動作確認しますた
>>116 ウィンドチャイムっつーことはFMですか?
>>117 おー、手描き波形。最近搭載しているのをチラホラみますが、
あれって、実際どうやってるんだろう?
手描きの波形を文字通り出力してるんですかねー。
その割りに意外とノイズっぽくないし。
>>112 ヽ(◎¬◎)ノサンクスコー
スンバラッスイー
123 :
ほすぃ :02/10/23 06:32 ID:EnaKYfvm
ageてやってくれ
>>113 すっげー!!!すごすぎる!
DPでWrapper上で確認させてもらいました。PSP VintageMeterよりかっこいいです。
126 :
ほすぃ :02/10/25 19:09 ID:1hj4qFFa
SYNTHEDIT Macほすぃ・・・。VSTつくれていいよなぁ
127 :
名無しサンプリング@48kHz :02/10/25 20:02 ID:ua+wDkF2
>113 ( ・∀・)b Mac用イイ!
このスレ超イイ! もっとageまくって2ch印のVST作りまくりましょうよ! Programできんのでアイディア出しとかで手伝いします。積極的に協力します! うちのサイトで紹介&保存しますよ、よければ。されたくなければいいですが。 まず今は手書きつくろう!手書きシンセ!MacもWinも 題名考案(w Paint-Synth Picasso Picasso Synth Painter ・・・。ネタ無いなぁ。
メタシンセみたいなもんか?
漏れもVSTplugin作りたーいって思って とりあえず"これならわかるC++"って本を読んでみましたが まだSDKのソース見ても解らない個所が多いです。 プリプロセッサ(?)周り(VC関係の部分?)とかはさっぱりです。 お勧めの書籍とか次にするべきコトはなんでしょうか? 識者方々、よろしければヒント下さい。
>>130 漏れも偉そうなことはいえんが、サンプルソースでADelayまで理解したら
あとはDSP関係の文献をあさってアルゴリズムを考える、のかな。
もちろん「どうやってビルドするの?」ってレベルならまずVCのチュートリアルから。
あ、VCじゃないのかな?
132 :
名無しサンプリング@48kHz :02/10/26 16:43 ID:HCKaJRnQ
>>130 どんなプラグインを作るかにもよりますが、まずは
>>131 さんが
書かれたとおり、SDKのサンプルを理解できるようにするのがいいと思いますよ。
ADelayとAGainはVSTプラグイン作成のベースになりますから、
この2つを改造していくことから始めてはいかがでしょう。
GUIを使わないエフェクタなら、Cの知識で作れますし。
そこから先はこのスレのリンク先をチェックしたり、プラグインの
メーリングリストに参加すれば知識が増えます。
とにかくこれといった近道はありませんので、じっくり取り組んでください。
133 :
130 :02/10/27 14:36 ID:NPipwVTR
>>131 &132
サンクスコ。docsを読みながらコードを読んでます。AGainは何となく解ってきたけど
ADelayは難しい…とりあえずAGainを改造して簡単な奴を何か作ってみることにシマスタ。
134 :
名無しサンプリング@48kHz :02/10/27 17:09 ID:kPwr+8sL
Delphiならある程度使えるんだけど、Delphiでも作れる?
136 :
130 :02/10/27 21:40 ID:NPipwVTR
>>130 いただきました。ソースも拝見しましたよ。
書き方は各人の好みがあるので言及しません(w
たとえ書き換えても、効率は変わりそうにないですし。
>>135 Delphi用のSDKをFruity開発者が作ってたような・・・
139 :
名無しサンプリング@48kHz :02/10/28 02:10 ID:euOYFvAf
あー、落ちたと思ってたらまだあったんかこのスレ。よかった。
141 :
135 :02/10/28 22:47 ID:y8HJjOJP
>138-139 今落としてみたけどマニュアル読むのにも一苦労。 とりあえずいろいろいじってみるよ。サンクス
142 :
名無しサンプリング@48kHz :02/10/29 10:42 ID:wUDpKXmx
上の方にでてたけどSDKドキュメントに >同出力(aux-send bus)の処理はprocess()が効率的。 >単純な接続(insert)においてはprocessReplacing()が効率的。 っていうのがあったじゃないですか。 これってprocessとprocessReplacingの両方を実装したものを実際使うとき、 同じエフェクト内ではどちらか適した一方だけが常に呼ばれるの? それとも同じエフェクト内でもprocessとprocessReplacing両方が切り替わりながら使われるの? うーんわからん…
143 :
名無しサンプリング@48kHz :02/10/29 10:47 ID:tspjaZ6n
144 :
名無しサンプリング@48kHz :02/10/29 11:03 ID:dHMCQ1P2
試してみればわかるよ。 まぁ、俺も興味あったのでためしてみた。 結果は両方実装してある場合、効率的なほうを選ぶ というかんじだな。 実験方法は、AGAINの void AGain::processReplacing(float **inputs, float **outputs, long sampleFrames) { float *in1 = inputs[0]; float *in2 = inputs[1]; float *out1 = outputs[0]; float *out2 = outputs[1]; while(--sampleFrames >= 0) { (*out1++) = 0;//(*in1++) * fGain; // replacing (*out2++) = 0;//(*in2++) * fGain; } } としてCubaseなりなんなりで試してみればわかる。
>>144 なるほど。processとprocessReplacingに違う処理書いて試してみれば良かったんだよね。
ありがとう。
正直、GUI実装がめんどいです。age
149 :
名無しサンプリング@48kHz :02/11/01 05:37 ID:lK3J9p0n
>>147 これってだれかつくってるの?
だれもつくってなかったら暇なときに
つくってやるよ。
番号ミスた。(2chブラウザでちゃんと表示されん・・・・。)
CONSOLEに付属のシンセで波形を手書きできるものがあったような。
スペル間違ってた!直したけど。
すすんでる?
ここはVSTのスレです。
158 :
名無しサンプリング@48kHz :02/11/04 12:55 ID:VI+XLVbf
159 :
名無しサンプリング@48kHz :02/11/04 13:04 ID:F4+OwHp8
お、いいね。 だれかあの安っぽいサウンドをなんとかしてくれ。 ムリ?
160 :
名無しサンプリング@48kHz :02/11/04 22:20 ID:BUDu1Mwh
>>156 そのソフトはエイリアスノイズを処理してないから、
そのままじゃVSTiとして使えそうにないですね。
面白い機能だとは思いますが……
>>158 サンキュー ありがとー!(w
カスタムGUI実装しようとがんがってるけど上手くいかない…ウツダシノウ… VC++なんだけどコンパイルオプションとかわけかんねーYOヽ(`Д´)ノウワァーーーン!!
162 :
149 :02/11/05 20:39 ID:04fX3K4O
とりあえず設計してるんだけど、いまの俺の技量(というか 知識)ではフィルター系はたぶんムリポ。いままでフーリエ 変換とかの信号処理系の本読み漁ってたけど、理解する のにかなり時間かかりそう。まぁ、じょじょに公開していこう かと思っています。目標は今週中にとりあず書いた波形で 音がなる。ってとこまでで。はい。
163 :
名無しサンプリング@48kHz :02/11/05 22:15 ID:VOQoDAzZ
>>161 どのへんがわかんないの? VC++ならある程度手伝えると思う。
>>162 >>37 のサイトにアナログフィルタのサンプルがゴロゴロあるよ。
デジタルフィルタもググればいくらでも見つかる。
164 :
161 :02/11/05 23:50 ID:gJvAFHmQ
>>163 アリガd。現在の所、
まずカスタムGUIを搭載しないプラグインエフェクトは作れました。(ちゃんと動いたYOワショーイ)
で、それにGUIを付けようと思い、SDKにあったdelayeditguiを参考にGUI部分のコードを書いたのです。
メイクしようとしたら外部参照に問題があるとか言われてvstgui.libをリンク。
そうしたらコンパイルは通ったもののしかし…cubase上で使おうとすると
原因不明のエラーです。。といわれて立ち上がらない。
コンパイルのオプションとかもdelayeditguiは他のサンプルと微妙に違うし
最もコードにバグがあるという可能性もあるわけですが…
何から疑うべきでしょうか?VC++6です。
165 :
163 :02/11/06 12:40 ID:V6wUzW5o
>>164 なるほどなるほど。使っているSDKのバージョンはいくつでしょう?
たぶん、あっさりリンクできたならver.2.0かな〜と思いますが……。
で、Cubaseが「原因不明のエラー」とメッセージを出した場合は
10中8,9、GUI回りの初期化ルーチンがアヤシイです。
このヘンを見直してみてはいかがでしょう。
また、メッセージを出さずに起動できたのにVSTリストに表示されない場合は、
defファイルをリンクしてないなど、違う原因が考えられます。
んで、VST SDKのサンプルソースは決して誉められたコードじゃありません。
たとえば、Open sourceになっているコレとかの方がよっぽど参考になるハズ。
http://web.tiscali.it/atrianti/ns.htm VC++のプロジェクトファイルごと配布されているので、
これをベースに改造してもいいかもですね。
がんばって下さい。進んでますね。 by.口だけの128
167 :
161 :02/11/06 20:18 ID:ko2z9obJ
>>165 レスありがとうございます。
SDKのバージョンは2.0です。
cubase自体は普通に立ちあがってます。
VSTリストでも認識されているが選択してon又はeditをしようとするとエラーが出る
と言った症状です。
>たとえば、Open sourceになっているコレとかの方がよっぽど参考になるハズ。
>
http://web.tiscali.it/atrianti/ns.htm すごく参考になりそうです。じっくり読んでみます。
>>166 >がんばって下さい。進んでますね。
アリガd。あせらず粘り強く…必ず作るぞモルァ!!
168 :
161 :02/11/06 23:41 ID:ko2z9obJ
カスタムGUIキタ━━━━(゚∀゚)━━━━!! >>10中8,9、GUI回りの初期化ルーチンがアヤシイです。 >>このヘンを見直してみてはいかがでしょう。 というまさしくその通りでした。 if(!hoge)ってするはずのをif(hoge)と書いて重大なエラーを引き起こしてますた(ノД`)・゚・。 お騒がせしますた。あんまし難しい物は無理かもしれませんがなんかイイのができたらうpします。
手書き波形で10波形目をこう、(以降10波形目の波形続く)63波形目をこう(ここから63波形目の形に変更)、とか書くことができて、 さらにADSRとかを設定できたら折れ的には最高にキタ━━━━(゚∀゚)━━━━!!状態。信者に成増。
age
>>169 タンのレスを見ながら思ったけど、波形モーフィングもあったら最高ですね〜。
開始波形と終了波形の2つを書いて、変化速度を指定すると、だんだん変わっていく、と。
・・・そんなVSTiがあったら俺はシェアウェア1万でも買う(w
本当に作るとしたら…20点くらいで入力された波形を直線補完で各周波数にサンプリングとかになるのかな。 うーん実用的なのを作るのは時間掛かりそうだな…
173 :
名無しサンプリング@48kHz :02/11/09 13:34 ID:pkCIGw2T
>>171 >・・・そんなVSTiがあったら俺はシェアウェア1万でも買う(w
マジ? じゃー作ろうかな(w
>>172 >20点くらいで入力された波形を直線補完で各周波数にサンプリング
直線補間じゃムリでそ。せめてスプライン補間ぐらいして波形データを作成。
周波数にあわせて間引き読み出し&ナイキスト周波数あたりでバッサリLPFが
手軽じゃないかな。
>実用的なのを作るのは時間掛かりそうだな
同感。特にGUIがメンドイ……。
174 :
172 :02/11/09 15:58 ID:KD1WoY6b
>>173 なるほど。勉強になるポ。
暇な時間にちょっとづつ作っていこっかなぁ・・・
VSTiからホストのBPMコントロールってできるんですか?
>>177 確か出来なかったハズ。つーか、出来たら本末転倒でしょーw
ホストのTempoを調べるのはできるんだけどね。
サンプルにホストのBPMあわせれたらな〜とか思たんですが・・・ ありがとうございました。
誰か、macでMPWでの導入手順教えて。 MPWアポー純正でフリーやけど開発終了してるし、SDKはSDKでバグあるみたいやし。 いったい、OS9.2.2でうまく動くの? まあ、俺はまずはCから憶えなあかんねんけど。 手順さらしてくれたら、誰かが作ってくれそうな淡い期待を込めて。 マク、ウィソに比べてフリーのん少ないし。
>>179 ふつう。ホストにサンプルあわせるだろ(w
age
183 :
名無しサンプリング@48kHz :02/11/20 23:34 ID:THFPuHBy
外出ですか? tp://sound.jp/groovecube/ja/index.html
これで8Kはちょっとたけぇなぁ
185 :
名無しサンプリング@48kHz :02/11/24 15:35 ID:UIR7MDNr
SDKのGUIライブラリにあるCVuMeterの使い方がいまいち分からないっす。 メータに値を渡すのは何処でやれば良いんだろ? kitaVUの作者さん、よかったらおせーて…
186 :
名無しサンプリング@48kHz :02/11/25 14:01 ID:f1aiTaJr
187 :
ひみつ :02/11/25 20:55 ID:EMbA4UfL
-WAVE- Tri,Saw,Sqw Volume Course pitch +-12 Fine pitch +-100cent Env ADSR -Filter- Frequency Resonance Freq<High -24db Freq>Low -24db ADSR を三つ。 そしたら無茶苦茶いいシンセっしょ?
188 :
185 :02/11/25 23:59 ID:7Ev84Osy
>>186 どうもアリガd。ちゃんとVUの動作をするようになりますた。
ただエフェクトのonを切るとピークホールド状態で表示がゼロに戻らないっす(つД`)・゚・
どうやったら良いんでしょう…
189 :
186 :02/11/26 00:27 ID:qheU5mtH
>>188 そんなときは、どこかのIdle()の中で
ゼロに戻してやればオケーです。
190 :
185 :02/11/26 20:57 ID:IC1uIIGm
>>189 うまく行きました!!本当にありがとう。
これでリダクションメータ付きコンプを完成させられそうです。
191 :
186 :02/11/27 22:28 ID:OXqG5Xp1
>>190 お役に立てたようで、なによりです。
>これでリダクションメータ付きコンプを完成させられそうです。
おおっ!完成したらぜひ公開してください。
私も作りかけで放り出したコンプがあったりして(w
192 :
名無しサンプリング@48kHz :02/11/27 23:21 ID:OXqG5Xp1
193 :
185 :02/11/28 12:04 ID:CrjepdCH
>>191 >おおっ!完成したらぜひ公開してください。
じゃあ出来たらうpします。あとはお絵かきして実装するだけなんですがこれがなかなか…
ツマミとか大変ですよね。パラパラ漫画みたい…もう少々お待ちを。
194 :
185 :02/11/30 13:10 ID:FkTQU1S1
195 :
186 :02/11/30 21:31 ID:UMRHw0zr
コンプ、バッチリ効いてます。デザインもカッコいいですね。 これkneeの特性はどうやって変えてます? 以前自作したときは屈曲点を滑らかに補間する関数を 作ってみましたが、もっと効率いい方法があるのでしょうか。
198 :
185 :02/12/01 13:52 ID:yHmLpHkL
>>186 SoftKneeは直線的(コンプの入出力特性が2回折り曲がる感じ)になってます。
一番soft側に設定するとThresholdの-6dB辺りからリダクションが始まります。
最初は曲線でやろうかと思ったんですが面倒くさくなって…折れの耳じゃ音の違いも良く分からなかったし(w
>>196-197 じゃあソース上げるから誰かmac版ビルドしてくれませんか?
199 :
186 :02/12/01 21:08 ID:Z0yKu55L
>>198 なるほど(笑) わたしも同じこと試したことあります > 2段折
ただそのときでも、傾きの違う2段折のデータを2種類作ってブレンドしてました。
>折れの耳じゃ音の違いも良く分からなかったし(w
わたしもはっきり言って、違いはわかりません。
そもそもミックスしちゃえば、差を聞き取れるヒトは
そう多くないんじゃないかな(w
>じゃあソース上げるから誰かmac版ビルドしてくれませんか?
次の土日でよければ、わたしやりましょうか。
ただVC++からCodeWarriorに持っていくときに、多少コードを
書き換える必要があるかも(ソースにもよります)。
出来なかったらゴメンなさいになりますがー(w
必要なら捨てメアドさらします。
やった! 煽ったかいがあった(w
どなたかWAVEファイルのサンプルを1ずつ前後に動かせるプラグイン作ってください。
202 :
名無しサンプリング@48kHz :02/12/02 12:25 ID:8GUI6E+c
>>201 前に動かすのは無理でしょ(w
未来は予知できない…
>>201 意図がワカランのですが何したいの?
文字通り解釈するなら、それはサウンドエディタでもできるでそ。
>>202 対象がWAVEファイルなら、未来も過去もないじゃん。
205 :
185 :02/12/02 23:21 ID:/IqqQBJe
>>204 WAVEつーかSDIIでもAIFFでも同じだけど
普通に考えて波形エディタで出来ることを
わざわざ質問しないだろうし201はリアルタイムで
やりたいってことじゃない?
202がそう解釈するのはわかるけどな
207 :
186 :02/12/03 23:51 ID:53rHzi3v
>>205 ソース拝見しました。これならアッサリ移植できそうです。
土曜までお待ちください。
ヤター
210 :
age :02/12/04 19:46 ID:hTV242bl
期待age
211 :
名無しサンプリング@48kHz :02/12/06 01:41 ID:kb4JAKgv
期待期待age
212 :
名無しサンプリング@48kHz :02/12/06 10:35 ID:EMudjC/n
おまいら期待ばっかじゃなくてdevelopもしる!! …折れモナー
213 :
186 :02/12/08 02:05 ID:lcHCBg+0
マリガトー 今から落としてみまする
os9.2.2 G3 400MHzにて cubase32 5.1とlive1.5.1で動きますた。 liveで使うと、メーターがもたつきますね。あと、ツマミをドラッグ中にツマミ上にある数値が連動して変わらず、放したあとに変わります。 cubaseではメーター、ツマミとも問題なく動きました。 まあ、音に関係する事ではないので全然OKですけど、一応報告までに。 何はともあれ乙でした。そしてマリガトゴザイマスタ。
216 :
名無しサンプリング@48kHz :02/12/08 13:10 ID:fj9SAjfE
>>213 オツカレさまでした。
早速使ってみます。
217 :
185 :02/12/08 15:00 ID:hT1wWxVE
>>186 アリガd&お疲れ様でした。
>Plugin SDK通りに作るとムダな部分がありますので、それをカットしたことと
参考になりますです。何分プログラミング自体ほとんど素人なもんで…
>Ratioのスペルを変更してます。
(゚д゚)アラヤダ…思いっきりスペル勘違いしてました。win版も近く修正しておきます。
218 :
216 :02/12/08 15:58 ID:fj9SAjfE
OS9.2.2/LOGIC SILVER4.8 でメーター・つまみとも正常に動きました。 かかり具合も結構イイ! (・∀・)感じかも。
OS9.2.2 Cubase4.1で確認 正常です つうか(・∀・)イイ!! アタック感(タイムでなく)が簡単に作れるわこれ ホワイトノイズ突っ込んでガッチリかけると簡単にパーカッションになるよ つるっつるっとアタックが出てきて…いいわあ〜 いわばつるぺた 神
220 :
185 :02/12/10 23:11 ID:gMKC7Oee
221 :
名無しサンプリング@48kHz :02/12/11 02:22 ID:4Vx0WPla
| | | ________________________________________________ | | |_____ΦΦΦΦΦΦΦΦΦΦΦ||ΦΦΦ | | | ̄ ̄ ̄ /| 1潰し会場 | | | / /|TTTTTT TTTTTTTTTT||TTTTT | /\ | /|/|/|^^^^^^ |三三| ^^^^^^^^^^^||^^^^^^^ | / / |// / /| | / / |_|/|/|/|/| | / / |文|/ // / |/ /. _.| ̄|/|/|/ ∧_∧ /|\/ / / |/ / (___) オタクドモが糞スレ立てたぞ /| / / /ヽ /〔 祭 〕〕つ | | ̄| | |ヽ/l `/二二ヽ | | |/| |__|/ ∧_∧ / /(_) | |/| |/ ( ´∀`) (_) ∧_∧ 煽るぞわしょーい | | |/ // / ^ ̄]゚ (` ) | |/ ゚/ ̄ ̄_ヽ ⊂〔〔 祭 〕 | / /_ノ(_) ┌|___| |/ (__) (_ノ ヽ ヽ / (_)
222 :
633 :02/12/11 21:37 ID:eD4Ac8K8
>>185 さん
感謝感激ですぅ〜!。
ゲインリダクションメーターつきでなおかつソフトニーつきで
もちろんアタックリリース付でフリーで扱いやすいコンプ・プラグインを探していたのです。
あきらめてシェアウェアのものでも購入しようと思っていたところですが
こんなところでめぐり合えるとは(涙)。ありがと〜。
223 :
名無しサンプリング@48kHz :02/12/11 21:39 ID:8ZaXE/WJ
>>186 落とさせていただきますた。乙です、
使いやすくて良いです。
ちなみにDP,Pluggo上での動作確認しますた
224 :
名無しサンプリング@48kHz :02/12/11 22:04 ID:tYent+Zl
>>185 newバージョンの方使ってみますた。
前よりリリースの表示値と聴覚上の変化が良く一致するようになった気がしますです。
fruityloopsのvstラッパーから正常にに動作しますた。かなり常用の(゚д゚)ヨカーン
イイスレなんだがどうしてもネタが尽きがちだよなぁ age
226 :
詐欺師が出ました>>920 :02/12/14 18:38 ID:c9ZU6hBt
DTMオタク(プッ) キ モ イ
228 :
名無しサンプリング@48kHz :02/12/19 10:08 ID:MZttI5cB
age
229 :
名無しサンプリング@48kHz :02/12/24 08:49 ID:6iDoNQGG
保守ing
手書きシンセを作ってくれる神はいないのか…
231 :
名無しサンプリング@48kHz :02/12/25 03:18 ID:0dTZFcRO
>185 入力ゲインの表示できますか・・・?
232 :
名無しサンプリング@48kHz :02/12/25 03:20 ID:0dTZFcRO
VSTでVC、DelphiなどのWinコントロールは使えるんですか??? そういったものを使用した場合の不具合などあるのでしょうか? ざっと見渡しても殆どがオリジナルUIなので。。。
>>232 できるよ。GUILIBを使う利点は異プラットホーム間での
ソースの使いまわし。不具合というかどうかはしらんが、
WinAPIをつかったプラグ印をMACに移植しようとしたら
めんどいよ。ってぐらい。
その気になればVSTメモ帳とかできる。(意味ないけど)
234 :
185 :02/12/28 17:31 ID:YYsiN835
>>231 できるけど…要りますか?どうせならマルチバンド化とかしてみよっかなぁ…
235 :
名無しサンプリング@48kHz :02/12/30 17:57 ID:QOGHpq/f
ホッシュage
ホッシュホッシュ
237 :
名無しサンプリング@48kHz :03/01/06 19:12 ID:UxAj0XIa
コンプつかってますよ どうも
239 :
名無しサンプリング@48kHz :03/01/09 07:02 ID:/AAtKtT1
あげるか うっ おもいな 238まできたからな
240 :
名無しサンプリング@48kHz :03/01/12 01:41 ID:MK6Cha1p
このスレなくなると寂しいのでAGE
ホントSynth1使えるよ〜
FMHeavenがいい
243 :
名無しサンプリング@48kHz :03/01/14 00:14 ID:tOkHkaUn
マルチバンド、マジ喜多井揚
テステス
開発者降臨キボウage
246 :
名無しサンプリング@48kHz :03/01/21 07:42 ID:Xafi49EE
コンプ・プラグインの個性というのは、 内部的にどういう違いなんでしょうか・・・?
247 :
名無しサンプリング@48kHz :03/01/21 16:47 ID:BgJIY0wa
>>246 コンプの動作原理と実装方法にどんなのがあるかを調べれば。
そんなの説明する文章書くんなら、自分のサイトにコンテンツとしてアップするわ。
#そのくらい量があるってことな。
249 :
名無しサンプリング@48kHz :03/01/21 21:03 ID:BgJIY0wa
んじゃ暇くれ。 ちゃんと波形処理の基礎くらいは自分でやれな。 そこまで面倒みれん。
250 :
名無しサンプリング@48kHz :03/01/21 23:32 ID:kjjIV6sn
250記念age
252 :
名無しサンプリング@48kHz :03/01/22 13:36 ID:I57yaTFb
今月号のCマガジン、信号処理の基礎の特集やってるぞー。 毎年この特集はあるけど、今回のが一番わかりやすいと思われ。
>>246 漏れのうpしたプラグインはとあるハードのコンプの回路図を元ネタにしてみますた。
幾つか眺めて見たけど、動作原理的にはフィードフォワード型でエンベロープを変化させるモノと
フィードバックさせて変化させるものがあるみたい。
とくにフィードバック型は一癖ありそうなモノが多い(MXRのダイナコンプとか)と思いマスタ。
あとはエンベロープ検出方法とかVCAになに使ってるとか…いろいろ個性がありますよ。
schematic compressorあたりでググるのが良いかと。
>>252 情報サンクスコ。読んでみます
254 :
246 :03/01/23 08:46 ID:b+SGaB/I
>249,251,252,253 情報ありがとうございます。 いろいろあたってみます。
定期age
256 :
名無しサンプリング@48kHz :03/01/26 13:12 ID:OVJez72P
最近このスレ盛り上がってないのがチョト(´・ω・`)ショボーン 185コンプ、常用してまっせ。 きつめに掛けるとベロシティーが変化してる感じがして(・∀・)イイ!death
ぶっとい音が鳴るモジュラーシンセなら5万出してもいいよ 作ってくれー
258 :
名無しサンプリング@48kHz :03/01/30 23:58 ID:pZUT2FCO
下がってる?
259 :
名無しサンプリング@48kHz :03/01/31 11:53 ID:eAb+9y2c
>>257 「ぶっとい音」が何か、具体的に説明してみてくれ。
5万出さなくていいから。
太いとか切れがイイとか艶のあるとかって プログラムの実装上で表現するとどうなるんだろうね。 TubeAmpシミュみたいな軽い歪物ってソフトクリッパだけじゃ上手くいかないよね? なんかそういうアナログ感でるもの作ってみようかなぁ…
261 :
名無しサンプリング@48kHz :03/01/31 14:39 ID:eAb+9y2c
そう。まずモデル化で悩むよねー。 ただの線形システムじゃダメダメだし、各種ノイズ混ぜるくらいじゃアナログ感は出ない。 フィードバック的なシステムも単なるエフェクトに終わってしまうし。 なんなんだろうね、アナログ感て。
逆に、バリバリガリガリギンギンのデジタル臭い音の出る プラグインが( ゚д゚)ホスィ…
263 :
名無しサンプリング@48kHz :03/02/01 11:30 ID:O/IMprEb
MDA degradeも良いね。
265 :
名無しサンプリング@48kHz :03/02/04 08:13 ID:zFRcyZ49
定期age
266 :
名無しサンプリング@48kHz :03/02/05 03:24 ID:oeCzeADD
>>261 オープンリールにオーバーレベル気味で録音した時のテープ独特のコンプレッションとかが、個人的には キター! って感じ。
cubaseVST/32についてたtruetapeってどうだったの? 俺使ったこと無いんでわからんのですけど。 いい線いってるのかな?>>アナログのモデリング >テープ独特のコンプレッションとかが、個人的には キター! って感じ。 ただ実際に(コンプレッサーとしての)コンプレッションはかかってないと思うんだよね。 コンプレッサーかけた時に起こる副作用的な音質変化に似たモノか…その辺微妙。
>>267 いわゆるコンプレッションだよ。磁気テープにはリニアに記録できないでしょ。
テープのシミュレーターにMagnetoとかもあったよね。
つーか、Vintage Warmerとか大抵のコンプにはテープもどきのプリセットがあるね(w
>>268 >いわゆるコンプレッションだよ。磁気テープにはリニアに記録できないでしょ。
ただの非線形テーブルならソフトクリッパでコンプとは違う罠。
270 :
268 :03/02/07 00:16 ID:rdadaEzl
>>269 んーー、ソフトクリッパだって一応非線形だけど。
テーブル参照していいなら(=処理が遅くても許されるなら)、
何のシミュだって作(以下略w
結局、プラグインなんて基本的なルーチンは
どれも似たりよったりで、難しいのは目的の効果なり発音なりを
実現できるパラメータの抽出と実装だよなぁ、と思う昨今。
完成度が高いプラグインほど、ユーザーにパラメータを触らせないし
いじらなくても満足できる音になるもんね(w
271 :
名無しサンプリング@48kHz :03/02/07 13:16 ID:ZhP9Sl+Q
>完成度が高いプラグインほど、ユーザーにパラメータを触らせないし >いじらなくても満足できる音になるもんね(w ドゥウイ。かかり具合を上手い事直感的に操作できるパラメータがあるってのは良いよね。 なぜリバーブのプリセットはあんなに使いづらいもの多いのかと小1時間(以下略
272 :
名無しサンプリング@48kHz :03/02/11 19:28 ID:4nXzuCUX
定期age
273 :
名無しサンプリング@48kHz :03/02/12 00:29 ID:G7eZfmwN
AudioEffectX::setProgramメソッドでプリセットプログラム変更すると vst sdkのvstguiのライブラリで書いたコントロールの表示がうまく更新されないんだけど… しかもなにか音声を処理してる時だけ…再生停止中はちゃんと切り替わります。 おまいら上手くいっていますか?
Synth1の次回予定で >「フィルターがカクカクしてる」という話あり。 >次版では改善します。 >(今のフィルタはクリップ防止のために若干波形が >歪むんですが、これも改善予定。) ってあるけど、個人的には任意でカクカクのままに出来るようになると良いなぁ(ワガママ
マルチで申し訳ない。 他のスレ(フリーソフト紹介)でも質問したんだけど Synth1とその作者のDaichiさんってどうなったの? HPもしばらく音沙汰ないし。 誰か知らない?
実は折れも気になってた>>daichi lab. いろいろ要望出過ぎてめんどくなったかな(w フリーウェアなんだしその辺あんまりこだわらずマターリと開発続けて欲しいなぁ
277 :
名無しサンプリング@48kHz :03/02/15 22:29 ID:bNh9AA30
定期age
278 :
名無しサンプリング@48kHz :03/02/16 00:07 ID:zKBMEdeS
>>273 おまいのプラグイン以外で上手くいかないのが
あったら教えてくれ(w
つーか環境は何よ?
プログラムチェンジのフローとか書いてみ。
279 :
名無しサンプリング@48kHz :03/02/16 11:33 ID:p8a0sBTb
>>278 環境はwindows 2000/cubase VST5.1r1
VC++6.0sp5でつ。
ソースが公開されてるものでプリセットが実装されてるのがなかなかないようで…
プリセット格納用のクラスへのポインタをAudioEffectXのデータメンバに持たせて
コンストラクタでnew、デストラクタでdeleteして
あとはsetProgramでそのプリセットの値をsetParameterに渡してプログラム変更。
なぜか再生中のGUIの表示だけ更新されないんだよね。音は変わるし。
setParameterがguieditorのpostUpdateも呼び出してるはずなんだけどな…
280 :
278 :03/02/16 16:29 ID:zKBMEdeS
>>279 音は遅延なく変わるわけね?
んじゃ、
エディタの::valueChanged (CDrawContext* context, CControl* control)まわりで
control->update (context); をサボってる箇所はない?
音も遅れて変わるなら、バッファサイズあたりもクサイ(w
(例のSynth1のフィルタがカクカクするのもバッファがらみじゃないかなー)
それでもダメなら、デカいアニメノブ使ってるとか描画まわりに負荷がかかりすぎてる
とかかなぁ。でも、このケースはまれだろうねぇ。。。
これらを見直しても改善しなかったら、俺の想像もつかないような
他のルーチンがバグってると思いますです。
>ソースが公開されてるものでプリセットが実装されてるのがなかなかないようで…
↓ここに良サンプルがたくさんあるよん。どのソースも参考になるのでオススメ。
この作者はdfxのメンバーの一人で、なかなかのテクニシャン(w
ttp://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/tom7misc/vstplugins/
281 :
373 :03/02/16 16:39 ID:LwYDCgOI
282 :
279 :03/02/16 21:02 ID:p8a0sBTb
>>278 情報サンクスコ
原因がわかりますた。
AEffGUIEditor::setParameter内でCViewを派生したオブジェクト(CControlすべて)に対して
CView::redraw()というメッソドを呼び出さないと
postUpdateしただけでは表示が切り替わらないことがあるようでっす。
各コントロールに対してredrawを呼び出すようにしたらうまくいきますた。
//SDKのサンプルでredrawなんて使ってなかったじゃん(泣
283 :
278 :03/02/17 01:17 ID:8m7+ZGP4
>>282 なにはともあれ、おめでとう!
redraw()は呼ばなくてもフツーは済むと思うんだけど、
そういうトラブルが起きたら使ってみます。情報ありがとう。
ところでSDKのバージョンはいくつ?
ver.2.2でなければバージョンアップをおすすめします。
全機能を試したわけじゃないけど、使った範囲ではかなり安定してるよ。
284 :
名無しサンプリング@48kHz :03/02/19 19:53 ID:u8tLSgzb
定期age
SDK2.2入れてみたらVCがリンカのエラーはきますた… LNK2005とLNK4006。リビルドしても駄目です。回避しる方法ある?
286 :
名無しサンプリング@48kHz :03/02/21 19:55 ID:rhrK7gR7
287 :
285 :03/02/21 20:21 ID:4AoCX43X
288 :
名無しサンプリング@48kHz :03/02/21 21:29 ID:cC1semvW
>>287 not found?
いけるよ。ほんでそこにでかでかと書いてある。
うーんやっぱり404になるっス。でもgoogleのキャッシュが見れますた。情報サンクス
290 :
名無しサンプリング@48kHz :03/02/24 15:05 ID:zUI3C2t8
今発売中のCマガジン、また波形処理の特集してるね。 すごく分かりやすく解説してる。これ読んでわからんヤツはアキラメロって感じだ。
291 :
名無しサンプリング@48kHz :03/02/27 01:12 ID:HnZgXprp
ageないとな
293 :
名無しサンプリング@48kHz :03/03/05 11:22 ID:K9EP/SN2
ホッシュage
CLEANのスペクトルコピーだけ欲しいですよ。
295 :
名無しサンプリング@48kHz :03/03/10 21:36 ID:jKsbWkvz
定期age
296 :
名無しサンプリング@48kHz :03/03/11 14:22 ID:yrL3Mlqv
ところでHost作っている人いますか?
デバグ用簡易ホストとかあったらイイね。
298 :
名無しサンプリング@48kHz :03/03/11 18:13 ID:yrL3Mlqv
299 :
名無しサンプリング@48kHz :03/03/11 23:00 ID:0wCPgRRW
300━━━━━━( ´_ゝ`)━━━━━━ゲト
301 :
山崎渉 :03/03/13 17:26 ID:3ttyvhW+
(^^)
302 :
名無しサンプリング@48kHz :03/03/14 23:34 ID:IAQh1OZA
ホスト作りたいなぁage
TB-303
304 :
名無しサンプリング@48kHz :03/03/19 11:33 ID:ysepmEyC
ほしゅage
hsy
306 :
名無しサンプリング@48kHz :03/03/26 01:58 ID:6CD4qNHa
あ
そ
ぼ
う
ぜ
い
き
な
314 :
名無しサンプリング@48kHz :03/03/30 15:03 ID:MP1MdwjW
age
317 :
315 :03/04/01 00:14 ID:FFTGP9/r
ごめん
318 :
age :03/04/08 16:14 ID:cdBH8XlZ
age
319 :
名無しサンプリング@48kHz :03/04/08 18:49 ID:UB4Zzyuh
FreeのMIDIプラグイン作ってほしい。 Synth1に付いてるやつみたいなアルぺジェーターを。
自分で作れ
>>319 その要望を実現すると、
それはつまりSynth1
そのものになることを理解しているのだろうか。
そこんとこよろしく(w
322 :
名無しサンプリング@48kHz :03/04/12 23:22 ID:d0WFdRGD
保守めんどくせー
>>321 たぶん319の言いたいのは、ソフトシンセじゃなくて
アルペジエイターのノート情報を「MIDIデータとして」
吐いてくれるプラグインが欲しい、って事じゃないのかなぁ
極端な話、SC-55にもアルペジオが掛けられる、と(w
アルペジエイターにあらまほしき アルペジオの例をあげてほしい。
マルチバンド化期待age
326 :
山崎渉 :03/04/17 12:12 ID:x0HE0NpT
(^^)
327 :
名無しサンプリング@48kHz :03/04/18 01:05 ID:CrEuNM+l
hosyuage
328 :
山崎渉 :03/04/20 06:06 ID:qzdymQAX
∧_∧ ( ^^ )< ぬるぽ(^^)
329 :
名無しサンプリング@48kHz :03/04/20 22:05 ID:i6J+gcCg
まげ
330 :
名無しサンプリング@48kHz :03/04/22 21:13 ID:RwISrRTG
331 :
_ :03/04/22 21:15 ID:oOwrKpNY
332 :
名無しサンプリング@48kHz :03/04/25 02:58 ID:Z1eDMSsO
下がってるな 一応age
speed synth.つくってください おながいします
334 :
名無しサンプリング@48kHz :03/05/01 23:28 ID:Ro996kHh
speed synthって何さ?
337 :
名無しサンプリング@48kHz :03/05/06 11:06 ID:qjLSS6MU
ほっしゅあげ
338 :
bloom :03/05/06 11:12 ID:qlIgx+hL
339 :
名無しサンプリング@48kHz :03/05/06 15:27 ID:wzUTuQpD
定期age
340 :
名無しサンプリング@48kHz :03/05/08 23:35 ID:cfO1l7HY
doppler効果のエフェクト作るから誰か原理を 教えてよ。 ついでに、ピッチシフトも作るからさ。 参考文献を挙げてくれたら非常にありがたい。
ピッチエンベロープ付きのサンプラー使ったほうが早く無いか? フォルマント機能のないピッチシフターだとありがたいス
343 :
名無しサンプリング@48kHz :03/05/12 20:24 ID:T36Q5sSy
>>340 中学校か高校の教科書に出てるだろ、ふつー。
だいたいドップラー効果の原理も知らんのに
「ついでに」とか言ってる時点で(以下略
まー、いいや。エフェクト後のデータに含まれる
エイリアスノイズは処理しとくと吉。
345 :
340 :03/05/14 23:11 ID:JS6Qfpmq
>>343 >>344 それくらい知ってるよー。
でも、周波数変更するだけでホントに良いの?
音って、空気が密な所と疎なところが波として伝わるわけだよね。
で、音源が動いていると、その粗密の具合が変化するんじゃないかなー。
要するに、音程だけでなく波形が歪んだりするような気がする。
周波数変更するだけで良いなら楽でいいんだけどね。
ドップラー効果の場合は音の長さが変わっても良いから。
で、ピッチシフトは周波数を変更する時に音の長さが変わらないように、
補完してあげると。
補完の仕方は調べないといけないな。
346 :
bloom :03/05/14 23:12 ID:JNpzEoud
347 :
名無しサンプリング@48kHz :03/05/15 10:59 ID:orOq7T7g
>>345 そりゃ音源の動き方にもよるわな。
んでその動きってのは、音の周波数を歪ませるくらいに高速なのかね。
っていうか、いくつかグラフ書いてみりゃー分かるぞ。
横着せんと、書いてみれ。
> 周波数変更するだけで良いなら楽でいいんだけどね。
え、マジで。すごいな。
エフェクトってことは、入力されてくる音をリアルタイムで順次処理しなきゃ
いけないんだが。そうか、楽な方法があるのか...
348 :
340 :03/05/15 20:25 ID:IirwqlCe
もう解決したんだけど、レスが付いてたので。
>>347 > エフェクトってことは、入力されてくる音をリアルタイムで順次処理しなきゃ
> いけないんだが。そうか、楽な方法があるのか...
もし、波形が歪んでいないのなら、ドップラー効果の音程の変化は、
テープの早送り、遅送りと同じ原理だから、音の長さを一定に保たないと
いけないピッチシフトに比べてだいぶ楽だよね?
まー、これが難しいと言われたらどうしようもないけど。
349 :
名無しサンプリング@48kHz :03/05/15 21:14 ID:VMyKbFS3
要するにリングバッファの読みだし速度にLFOを掛けろってことか?
350 :
名無しサンプリング@48kHz :03/05/16 13:05 ID:qm+Sb2i5
つかぬ事だがmax/msp & pluggoでVSTi作って シェアウェアで配付するってのはダメなん? それじゃあステインさんに許可もらえないとか? なんか大きく間違ってたらスマソ...
>>350 ステインさんよりもmax/mspとか側の問題じゃないすか?
たぶん。
352 :
343 :03/05/19 01:56 ID:CzbeI+LH
お、進展してる。完成したら公開してね。
>>348 > もし、波形が歪んでいないのなら、ドップラー効果の音程の変化は、
> テープの早送り、遅送りと同じ原理だから、
原理は同じでも、プログラミングするときは
全然違う発想しないとね。バッファ内の量子化データ
読み出しポイントを変化させるわけよ。
だから波形はかならず歪むし、ピッチDownにゃ補間がつきもの。
> 音の長さを一定に保たないといけないピッチシフトに比べてだいぶ楽だよね?
なんで楽になるのよ?
ああ、そうか。速度変化しないケースだけ考えてるのか。
それはそれでアリかもね。
>>349 でんでん違う(w
外野です。設計したことはないのですが 素人考えではドップラー効果とピッチシフタの実装って 結局同じになるのかと思うのですが。 多分音速よりも速く近付いてきたり遠ざかる 救急車はいないからピッチシフト範囲がたいしたことなくて、 経験的にいうと 近付く->遠ざかるで半音程度ピッチが下がるので、 近付く->元の再生スピードの50セントup : 救急車が自分の前->等速再生 : 遠ざかる->元の再生スピードの50セントdown の効果がかかるピッチシフタを設計するのと 同じように思えるのですが。 50cent = 1オクターブ(2倍ピッチアップ)の(50/1200)倍 こんな感じかな。 ピッチシフト量を算出する時に 本当は救急車のスピードをパラメータにして計算すると 正しいのかも。 pichup = 元ピッチ×(音速+救急車のスピード) pitchdown = 元ピッチ×(音速−救急車のスピード) スピードのパラメータ化できると、救急車のスピードにLFOをぶっかけて ロータリースピーカまでいけそう
>>353 訂正
> pichup = 元ピッチ×(音速+救急車のスピード)
> pitchdown = 元ピッチ×(音速−救急車のスピード)
pitchup = 元ピッチ×(音速+救急車のスピード)÷音速
pitchdown = 元ピッチ×(音速−救急車のスピード)÷音速
なお元ピッチは1.0にしてバッファの読み出し間隔とすると
pitchup = 1.00***
pitchdown = 0.9******
みたいな数字が出てきてこれを整数部と小数部に分解して
補間演算の元ネタにする
355 :
山崎渉 :03/05/22 02:21 ID:0Ik6yrGn
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
救急車って、近づいてくる時と去る時で音程だけじゃなく音色も変わるよね (こもり、残響感など) スピーカーの向きの問題だろうからドップラー効果とは別の話かもしれんが
357 :
354 :03/05/23 00:49 ID:3sJRrZdJ
>>356 > 救急車って、近づいてくる時と去る時で音程だけじゃなく音色も変わるよね
> (こもり、残響感など)
>
> スピーカーの向きの問題だろうからドップラー効果とは別の話かもしれんが
こもった感じの効果からいうと、速度が変化している時に
Hi-Dump 的な1次のLPFをそのときだけかかるようにすれば
実装はできますよね。LPF というかあれ、
----|>+------------------->
| Z-1
+----<|------
こんな形のフィルタ。
残響はあんまり分かんない。耳が悪いのか? > 自分
板違いだったらプログラム板逝きますが。
358 :
343 :03/05/24 14:02 ID:OptSQWFR
>>353 >素人考えではドップラー効果とピッチシフタの実装って
>結局同じになるのかと思うのですが。
同じですよ。それは340もすでに分かってるみたい。
面倒なのは、データの補間をどうするかと、
入出力がデジタルデータだというところだけだと思う。
>> 356-357
> (こもり、残響感など)
違う意味でLPFは絶対に必要なんだってば(w
エイリアスノイズがバリバリ乗ってるからね。
残響はドップラー効果とは関係ないし、
設計時は切り分けて考えておかないと。
音の味つけのために、あとから実装してもいいよね。
> 板違いだったらプログラム板逝きますが。
スレ的にはいいんじゃないのー?
漏れはどっちも見てるから、どちらでもええよ。
359 :
354 :03/05/25 13:52 ID:nPEVBS/2
では 358 さんのお言葉に甘えて
>>358 > >> 356-357
> > (こもり、残響感など)
>
> 違う意味でLPFは絶対に必要なんだってば(w
> エイリアスノイズがバリバリ乗ってるからね。
了解。最終段で補間結果を取り出す際に
Fc:ナイキスト周波数のアンチエイリアスをかけないと
シンバルはキラキラしちゃいますね。
#ドップラー(音源移動)するドラムセットがあるかは別の話(w
360 :
名無しサンプリング@48kHz :03/05/28 23:45 ID:OxBH8ki7
a g e a g e
361 :
名無しサンプリング@48kHz :03/06/06 14:14 ID:2YWUxmpw
a g e a g e
おまいら1176ソックリのコンプ/リミッター作ってください おながいします
>>362 そんなあるもん作ってもらってもしょうがないだろ。
っつか大手に対抗するようなものはさすがに厳しいだろうし。
どうせならメジャーなとこが出さないような変わったのをキボン。
その前に、ここのスレにいるプログラマさん達、
今までに作ったやつくださいw
非常に自分勝手ですがおながいします( ゚Д゚)
たぶんみんな自分のサイトとか持ってて そっちで公開してるんじゃないかなぁ
365 :
363 :03/06/09 23:11 ID:BwFIUMOA
>>364 そうですよね。
検索はだいぶしたので実は持ってるかもしれませんねw
まぁ2chにアドレスはってなんて言えないし。
ええとこの場をお借りして、
フリーウェアのVSTを開発、公開してくださってるみなさま(TдT) アリガトウ
これからもガンガッテください( ´∀`)
スレ汚しスマソ。
366 :
340 :03/06/12 22:26 ID:7Qv41jf0
久しぶりに見てみたら、書き込みがされてて驚いた。 途中まで作ったが、なかなか難しいね、ピッチシフタ。 あんまり期待はしない方が良いけど、 とりあえずもう少しがんばります。 ではでは。
>366 ガンガレ(・∀・)!!! マクーにも対応させてくれたらもっと応援しちゃうゾ
368 :
名無しサンプリング@48kHz :03/06/13 16:30 ID:aD2mFqYO
Mac本体と開発環境くれたら、作るゾ。 興味はあるんだが、お金がービンボーが憎いー 自分のカイショナシがニークーイーー
369 :
名無しサンプリング@48kHz :03/06/14 00:42 ID:eOzppO1E
>368 (・∀・)ムリ!!
>>368 それならウィソで動くもの作ってソースアップすれ。
マク用にコンパイルしてあげる(w
371 :
354 :03/06/15 22:38 ID:mdPvlTgK
>>366 > 久しぶりに見てみたら、書き込みがされてて驚いた。
> 途中まで作ったが、なかなか難しいね、ピッチシフタ。
> あんまり期待はしない方が良いけど、
> とりあえずもう少しがんばります。
> ではでは。
もしかまわなければ、どこで引っかかっているか
披露してくれればなんかコメントできますが。
私も作ったことはないのですが、
動作原理はある程度わかります。
チャント分からないのは、無限にピッチアップ/ピッチダウン
しても不連続ノイズが発生しないリングバッファディレイ
の構成方法ですね。
だって、仮に1.0secのリングバッファディレイを作っても
倍のスピードで補間演算して読んだら、0.5secで追い付いてしまうでしょ?
その後どうすんのよ?という話と
例えば1oct down で1/2のスピードで読んでも、環状にバッファを
構成しているんだからいつかは読み出しポイントに書き込みポイントが
ぐるっと回って追い付いてしまう
とここまで脳内でシミュレートして、「どうやって作るの?」
と考えているのですが?
372 :
340 :03/06/17 00:20 ID:/7X58MQ8
>> 354 不連続ノイズをどうやって消すかで引っかかってます。 それから、LPFどうやってつくるか教えてくれませんか? あと、現在作ってる途中のへぼいやつをあげようと思うんだけど アップローダどっかにないですか?
>>372 >不連続ノイズをどうやって消すかで引っかかってます。
凄く早いフェードイン/フェードインアウトとかどう?
フィルタはmusicdsp.orgにいくつか例が載ってるよ。
×凄く早いフェードイン/フェードインアウトとかどう? ○凄く早いフェードイン/フェードアウトとかどう? スマソ。ACIDのピッチシフトとかどうなってんのかのぅ…
375 :
340 :03/06/19 17:58 ID:xLo4GdVe
376 :
名無しサンプリング@48kHz :03/06/20 00:05 ID:fxI+XdDp
>>375 落とせないよ。てか、ウイルス?
悪いけど ほかのところにアップしてくれない?
377 :
340 :03/06/20 00:10 ID:lw0fhZuW
落とせると思うんですが? そこのページを開いたところの真ん中のリンクをクリックして貰えば 落とせると思います。 ウイルスではないですが、落とす価値はあまりないです。 しょぼくてすいません。
378 :
名無しサンプリング@48kHz :03/06/20 00:13 ID:m2asV02G
うごかないパラメーターがあった。 音は意味不明。 ソースでキボンヌ
379 :
376 :03/06/20 00:32 ID:fxI+XdDp
>>377 2台のPCからダウンロードを試してみたけどダメでした。
しかも1台のウイルスチェッカエンジンが落ちたから
そのページで怪しいファイルを食わせてんのかなーと思ったんよ。
疑ってすまんす。
わしも作ってみるかー(w
380 :
340 :03/06/20 00:34 ID:AQ1TiJZM
>>378 すいません。
作りかけなんで、音が変です。
ソースを公開するのは恥ずかしいのでやめときます。
やってることは、バッファが足りなくなったら、波形の傾き
が等しいところまで戻るようにしているんですが、
なかなかうまいこといきません。
sin波などの単純な波形では、うまく行くんですが複雑な波形だと
変なところに戻ってしまうんです。
波形が似た部分に戻る良い方法はありませんか?
toby bearのプラグインで簡単なピッチシフトあったよね? あれのソースも公開してるかもよ。
383 :
名無しサンプリング@48kHz :03/06/23 15:32 ID:IMpFm5aW
384 :
名無しサンプリング@48kHz :03/06/26 22:25 ID:2AfaSXce
お、サンプル増えてるね
今日、SDK 2.3でコンパイルしてみたけど、 2.2Beta3のソースがそのままコンパイル通る。 ところでvstguiのフルソースが付属してるって知ってた? 根性さえあれば、gui拡張し放題じゃん(w
>>385 SDKにそのまま付いてる?libファイルじゃない?
pspみたいなVUメータ作りたいなぁ。
387 :
名無しサンプリング@48kHz :03/07/08 12:10 ID:BsFU6ckq
>>386 コレね。
vstsdk2.3\source\common\vstgui.cpp
Yvanいわく「今回のSDKはソースつきだぜ」だとさ(w
pspみたいなって、針式のアナログメーターってことかな?
それなら作ればいいじゃん。そんなに面倒じゃないよ。
しかしデジタルよりも処理が重くなるのに、なぜアナログ。
アナログメーターのほうがなんとなく凝り倒したようにみえて、アナログっぽい ウォームな音が出そうに感じるからじゃないの? テープシミュ・チューブシミュ 系だとSteinberg magnet, PSP Vintage Warmerその他、あとは物理モデリング のVSTiなら色々。Lounge Lizardもアナログメーターだよな。
金を取るには・フリーでも評判を勝ち取るには・見栄えが大事。音がよけりゃ なお言うことなし(W
390 :
名無しサンプリング@48kHz :03/07/08 12:58 ID:26h+8mWi
お願いです。 sp1200の質感をシミュレートしたものを作ってください。 絶対売れます。sp1200信者って現場には凄く多いし。
391 :
386 :03/07/08 21:03 ID:umq54CLV
>>387 サンクスコ。針式VUは単に見た目が好みだから
CVintageVuMeterってして作ってみるス。
AnimKnobみたくパラパラ漫画にするしか無いかな?重そうだけど…
392 :
387 :03/07/08 21:41 ID:BsFU6ckq
>>388-389 やはり、そういう理由からだろうね。
実際プログラム上もデジタルメーターより手間がかかるし。
>>391 リアルに作るならAnimeKnob方式でしょう。
OSのAPI使って直描きするより手間がかからないし。
いまVintage Warmerを調べたら、あのメーターは
101枚のパラパラ漫画で出来てたよ(w
逆にいえば、それぐらい重い画像使っても
あの程度のレスポンスが得られるってことだね。
>>390 あんたが作ってください。俺が買ってやるから。
394 :
山崎 渉 :03/07/15 10:21 ID:D8qejmS3
__∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
395 :
山崎 渉 :03/07/15 14:30 ID:D8qejmS3
__∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
396 :
名無しサンプリング@48kHz :03/07/16 12:46 ID:eCLe+/Wh
aaagggeee
397 :
名無しサンプリング@48kHz :03/07/22 21:55 ID:iabrtUak
なんかネタ無いかな?age
スレ違いですが... Rewireの資料ってどこにあるんですか? (ってか、どこがライセンス持ってるんですか?)
400 :
398 :03/07/24 02:16 ID:mcRhYRY0
>>399 どうもです。
しかし高専上がりの人間(”一応”データ制作以外の音楽系の仕事してます)にプログラミングできるのだろうか不安...
VBSで簡易スクリプト作るのに苦労してるのに...
401 :
名無しサンプリング@48kHz :03/07/24 03:05 ID:OGCnNUMI
フェアチャイルドとか1176系のビンテージコンプとかビンテージ系のVSTって作れないものでしょうか?
>>400 まぁ楽しんでやりましょー
>>401 T-RackSが一応そのつもりなんだろーけどね>フェアチャイルド
アナログシミュレートってむずいと思うわ
味付け次第な気がして
>>400 まずはサンプルをじっくり眺めてみる所からスタート
フリーのシンセなんて弄れるのはLPFカットオフとレゾナンスだけで十分。
ってのは厨の意見ですか?最初はプリセットだけで十分じゃないかな。
>>401 実機と観測装置がなくとも基盤配線図があれば、一応のエミュは作れると思う。
高いアナログ系VSTは細かな観測データ取ってるんだろうか…?
405 :
名無しサンプリング@48kHz :03/07/27 21:39 ID:71UyoIcO
ensoniqのASR-10みたいな音ってどうやったら出るんだろう?基盤配線図ある?
>>404 回路図をベースにシミュレートしてるのは少ないと思うなあ。実機からインパルス応答
のデータをとって、過渡特性から再現してるのがほとんどじゃないかと思う。
もしくは開発段階で回路図からのシミュレーションを行い、インパルス応答を計算して
利用する、とかではないかな。
あと前半部分。シンセってのはいじってなんぼ、というものではないかのー。せめてエ
ンベロープとLFOもいじれないと。
407 :
山崎 渉 :03/08/02 02:27 ID:LQj389q5
(^^)
最近はすっかりSyntheditに流行りが移った感じだね。 漏れは一人でもPlugin作る(w
409 :
名無しサンプリング@48kHz :03/08/02 03:47 ID:LUi+Wrdv
>>404 君は産婦らーで十分。
マカーはMAXのパッチを変換してプラグインにできるからいいよなー。
やっぱりちょっと重いけどね>>Synthedit製 気軽に色々使えるのはイイ
ホシュアゲ
盆休みに入ったことだしシンセでも作りましょうと 取り組んでみたところ、原因不明のバグでヘキエキ(w 誰かシンセ作ってる人いますか?
413 :
名無しサンプリング@48kHz :03/08/13 01:59 ID:NC3E1Yrb
誰かマカー用マルチバンドコンプ作って。 できればAUにもコンパイルして。
自分で汁
3
>>416 おお、パラメータ多いな
漢字がカコイイぞオイ
418 :
AW ◆fVXYiU55Ps :03/08/14 22:10 ID:iX1AZwzS
>>413 随分時間かかったけど、win用のマルチバンドコンプはできたぃょぅ。
またマク用にビルドして下さる方がいるならソースうpしますが…
win版のアップ希望!
>>418 FL studioで動作確認完了。
かなり遊べて、完成度は意外に高いなーと。
バグっぽいところは、ある音を鳴らしてる最中に別の音を鳴らすと
ADSRが上手く働いてない気がする。 なんかのキーを連打するとわかるけど。
後、要望としてはwavetableのプリセット音を増やしてホスィ。
>>419 うpキンボヌ
waveshapeを気持ち良くなます方法が上手く行かないなぁ
アナログシミュレートむずい
>>419 まじ乙です。
マクのに移植ってresouce部のリンクいじって〜とかかな?
カーボン化とか触ってないからなぁ、俺じゃ役立たずっぽいな
>>421 ありがとうございます。
>バグっぽいところは、ある音を鳴らしてる最中に別の音を鳴らすと
>ADSRが上手く働いてない気がする。 なんかのキーを連打するとわかるけど。
そうなんですよ。とある理由から、そういう仕様(リトリガーとも違う(w)にしてます。
やっぱり通常仕様と切り替えできた方がいいですね。
>後、要望としてはwavetableのプリセット音を増やしてホスィ。
いずれ増やすつもりですが、気長にお待ちください。
>>423 おお懐かしい。私は元186です(w
早速マルチバンドコンプも試させていただきました。
周波数帯の分離はかなりキレがいいですが、
これデジタルフィルタですか?
あとMacへの移植の件ですが、OS9用だったらできるかも。
来週にはOS Xの開発環境も仕事の都合で整えますが。
必要ならメアドさらします。
425 :
山崎 渉 :03/08/15 15:35 ID:c3cZsm7w
(⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
186Comp使わせてもらってます。 軽いし効きもよく、クセも程よくあってギターとかで重宝しています。
あれ、
>>423 さん いなくなっちゃいました?
試作にBLIT方式のオシレータを搭載しました。
アンチエイリアスフリーの波形は高音がきれいだけど、
中低音は意外にスカスカなのねー。
音域で発振方法を切り替えるハイブリッド式にしてみようか(w
>>AW氏 ちょっと忙しかったもので。 >>周波数帯の分離はかなりキレがいいですが、 >>これデジタルフィルタですか? いわゆるIIRです。4poleのフィルターになってます。 >あとMacへの移植の件ですが、OS9用だったらできるかも。 >来週にはOS Xの開発環境も仕事の都合で整えますが。 >必要ならメアドさらします。 じゃあお言葉に甘えてお願いしても宜しいでしょうか? GUIはVSTGUIのライブラリにあったものしか使ってないです。
>>428 >いわゆるIIRです。4poleのフィルターになってます。
やはり。デジタルフィルタの切れ方は耳で聞いても分かりますね。
ただIIRは、Pentiumだとdenormalモードに陥りやすいので要注意です。
>じゃあお言葉に甘えてお願いしても宜しいでしょうか?
>GUIはVSTGUIのライブラリにあったものしか使ってないです。
それでは、サイトへアップロードもしくは
[email protected] までお願いします。ちなみにメアドは今回限りの捨てメアドです(w
そうそう、今日で盆休みが終わってしまうので、Macでのコンパイルには
少々お時間をいただくかもしれません。
>>ただIIRは、Pentiumだとdenormalモードに陥りやすいので要注意です。 そうなんですよね。最初いきなりCPUメータが振り切ったのでびっくりしました。 とりあえず信号レベルがすごく小さいときはバイパスするようにして回避しています。 なんか良い対処法はないんですかね? >>そうそう、今日で盆休みが終わってしまうので、Macでのコンパイルには >>少々お時間をいただくかもしれません。 ソースのアーカイブをメールで送りました。 もう全然、気が向いたときでいいです。
>>185 さん、ソース受け取りました。ありがとうございます。
>なんか良い対処法はないんですかね?
undenormalizeという手法がありますよ。
これから外出しますので、続きはまた夜に書きます。
激しく良スレ 真に勝手ながらmac版期待してます。 マックでフリーのマルチバンドコンプなんて無いもん。多分。
続きです。たとえば、こんな関数でdenormalモードに入ることは防げます。 (inlineにする必要ないかも知れないけど、スピードを追求してみました(w) inline void undenormalize(float &value) { const int x = *reinterpret_cast<const int *>(&value); // 32bit intのみ使用可能 const int abs_mantissa = x & 0x007FFFFF;// 仮数部 const int biased_exponent = x & 0x7F800000;// 指数部 if ((biased_exponent == 0) && (abs_mantissa != 0)) { value = 0; } }
あ、タブは飛んじゃうのか(w
改行が多すぎると怒られたので、分割しました。
多少誤差はでるけど、こんな高速版もあります。
inline void undenormalize(float &value)
{
static const float anti_denormal = 1e-18;
value += anti_denormal;
value -= anti_denormal;
}
ほかにもホワイトノイズを乗せたりとか、いろいろな解決方法があるようです。
で、
>>185 さんのソースを見せてもらったのですが、
is_sample()内で対策するよりも、各フィルタのsubProcess()で
*in, *outを処理した方が確実かと思います。
IIRやリバーブのように、値が0に収束する可能性がある再起呼び出しでは
denormal対策をしておかないと、えらいことになっちゃいますね(w
435 :
名無しサンプリング@48kHz :03/08/18 00:47 ID:SyAvvo01
邪魔しないようにコソーリAGE
スゲェ!スゲェよー、みんな! やぱこういうの出来る人達は電子音楽的なものをやってるのかなぁ・・
>>437 これはすげえ!
各バンドにkneeついてるのが便利です。
俺もがんばってC++勉強しなきゃ…。
439 :
名無しサンプリング@48kHz :03/08/21 01:19 ID:jgpysH++
マカーの神降臨あげ
ソースがあればマク用移植コンパイルは多分できるけど。 AW ◆fVXYiU55Ps さんがやってくださるようなので、待ちましょうか。
ワクワク(・∀・)ワクワク
一応denormalize修正済みのソースを送りました>>AWさん 433の関数を使わせて頂きました。 でもmacのCPUにデノーマルモードは無いのかも…
Mac用はもう少し待ってくださいね。
昨晩ちょっと時間が取れたので、移植作業に取り掛かってみました。
ただGUIまわりにバグがありましたので、現在そのFix中です。
(なお、このバグはVC++6では発生しません。コンパイラの仕様です)
バグの詳細は
>>185 さんに直接メールしますね。
わたしの手に余るようだったら、
>>440 さんにお願いするかもです。
>>442 ソース受け取りました。ありがとうございます。
お返しとして、高速化したり低速化したりした(w
ソースを送っときます。
このコンプはとても出来がいいですし、プリセットがあると
さらに便利ですね。
バグの原因が分かりました。
VUMeterのコントロールが初期化されるときにアニメーションするのですが、
これの負荷が高くて重いホストアプリが落ちているようです。
(道理でいくらソース見ても理由がわからないはずだ(w)
これは
>>185 さん側の問題じゃなくてVSTGUI側の問題ですから、
GUIのソースを改造して負荷の軽いVUMeterクラスを作るか
画面を閉じたときにVUMeterを開放しないような工夫が必要です。
ただ
>>185 さんのソースでは、エディタのコンストラクタで
LimitSwitchBmp= 0; を忘れてます。
これがないとMacでは確実にOSごとフリーズします。
1日かけて、これが結論じゃ空しいやね。ちと寝ます(w
おやすみAWタン。ガンガってね。
ワショーイ(・∀・)ワショーイ
やっと解決方法が見つかりました。
やはり予想通り、リソースの初期化で不安定になるようですね。
これを解決するには、
VUメーターのコントロールを、エディタのコンストラクタで作成
openでframe->addView(foo);
closeでframe->removeView(foo);
デストラクタでリソースをforget()
以上で、落ちることのない堅牢な(wプラグインになります。
デバッグの過程で、
>>185 さんのソースはコア部分をのぞいて
ほとんど原型を留めないほど書き換えてしまったので、明日、
オリジナルに近いソースを送りますね > .
>>185 さん
あとはMacで動くことを祈るのみ。
450 :
AW ◆fVXYiU55Ps :03/08/23 13:36 ID:dnV/7Dmd
おっと書き忘れ。
ソース送っておきました
>>185 さん
キタ━━━━(゚∀゚)━━━━!!!! 早速試しますです。はい。
453 :
452 :03/08/23 16:50 ID:omN9fJR8
(゚∀゚)イイ! 動作もそんなに重くないし、かかり具合もナチュラルでいい感じです。 185コンプに続いてこれもご愛用リストに仲間入りです。 もうね。あんたらスゴ過ぎよ。マジで。 確かにプリセットがあればもっと凄く使いやすいかも。 とにかく185とAWに感謝です。
FLStudioで185さんのコンプ使ってますが、 ちょっと設定してからプラグインの窓閉じると エフェクトの効果が切れて、また開いてもレベル あがらなくなるのはガイシュツでしょうか? なにかバイパスされてるような感じの動作です。
>>AWさん
ソース受け取りました。ホントに乙です。ありがとうございました。
はやいところ修正済みwin版をupしときます。
>>プリセット
そうですね。ちょっとパラメータが膨大で躊躇してたんですが、マターリと作ってみます。
お勧めプリセットを教えてくれたら実装してしまうかも…
>>454 FLStudioを持ってないのでちょっと再現できないのですが、
もしかしたらAWさんの指摘してくれたGUIリソース周りの不具合かもしれません。
ちょっといじってみますのでもう少々お待ちください。
このスレに感化されて、いじくり始めの者です。 CVuMeterあたりがよくわからないっす。 186さん(AWさんですよね) kitaVuのソースを再びアップしてもらえたりしませんでしょうか? もし良ければ、お願いします。
458 :
AW :03/08/24 09:49 ID:svImaIfb
>> 455
>そうですね。ちょっとパラメータが膨大で躊躇してたんですが、マターリと作ってみます。
パラメータが多くなりそうなときは、最初から変数を
配列にしておくと楽です。たとえば
float param[kNumOfParam]; と宣言し、
従来のfloat foo_1, foo_2;のような変数を
param[kfoo_1]やparam[kfoo_2]として使用します。
(kfoo_1 etc.は事前にenumしておきます)
こうしておけばソースが非常に簡略化できますし、
初期化もfor文で一発。最大のメリットとしてバグが
入り込む余地が激減します。
>お勧めプリセットを教えてくれたら実装してしまうかも…
じゃあ、いくつかプリセットを作ってみます(w
>>457 前にあげたヤツは、こんな感じです。ソースってほどのものでも
ありませんが、SDKのドキュメントとあわせて読めば実装できると思います。
http://www.geocities.co.jp/SiliconValley-Bay/8284/plugin/vuprcplc.txt ちなみにmin_()は最小値を返す関数ですが、ここは1.0fでクリップしてもいいですね。
>>458 AWさん、ありがとうございます。
がんばれそうな気がしてきました。
まだまだサンプルのAGainにノブつけたりして勉強してる程度すけど。
AWさんの開発されておりますShisaku使わせていただきました。 FL StudioでFST形式で音色を保存すると、ロードしたときに波形が間違ってロードされるような気がします。 あと、VCA/VCF/VCPのツマミの右上についてるLとSが良くわからなかったりします(汗 これはエンベローブのレンジということでOKでしょうか?
461 :
454 :03/08/25 02:21 ID:eyWPG22w
>>456 ちゃんと動くようになったみたいです!
ありがとうございました、ガンガン使ってみます
462 :
AW :03/08/25 21:34 ID:WJ/+6t27
>>459 わたしもDSPを勉強中の身です。一緒にがんがりましょう。
平日は2chを見る暇がないので、お返事が遅れることも
多々ありますが、私でわかる範囲ならお手伝いしますよ。
というか私以外の誰か親切な人が教えてくれるでしょう。
>>460 試用ありがとうございます。
>FL StudioでFST形式で音色を保存すると、ロードしたときに波形が間違ってロードされるような気がします。
あー、それはもう心当たりがあります。有体に言ってバグです(w
時間がとれたら、週末にでも修正しときます。
LとSはご推察の通り、LongとShortの略でレンジの切り替えを表し、
Sレンジの100%=Lレンジの0% です。
なぜこうなっているかといいますと、単に直線的に数値が変わる
ノブが好きだから、それだけの理由です(w
463 :
788 ◆wRS8KONdBw :03/08/26 22:36 ID:iMoxn19C
転載ですが、こんなんで十分かと。 #define undenormalise(sample) if(((*(unsigned int*)&sample)&0x7f800000)==0) sample=0.0f VSTプラグインスレから移ってまいりました。 それで、今 EQをつもうとガシガシやってるんですが、 やっぱりFFT等のフーリエ変換で周波数をきっちり求めないとだめですかね。 どうもうまく行かんのです。どなたかEQのサンプルソースのありか知りませんか? 歪系とうでもEQを多用しているのでこれをおさえておきたいんです、はい。 それと、 どなたかいろんなエフェクトの原理が詳しめにのっているページしりませんか、 波形の画像等があるとかなり良いです。
>>463 デジタルフィルタなら皆さんAudio-EQ-cookbookを基本にしてるのではないっすかね。
先日拝見したソースから、VUメーター実装できました。
ゲインノブに、インプットとアウトプットのメーター2つになりましたw
しかし、エフェクトのONOFFではきちっとメーターが0になるんですが、
再生→停止とした時、戻らない時が、、、
どこらへんが怪しいですかね?
GUIは予想以上にたいへんす
ぜ、ぜひFFTでフリーのリニアフェイズEQを…
466 :
788 ◆wRS8KONdBw :03/08/27 20:04 ID:gBoAF7Qh
>>464 情報ありがとうございます。
さっと目を通したところ、結構むづかしそうです
(やはり三角関数を多用しなくては・・・・)
>>464 >しかし、エフェクトのONOFFではきちっとメーターが0になるんですが、
>再生→停止とした時、戻らない時が、、、
それ俺もやりました。
一番良い方法かどうかはわかりませんが、
AEffGUIEditor::idle()をオーバーライドして
void MyEditor::idle (){
AEffGUIEditor::idle ();
setParameter( kVu, 0.f);
}
みたいに0に戻してやるとうまくいくと思います。
468 :
AW :03/08/29 22:27 ID:5fazQF+a
469 :
名無しサンプリング@48kHz :03/08/30 01:02 ID:sPYuyrnA
>>468 process() なんかで描いちゃ駄目よ。process() は貴重な信号処理のための時間
なんだから。process() では最低限描画に必要な情報だけを集めておいて、idle()
で描くのが正しいと思うナリ。
process() 内での setParameter() 呼び出しも、setParameter() 内で editor の描画に
関わる部分を呼んでいるようなら避けた方がいいと思います。
確かにホストによって idle() が呼ばれるタイミングはまちまちだし、同じホストでも負荷が
高くなれば idle() はかなりいい加減に呼ばれますが、それが idle() なので、、、。
ちなみに、Dual Processors や HyperThreading 環境では片方の CPU で process() 実行中
にもう片方の CPU が idle() を呼びに来たり、恐ろしいことが起きてるので気をつけて。
ホストによってこのへんの動作も違うみたいですけどね。
>>463 フィルタとか EQ 作りたいなら、これ読むと良いんじゃない?日本語だし。
あ、しかもちょうどいいタイミングで IIR のイコライザ載ってるし。
http://www.digitalfilter.com/jpindex.html
>>467 >>468 ありがとうございます。
一応その形でidle()の処理もしてはいるんですけどね〜。うーん。
再生停止を繰り返してると描画の挙動が怪しんですよ。
メーターが下がってる途中で止まる感じです。
値の数値表示は0.0dBまで下がっているので、、、
描画のタイミングすかね?
新たに、単純に
void MtEditor::idle()
{
float meter;
AEffGUIEditor::idle();
if(inputMeter)
{
meter = (float)((MyEffect *)(effect))->getVu();
inputMeter->setValue (meter);
}
postUpdate ();
}
あたりから試行錯誤してみます。
週末になると盛り上がりますな。 みんなガンがれ。
473 :
AW :03/08/30 11:22 ID:jRHNTf+M
>>469 そうなんですよ。本来ならidle()で処理すべき案件ですが、ホストによってはprocess〜()で
処理した方がCPUの負荷が下がります。まー、ホストのバグでしょうな(w
(たとえばCubase SX 1.05は、えらい勢いでidle()をコールしてたけど、1.06になって直ってます)
描画に関してはホスト側が請け負ってくれていることなので(元々マルチスレッド)、
プラグイン側からはメッセージをポストした後は野となれ山となれ、どのタイミングで描画されているかは
知る由もないわけです(プラグインを組んで実行するなり、デバッグコードをはさめば、
ある程度は観察できるけど)。
ともあれ基本はidle()で処理。あとは挙動を見ながらCPU負荷を減らすよう微調整がよさそうですね。
>ちなみに、Dual Processors や HyperThreading 環境では片方の CPU で process() 実行中
>にもう片方の CPU が idle() を呼びに来たり、恐ろしいことが起きてるので気をつけて。
それはー、あたりまえですよ。もしそれが問題になるようなら、そもそもプラグインの設計が
悪いでしょ。私の想像を超えたケースがあるかもですが……。
>
http://www.digitalfilter.com/jpindex.html おー、知りたかったことが書いてある(w サンクスです。
>>470 もし、process〜()で、setValue()しているならidle()の中は、
inputMeter->setValue (0.0f);
と、メーターを0にする処理だけでOKでは?
>>473 呼び出し方を変えたりなんだりと、一通りやってみました。
やはり、0にするだけだと不十分のようでした。
(俺のやり方がおかしかったのかもしれんすけど、、)
>>469 >process() 内での setParameter() 呼び出しも、setParameter() 内で editor の描画に
>関わる部分を呼んでいるようなら避けた方がいいと思います。
でビンゴかなと思ってます。
結局、
processでsetParameter〜とするのを避けて
idle()で
inmeter = (float)((MyEffect *)(effect))->getVu();
inlevelMeter->setValue(inmeter);
の形でおさまりました。
>基本はidle()処理
outlevelmeterの計算処理もココでやってしまっているんですけど
良く無い気がしてきた、、
手持ちのホストが二種類しかないので
知り合いに人柱してもらってみますw
475 :
名無しサンプリング@48kHz :03/08/30 15:22 ID:sPYuyrnA
>>473 >そうなんですよ。本来ならidle()で処理すべき案件ですが、ホストによってはprocess〜()で
>処理した方がCPUの負荷が下がります。まー、ホストのバグでしょうな(w
ここで言ってる「CPU負荷」はVSTホストアプリケーションのCPU負荷表示?それと
もOSのCPU負荷表示ですか?
僕が書いてるプラグインでは、CubaseSX(1.05)上のメーターは常に数%ですが、グラ
フィックを頻繁に書き換えているときはOSのCPU負荷表示が100%なんてのはザラです(w
476 :
AW :03/08/31 10:47 ID:y2s811IL
477 :
名無しサンプリング@48kHz :03/08/31 23:54 ID:/zTF6pg5
>>476 >VSTホストの表示です。とりあえずホストのCPUメーターが振り切らなければ、
そうですか・・・それはイヤな感じですね・・・。
こちらでは Cubase 1.0.5/1.0.6 共に、エディタを開いている状態とエディタと閉じている
状態で全くCPU負荷が同じ状態です。
描画しているものは、レベルメータ、ノブ、自機、敵機、ミサイル、ホーミング弾、煙・・・等です。
(我ながらいったい何作ってるんだか(w )
Windows、Mac OS X共に同じものを動かしていますが、状態はほとんど同じです。
あ、ちなみに、VSTGUIは一切使っていません(爆
(あのライブラリ、遅くて上記のような用途には使えないので・・・)
>>自機、敵機、ミサイル、ホーミング弾、煙・・・等です。 VSTシューティングゲームか(w あんた漢だよ。そういうの好き。
479 :
AW :03/09/02 00:04 ID:E0zs+w81
>>477 >描画しているものは、レベルメータ、ノブ、自機、敵機、ミサイル、ホーミング弾、煙・・・等です。
わはは、いったい何を作ってるんですか! 完成が楽しみですねー。
WinとMacで同じものとなると、OpenGLあたりを使っているんでしょうか。
>あ、ちなみに、VSTGUIは一切使っていません(爆
>(あのライブラリ、遅くて上記のような用途には使えないので・・・)
確かに(w
480 :
名無しサンプリング@48kHz :03/09/03 00:43 ID:e+/eOr8i
VSTシューはもう2番3番煎じなんだけど、Rezみたいにちゃんと音楽的に 意味を持たせるのが難しいんだよねえ。気長にガンがりまつ。 描画はOpenGLとかはまだ使ってません。いつかは手を出したいですけどね。難しそう。
いやマジで使えるマルチバンドコンプです。 mdaのヤツより遙かに使える。 ところでマク用のプリセットありの予定はなしですか。そうですか。 いや、いいんですけどね。 そこまでは贅沢というもんですね。 と言いつつ密かにAUに移植してくれる神の出現を待つ(;´Д`)
483 :
788 ◆wRS8KONdBw :03/09/03 19:51 ID:Xzg5lq4F
484 :
名無しサンプリング@48kHz :03/09/03 21:14 ID:VwrHHJpz
スゲー!!!!なんでみんな、そんな簡単に作れるんだよ!! 自分はvisual studio .net を最近買って、 やっとhello world をwin32api使って 表示することが出来たけど、VST製作なんて夢のまた夢…!?
>>484 そんなに思ってるよりは大変じゃないと思うよ。
開発環境はそろったんだしあとはやる気と時間があれば大丈夫。
C++の基本的なコトを覚えたらSDKのサンプルを眺めて改造してみたりするのがイイと思うYO。
486 :
名無しサンプリング@48kHz :03/09/05 00:36 ID:2dlGZHkD
>>484 始めたばっかの頃は大変だったよマジで。
日本語資料なんてもちろん無いし(今でも無いけど)、サンプルソースなんて
SDKについてくるやつだけだったしさ。
目的がVSTだったらWIN32 APIはすっ飛ばしてVSTGUIを攻めるのがいいかもね。
今はこんな良いスレもあることだし、ガンガレ!
487 :
名無しサンプリング@48kHz :03/09/06 13:29 ID:kcosWqd6
488 :
788 ◆wRS8KONdBw :03/09/06 20:44 ID:fzwbE0NH
>>484 思っているより簡単だと思いますよ。
Cを一週間程度C++を数時間程度書いたことがあれば、
付属のサンプルソースだけでいけるとおもいます。
489 :
AW :03/09/07 13:04 ID:KvN/aE3P
>>480 OpenGLは使うだけなら、VSTGUIより簡単かもしれないです。
クロスプラットフォームで開発するなら、OpenGLは便利ですよ。
凝ったことをやるとグラフィックカードとの相性がでてきますが(w
>>481 185さん、お疲れ様です。私のプリセットはガンガン削って下さってよかったのに。
サイトを作られたのなら、Mac版も185さんの方で配布したほうがいいですよね?
プリセット付きのMac版は……いずれそのうち。
>>483 788さん、どもです。みんな作るの早いなぁ(w
FFTの逆変換は音質劣化しませんか? 少なくとも昔作ったときは
使いものになりませんでした。まー、486時代の話ですが(苦
そうそう、788さんのDLL圧縮は自前ツールですか? それとも出来合いのツール?
やはり圧縮した方がいいかな、と思い始めてます。
GUIに凝るとファイルサイズばかりがでかくなってイカン(w
>>484 Plugin作りは難しいというより、面倒くさい作業が多いです。
気長にがんがりましょー。
んで今週の成果。画像のみでスマンす。3VCOにしてみた(w
http://www.geocities.co.jp/SiliconValley-Bay/8284/image/shisaku012.jpg
3vcoイイ!! やっぱしOSCは3以上保水。
491 :
788 ◆wRS8KONdBw :03/09/08 18:55 ID:g6MZbeBS
>>489 FFT逆変換は音質チェックを細かくしたわけではないので
正確ではないですが、劣化してそでしてないです(謎
DLLに積み込んだりクラス構築したりで時間がかかりますが、
そのうちFFTイコライザとか積みますんでそのとき試してみてください。
それとDLL圧縮は出来合いのツールを改悪wしてつかっています。
>>487 「VSTGUIのライブラリなんでオープンソースにしないのかわかりませんね」
と書き込もうとした矢先、オープンソース化されていることを知りましたw
492 :
AW :03/09/09 02:13 ID:hccPe98O
>>490 どーもです。やはり複数VCOがいいですよね。
現状ではすべてのVCOの定位・各パラメータの時間変化が同じなので
SimSynth Liveみたいな音しかでません(w
ただしVCOごとにフィルタやエンベロープジェネレータを持たせないと
複数VCOが活かせないようです。エディットが面倒だけど。
>>491 >正確ではないですが、劣化してそでしてないです(謎
おー、それは期待できそう。ぜひ試させてください。
>それとDLL圧縮は出来合いのツールを改悪wしてつかっています。
なるほど分かりました(爆
私も圧縮する方向で考えてます。ファイルサイズを気にして
GUIをケチる必要がなくなるし。
>オープンソース
Plugin SDK ver.2.3がリリースされたとき(5月)から、オープンソースに
なってますよ。SourceForgeのアレは全然動いてないけど(w
>リミッタの詳しい原理くだされぃ
Pd用だけど、このページのlimiter~.zipが参考になるかも。
ttp://www.akustische-kunst.org/puredata/freeverb/freeverb.html
みなさん、GUIのグラフィックは自分で描いてるんですか? PhotoShopとかで? よくきれいに作れるもんですね。
>>493 描いてますよ。
少なくとも自分には一番時間掛かる作業です。
ノブ表面に凹凸陰影つけたりすると手におえないすね
ムダに凝るのやめようかと悩んでたりしますw
でもね、GUIは大事だよ。正直。 味気ないGUIのプラグイングリグリするよりは カッケーGUIのプラグイングリグリしてる方が気持ちいいもんね。 あ、ただし操作性の悪いのは問題外ね。
>>AW@489
迷惑でなければMac版の配布はAWさんの所でやって頂いて構いませんです。
なにせmacのことは全然わかりませんもので…
>>Pd用だけど、このページのlimiter~.zipが参考になるかも。
実は先読み式のlimiterを考えてるところでした。参考になりそう…
ところでdll圧縮って配布ファイルの圧縮のことではないんですよね?
*.dllファイルのサイズを小さくできるのかしらん?
>>494 GUIの部品ライブラリとかあると便利かもしれないすね。
ノブとかメータとかスイッチとか…
配色も変えられるようにGIMPで編集可能なPNG形式とかなら誰でも使えそうだし。
498 :
AW :03/09/11 02:14 ID:rRHDZwJ/
>>493 私は3DCGソフトのShadeとPhotoShopで作ってます。
GUI作りだけで一日つぶれることもありますが、ホンモノの
アルミシャーシをゴリゴリ加工するのに比べれば、CGの方がナンボ楽か(w
>>495 操作性のいいGUIって、どんなのでしょうね。
ユーザーがカスタマイズできた方がいいですかねー。ちと悩み中(w
>>496 >迷惑でなければMac版の配布はAWさんの所でやって頂いて構いませんです。
了解です。
>先読み式のlimiterを考えてるところでした
お、期待してます。あのソースは参考になると思いますよ。
GUIの部品ライブラリって、ないですよね?
あると便利だな〜 つーか、これまで自作したガラクタを
放出してもいいかも(w
>>496-497 実行形式ファイルを圧縮するツールがあるんですよ。
以前はノートPCユーザー必携のツールだったんですが、
最近のHDDは容量が大きいから、あまり必要でなくなりましたね(w
ツールの有名どころではUPXとか。ググルとたくさん解説サイトがヒットします。
このテのツールはPluginの圧縮にもたいへん有効ですよん。
> 実行形式ファイルを圧縮するツールがあるんですよ。 > 以前はノートPCユーザー必携のツールだったんですが、 > 最近のHDDは容量が大きいから、あまり必要でなくなりましたね(w 実行時にロードされるサイズが小さくなるわけではないんですよね? どうやって展開するんだろう…不思議だ。
500 :
788 ◆wRS8KONdBw :03/09/11 22:45 ID:jUUldBmo
501 :
788 ◆wRS8KONdBw :03/09/11 22:46 ID:jUUldBmo
あ、GPLとか言わないので組み込みたい方どんどん使ってもらって良いです。 (てか誰でもかけるようなコードなうけコーディング汚くてすみません)
突然の質問失礼します。 外部音源をソフトでコントロールする音源エディター的な物を作りたいと考えているのですが 一体何を勉強すれば良いのでしょうか。 自分はほとんどプログラミングをしたこと無いので何をすれば良いかわかりません。 どちら様かアドバイス頂けますでしょうか。
503 :
AW :03/09/12 09:34 ID:01m5nCxy
>>499 >実行時にロードされるサイズが小さくなるわけではないんですよね?
メモリ上で占めるサイズは、ツールを使わないDLLのサイズと同等以上に大きくなっちゃいますね。
ユーザー側のメリットはHDD上でのファイルサイズ縮小、プログラマ側のメリットとしては
プログラムの中身が外から見えにくくなるということにあります。
>>500 ほかに移植してくれる人がいなかったら、わしがやりましょうか。ただ今月中はムリっぽいです。
んで、ソース拝見しました。mixはfloat型だからif (mix)なんてやっちゃダメですよ(w VC++はこれでも動くけどね。
if ((mix <= 0.0f) && (mix >= 0.0f)) としておくと、処理系やコンパイラのバージョンが
違っても安全確実でしょう。
つーか、私ならif((mix < DELTA) && (mix > -DELTA)) (DELTAは0とみなせる微小値)とします。
504 :
AW :03/09/12 09:34 ID:01m5nCxy
>>502 マジレスしますと、そういう場合はメーカーにエディタを作ってもらうのが一番です。
というのも音源エディタを作るには、音源をコントロールするためのプロトコルの資料が
必要になります。まず、その資料が公開されているかどうかがひとつの関門。
(その手の資料が公開されているのかどうか、私は知りません)
資料があれば、あとはそれを元にエディタを作ります。
んで、完成したらメーカーに公開していいかどうかのお伺いを立てます。
メーカーに無断で公開すると、常に訴訟問題となる可能性がつきまとうからです。
(実際にメーカー訴えるかどうかは未知数) これが第二の関門。
OKなら公開、NGなら自分専用のエディタとして使用します。
ねっ、という具合に労多くしてなんとやらなんですよ。
逆に、あなたがバリバリの有能なプログラマなら、メーカーに企画を売り込み→
条件が折り合えば開発受託→エディタもお金も手に入って一石二鳥。
なんてケースもありえますが、これはレアでしょうねぇ。
505 :
788 ◆wRS8KONdBw :03/09/12 12:44 ID:klEw/bOU
おやすみなのでお昼からこんにわぁ。
>>503 時間かかっても良いのでお願いします。
あとif(mix)とやるより条件を逆にしてif(mix==0.f)としるべきでした。
まことに、しんません。
あと、
作り方によってですが、
多分メーカに無断公開してもシーケンサの一部とみなされて問題は無いと思います。
>>502 外部機器との通信系統と音源ということでたぶんMIDIメッセージなので
MIDIの通信系統(ドライバの接続ができればあとは簡単)を学べば即実現可能だと思います。
会社によって規格がかなり違いますが、最低限同じなので
まずは同じところをおさえてから、資料をしらべにかかってください。
(音源購入すれば当然のごとくメッセージ一覧等ついてきますが、これを勝手に公開して良いとは思えないので
そこらへんはメーカに直接問い合わせてください。)
メーカーに売り込んで成功した実例もあるよね。
プロトコルにワラタ 現行の音源のプロトコルなんて、ふつうMIDIメッセージだよねえ
508 :
AW :03/09/12 23:40 ID:01m5nCxy
>>505 >時間かかっても良いのでお願いします。
あい了解です。ただし、他のヒトがやってくれるようでしたら、その方が早いと思いますので
いつなんどきでも指名解除可能です。
>あとif(mix)とやるより条件を逆にしてif(mix==0.f)としるべきでした。
いや、それがアカンのですよ。floatやdouble型の比較は誤差の存在を念頭においた方が安全です。
即値が代入されていることが明白な場合をのぞいて、
if((mix < DELTA) && (mix > -DELTA))とすることをおすすめします。でないと、やっかなバグを生みます(w
>多分メーカに無断公開してもシーケンサの一部とみなされて問題は無いと思います。
そうなんですか、知りませんでした。
>>506 >メーカーに売り込んで成功した実例もあるよね。
なるほど。そういう例が増えればサードパーティも活気づくのに……。
>>507 んー、どのへんが面白かったですか?
面白いところが分からないので、ちと考えてみました。
>>507 さんは、
1)MIDIとはMIDI機器間のプロトコルそのものであることを知らなかった。
2)メーカーが勝手に拡張しまくったLongメッセージの存在を知らなかった。
3)プロコトルと呼ぶのが正しいと思っていた。
わしも腹を抱えて笑ってみたいので、ひとつ解説をお願いします(w
コントロールしたい音源の説明書のケツにたいがい載ってるよ 16進数でいっぱいのエクスクルーシブメッセージってのが ただ「ライブラリアン」でググればそういうのいっぱいあるよ
それと喧嘩は(・A・)イクナイ
ちょと株が下がった。
512 :
502 :03/09/13 01:28 ID:p0xbIORq
>>504 >>505 なるほど、自分としては良い音源作るのよりは簡単そうだし
midiについてわかればいろんな音源に使いまわし出来て良さそうだなぁとか思ってたんで色々と参考になりました。
それと、VBとかで作れるんでしょうか。
それともSyntheditとかを利用したほうがいいのでしょうか。
vstにするとC++を利用するのでしょうか。
質問だらけですみません。どちら様か教えていただければと思います。
513 :
AW :03/09/13 09:27 ID:w+QDJgYk
>>508 4)偉そうなわりにプロトコルとメッセージを混同しているのが滑稽だった
515 :
788 ◆wRS8KONdBw :03/09/13 18:43 ID:O9VPVdO1
516 :
788 ◆wRS8KONdBw :03/09/13 18:59 ID:O9VPVdO1
>>AWサソ
FFTイコライザ作ってはみたものの非常に重いです。
Athlon1.33GHzで14%程度CPUを占拠してます。どうがんばっても
数日内では7%強が限界かと・・・・
>>>>あとif(mix)とやるより条件を逆にしてif(mix==0.f)
初期値の0.fに対してだけの処理を行わせたかったので上記のように描いたのですが
floatといえど0(全てのビットが0)ならば上記表現が通用するのではと思い
書いたわけです。
ですが、floatとdoubleの比較等では上記は通用しないので
おっしゃる通り修正しるべきなんですがねw
>>502 VBでもできますが、断然CかC++をおすすめします。
MIDIデバイスドライバの取得等VBでやるとえらいことになりますw
VSTは基本クラスに従うならばC++以外ないですね。
(現在C++以外のSDKが公開されていないのがその一因となっています)
それと、MIDIデバイスドライバの選択を意識しない場合
WINDOWSのMIDIマッパーにメッセージを送る程度なら
ほとんど経験が無い状態のVBでも簡単にできます。
517 :
AW :03/09/14 01:01 ID:5ji0IkkQ
519 :
AW :03/09/14 01:18 ID:5ji0IkkQ
>>516 なるほど、これは予想以上に重いですね。
もっと軽いFFTがあると思うんですが…… 窓関数は何使ってるんだろ。
ところで、このプラグインは逆変換の前まで実行しているんですか?
それとも逆変換込みで結果を反映させてないだけなんでしょうか?
そうそう、process〜()のアタマで、無音(or 十分に小さい音)が入力されているときは
FFTをスキップしてみたらどうでしょう。
これだけ負荷が高いのなら、おそらく効果があるはず。
>初期値の0.fに対してだけの処理を行わせたかったので上記のように描いたのですが
おー、そうなんですか。mixって変数は、エディタのパラメータを反映したものだと思ってました。
520 :
788 ◆wRS8KONdBw :03/09/14 19:19 ID:t6LYkbRN
>>519 がんばってみたところCPU使用率は半分程度まで抑えられました。
(バッファリングの不備がループのおおいFFTで相当きいていたようです
さらに某所でSSEに対応したFFTのソースを公開していたので
そちらを流用させてもらうカタチで相当CPU使用率が抑えられたとおもいます)
上記プラグインはFFT逆変換まで実行しています。
まだベータ版以下なので、あえて窓関数はかけていませんが、
その影響で低音(波長が長いのが原因)にFFTのずれが生じてプチノイズが多く
出てしまっています。
波によって効果がまちまちなので、
窓関数が選べるようにしようかとおもってます。
521 :
AW :03/09/15 21:14 ID:Qx1gVjLy
>>520 なーんと約半分ですか! やはり効果あるんですね、SSE。
>その影響で低音(波長が長いのが原因)にFFTのずれが生じてプチノイズが多く
そうですね窓関数を使うとか、バッファのオーバーラップで改善できそうな予感。
>波によって効果がまちまちなので、
>窓関数が選べるようにしようかとおもってます。
かなりの本格派になりそうですね。期待してます。
524 :
AW :03/09/16 00:32 ID:l2pZ0Umt
>>523 げ。失礼しました、今はダウンロード可能です。
525 :
名無しサンプリング@48kHz :03/09/16 20:46 ID:NPZO4WPm
SSE2だったら初期のウィラメットじゃなければDAZフラグ立てられるから結構差が出るかもよ。 あと、並列の整数演算命令とかシャッフル命令が結構いいところで使えたり。 明日論六十四とか御負手論がSSE2対応したしさ。しかもあいつらレジスタ二倍持って んだよな。いいよな。
>>525 それでもAMDCPUのSSE2実行能力は、Intel産と比較にならない位酷い罠。
でもあいつらレジスタ二倍持ってんだよな。いいよな。
527 :
Dr.Kurt :03/09/18 16:52 ID:gvaoZkXN
遅スレで恐縮ですが、WAVE解析プラグインって出来ないでしょうか? つまり、リアルタイムで割りと解像度良くフーリエ変換して3次元で 表示したり、別の波形と比較したりするプラグインです。 用途としては、生楽器などの音質評価です。シンセ等にも有効だと思います。 僕はギタリストなんですが、こういうツールがあればギターの音質評価を 理論的に行えるのですが。。。(ギターに限らずね!)
(ギターに限らずね!)
>>527 WAVESのPAZみたいなのですか?
フーリエよりは離散コサイン、ウォルシュとかでもいいかも。
>>530 >>527 とは全然関係ないのですが、それいいですね。
さっそく導入してみました。ありがとん。
532 :
457す :03/09/21 19:11 ID:bqyiY0sW
忙しくて、なんも出来んかったのですが久しぶりに再開す。
>>500 あたりでリバースディレイの話題が挙がってたんで、
ちょろっと作ってみたんですが、、、
788 ◆wRS8KONdBwさんのソースも拝見しましたが、、おれのは阿呆なくらい単純です
ADelayにbufferをもう1つ用意して
プロセスで
buffer1を順にうめる。buffer2を逆順に出す。
buffer2を順にうめる。buffer1を逆順に出す。てのがスイッチされるてだけです。
ただこの方法だと、ひょんな所からスタートすると当然outが気持ち悪い事に。
音の入りを検出できるとイイんでしょうかね?
>>525 すでにdenormal対策してあるし、そのコードの負荷は微々たるものなので、
DAZに関してはそれほど効果は期待できないと思います。
本格的に高速化するなら、人力でSSE/SSE2の部分を最適化するしかないでしょうねー。
というかprocess〜()内のフローを変えるだけで、最大数10%の高速化が見込めるでしょう。
なにしろ、試作シンセは1サンプル単位で処理してるから重くてあたりまえ(w
>>532 無音をカウントして、適当なところでバッファをクリアしてみるとかはどうでしょ?
534 :
185@nekotabinidel :03/09/22 18:04 ID:gxwtujh7
SSE最適化のtipsが出てますが実際にはどういう手法を用いていますか? intelコンパイラを使うだけでも速くできるんでしょうか。 もしくはintelのドキュメントとにらめっこ?(((( ;゚Д゚))) 参考になりそうなサイトを探してるんですが…勉強不足ですいません。
535 :
788@いっぱいいっぱい :03/09/22 23:09 ID:uJtgcxqM
>>533 Synth1のような高速化がしたい場合は8〜16ビットのバッファを事前(起動時)に用意して
それを使い分けすることで場合によっては数十分の1の処理でよくなります。
(精度的な事を言うともう少しバッファがほしいですけどね。)
わたしもSSE体感したいですね。インラインアセンブラで
コードに起こすことはあっても、CPUが初期Athlonなので
効果はまったく無いです。SSEより3DNOWのほうがコーディングが面倒なのも・・・
そのうち対応させておきます。
それと、最適化の前にはせっかくですからアナライザーを使ったほうがいいと思います。
(そんなこと、いわれんでも使っとるわ!といわれそうですがw)
>>534 インラインアセンブラが問題なくかければそれほど難解ではないので
ドキュメントを読むだけで十分だとおもいます。
がんばってください。
前からの夢だったアフォシンセを・・・・ とてつもなく阿呆なシンセを・・・・ プログラムなんてNeXTでObjective-C使って声紋解析ツール作って以来だ。 明日VisualC++を買ってこよう。
>>533 自己レスっすー。無音カウントしてどうするよ俺(w
gettick()するかなんかして、適当な時間経過後も
プラグインが呼ばれなかったらバッファクリアということでヒトツ。
>>534 チマタのウワサでは、SSEのオプティマイズはIntel C++が最強だそうです。
参考書はIntelのドキュメントがもっとも頼りになります。
わたしがやっている方法は単純にVC++ .net2003のコンパイルオプションを
SSEまたはSSE2対応に変更しているだけです。楽ちんだし(w
さらにCPU別のオプティマイズをかければ、多少速くなるのかも。
以前はコードのオプティマイズをアセンブラレベルで遣り繰りしていたことも
ありましたが、CPUがキャッシュを内蔵して以来、オプティマイズはコンパイラに
任せてます。多くの場合、コンパイラの方が賢いので(苦
>>535 >Synth1のような高速化がしたい場合は8〜16ビットのバッファを事前(起動時)に用意して
>それを使い分けすることで場合によっては数十分の1の処理でよくなります。
んんん?何のバッファですか? ウェーブテーブル? ワークエリア??
もちっと解説お願いします。
>それと、最適化の前にはせっかくですからアナライザーを使ったほうがいいと思います。
Vtuneとかですか?お金があれば使ってみたいですけど、そこまでのプログラムを書いて
ないので…… そもそもプロファイラすら使ったことないです(w
538 :
名無しサンプリング@48kHz :03/09/23 01:11 ID:3hKWYSmd
>>AWタソ >本格的に高速化するなら、人力でSSE/SSE2の部分を最適化するしかないでしょうねー。 >わたしがやっている方法は単純にVC++ .net2003のコンパイルオプションを >SSEまたはSSE2対応に変更しているだけです。楽ちんだし(w .NETの最適化指定で何%速くなりますたか?? めちゃめちゃ知りたいでつ!! あとそれって、SSE/SSE2命令の組み込み関数を使ってる、ってことでつか?
539 :
AW :03/09/23 16:20 ID:tttBgBTr
540 :
538 :03/09/24 05:08 ID:a3c+pakU
>>539 おぉ!貴重な情報ありがとうございます!
それぞれの動作は後でダウソして体感してみたいとおもいまつ!ウホ!
541 :
788@いっぱいいっぱい :03/09/24 20:00 ID:ke5cUzfe
>>540 ぜひご試用ください。お気づきの点がありましたら
教えてくださるとウレシイです。
そうそう、MIDIインジケータの右上にある青LEDをクリックすると
プリセット用のソースコードを書き出しちゃいますので、ご注意を。
隠すの忘れてました(w
てか、面白い音ができたら教えてください。プリセットに入れるかも。
>>541 >LFO周りの係数等、リアルタイムに演算してもあまり意味が無いであろうものを
>選択してくださいまし。
なるほど了解です。試作シンセに限っていえば、おそらく
ウェーブテーブルをバラして音数分持たせた方が高速化に有効かも。
ただ周波数固定したテーブル作っても、ポルタメントやピッチベンドには
使えないんですよね。3次補間でもすれば、アラは目立たないかな。
Synth1の作者さんは、ここ見てないですか? Synth1でのアンチエイリアス処理の
やり方が知りたい昨今(w オーバーサンプリングしてるのかな。
>>535-537 情報ありがとうございます。
やっぱり本格的にSSEを使おうとするとアセンブラの知識が要るんですね。
まずはちゃんと軽いアルゴリズムを考える所から始めます。気長にがんばります。
>>542 >Synth1の作者さんは、ここ見てないですか?
そういえば最近復活しましたよね。
クオリティ高いですよね。凄く軽いし。
version upでフィルタがパワーアップしてたのが嬉しいです。
544 :
457 :03/09/26 22:36 ID:KvtAZ66e
>>537 レス遅くなりました。
結局、timeinfo使ってなんとか処理してみました。
もう少し詰めていかなきゃいかん所がありますが、なんとかなりそうです。
ありがとうごさいます。
initialDelayの使い方がよーわからんのですが
どこか参考になりそうなもの御存じの方いらっしゃるようでしたら、是非。
>>543 確かに本格的にSSEを使うには、アセンブラの知識が必要ですが、
コンパイラのオプションでも、とりあえずSSEのメリットを享受できるようです。
まだSynth1はフィルタに弱点があるように思うんですよ……。
イコライザを通しているせいなのか分かりませんが、音が上品ですね。
試作シンセは、あちこちにサチュレータをかまして下品な音づくりを目指してますw
>>544 なるほど、TimeInfoを使う手もありなんですね。勉強になります。
>initialDelayの使い方がよーわからんのですが
ドキュメントを見ると、最初にデータを食わしてやる必要のある
アルゴリズム用と書かれてますね。
先読み型のプラグインとかで使うんでしょうか。
好き嫌いの話を「弱点」と言ってしまうのはSynth1作者さんに失礼な気が・・・ 下品な音が嫌いな人間も多いし
>>546 まあ、その辺りが技術屋の意見なんでしょ。
音楽屋との相違よね、その辺りは。
シンセの良さを完成度に求めるか、個性に求めるか。
>>546-547 好き嫌いというよりプログラム上の疑問だったんですよ。
弱点とは言葉が悪かったですね、すいません。
以前よりSynth1の音の抜けが悪くなったような気がしたので、
なぜフィルタのほかにイコライザとtoneを多段でかましているのかと。
これが抜けの悪さの原因じゃないかな、と思ったんですわ。
んで、いまアレコレいじってみたところ、今朝方の音はなんだったんだという
ぐらい本来のアナログフィルタらしい抜けのいい音がでるようになりました。
弱点発言は撤回させていただきます。
549 :
名無しサンプリング@48kHz :03/09/29 18:28 ID:Vzmg5oKO
551 :
788@いっぱいいっぱい :03/09/29 20:08 ID:kt+32NQH
?なぜにこぴぺ?既にサーバから消してあります。
552 :
名無しサンプリング@48kHz :03/10/04 17:58 ID:/OIizS9X
良スレホッシュ
>>549 ちと待ってね、たぶん今月中には移植できると思います。
先月OS X(いまごろ10.1(笑))をインストールしたら、
アレコレ支障がでてきたので、クリーンインストール用の
HDD買ってきました。
>>551 そうだ
>>788 さん、できれば上のディレイ用GUIの画像を
提供していただけるとウレシイんですがー、どうすか?
>>AWサソ もちろんOKです。ありがとうございます。 明日・明後日中にもアップロードしておきます。 (549はどなたかのコピペですな。謎ですな?)
あ、すみません。あのクラスはかなり適当に書いてあるので、 画像と同様に修正ものをアップしておくかもしれません。 (floatの0と1はVSTGUIのコードを見る限り(bouncevalue...) はっきり収まるようなので、if(!fMix)のようにしても大丈夫です(?))
557 :
AW :03/10/06 00:14 ID:2QCrrJAm
>>554-555 了解、よろしくお願いします。
とはいえ、次にここへ来るのは週末になるかもw
>>556 おお、
>>457 さんはMacプログラマブルでしたかー。
このスレではMacプログラマは貴重なリソースですぜ。
558 :
788@いっぱいいっぱい :03/10/07 01:56 ID:GRHzuIXb
>>556 コード見て見たいですねぇ。
(Winのソフトで解凍できませんでした、残念)
自分のはただの遅延器ですので、参考にもなりません・・・
本当はもっと入り組んだの作ろうとも思ったんですが、
エフェクタよりVSTi人気が凄いので自分も開発し始めようかとも思ってます。
そうそう、皆さんのVSTFX/VSTiを選ぶ決め手はどんな要素ですか?
値段、CPU負荷、個性等色々ありそうですが、
非常に気になってます。というのもCPU負荷をかなりしぼっている反面
『負荷考えなきゃもっと個性的なものできるのになぁ』と思ったりしてます。
>>558 「これしかない」って言う個性的なものなら負荷はある程度気にしない。
ある程度って言うのは単体で1トラック演奏で途切れない程度。
どうしてもその音が使いたかったら一旦オーディオファイルに落としてでも使うもの。
今はSampleTrackがそんな感じ。
ごめん、酔ってる。 SampleTunkね。
>>557 猫の手ほどにお手伝いできればイイんですけどね
あと、以前にお聞きしたinitialDelayの事なんですが、
ディレイみたいにバッファを使うようなものでblockSizeぶん取る方が親切なんですかね?
(思い付きなだけで、テストもしてないんですけど。)
>>558 ソースといっても
>>532 に書いたよーな事しかやっとりませんですよ。
そんなもんですんで、mono-in stereo-outのまま、samplerate固定と無い無いづくしですw
直しましたのでGUI版で載せます。
562 :
788@いっぱいいっぱい :03/10/09 17:46 ID:Y6NgkTdn
>>AWサソ 申し訳ないのですが、 ソース・リソースはメールで送信させてもらえないでしょうか。 サーバが落ちているのでアップロードできないということに加え、 ソースがあまりにも変更点が多いもので。 (ソースの一般公開は止める方向で考えています。)
R_DELAYをPMG4/LOGIC6で使ってみましたが、 モノにしか挿せないけど挿したらステレオになるのは仕様ですか? なんかビミョーに使い勝手が悪いような気が・・・。
>>563 仕様といいますか、、、アホですみません。
修正したのをアップしておきました。(GUIもつけてみました)
URLは
>>556 のと同じです。
余談なんですけど
以前はtripodだったんですが、infoseekになってからオカシイ事が多いですので
どこか間借りできる場所を探しております。
565 :
788@いっぱいいっぱい :03/10/10 23:45 ID:0pwBtoLj
少々お聞きしたいのですが、
皆さんの中にリバーブ(残響付加)の手法で
くし型フィルタとオールパスフィルタを組み合わせる方法以外のものを
ご存知の方いらっしゃいませんか?
音自体は悪くないのですがパフォーマンス的に
もう少し魅力あるアルゴリズムがしりたいと思っているのです。
>>564 >どこか間借りできる場所を探しております。
間借りならば、aaacafe以外をおすすめしますw
ファイルがダウンロードできなかったり、軽い反面問題ありです。
>>564 なんかリンク先おかしいよ。
ネスケでダウソするとzipのコードが出てくるし、
ダウンローダでダウンロードしても解凍すると壊れてるし・・・。
う〜ん。
>>566 突然俺もそーなりました。いろいろ試してみた結果
.sitがダメになってるようなんですが、、
.hqxでアップし直しました。これで大丈夫なようです。
御迷惑おかけしました。
>>565 aaacafeもそんな感じなんですか、、
infoseekが今月後半に大幅な変更をするとのメールが来ていたので
少し様子見って感じになりそうです。
>>567 ご迷惑って。いやこっちは落とさせてもらってるんで。
という訳で落とせましたです。
効き具合も分かりやすいしwいい感じ。
しかしR_Delayって初めて使ったけど、なんか使いどころムズそうだね。
>>561 >あと、以前にお聞きしたinitialDelayの事なんですが、
>ディレイみたいにバッファを使うようなものでblockSizeぶん取る方が親切なんですかね?
ディレイにはいらないと思いますよ。
事前に空回ししないといけないオシレータ(BLITとか)あたりで
使えばいいんじゃないでしょうか。
私も使ったことないので、よく分かりません(w
>>562 了解です。捨てメアドですが、まだ使えるようなので、
こちらへお送りください。
[email protected] この連休中にMacのHDD換装できるといいなぁ(w
>>565 >くし型フィルタとオールパスフィルタを組み合わせる方法以外のものを
>ご存知の方いらっしゃいませんか?
シュレーダーのリバーブモデルは実装が簡単だけど、
アタックの強い音のリバーブが金属音になっちゃうのが難点ですねー。
ここにシュレーダー以外の解説が、ちょっとだけでてますよ。
FIRとIIRを使うみたいですね。
http://www.harmony-central.com/Effects/Articles/Reverb/
ホストのサンプルソースとかってないのー?
>>571 VSTそーすのとこにあったが、コンパイル方法わかんねぇ・・
ちなみにOSX。
わかる人教えて。
C3MultiBandCompAU化期待age。 てかC3MultiBandComp最高です。
576 :
575 :03/10/17 22:01 ID:2twSvbC4
質問なんでageときます
577 :
名無しサンプリング@48kHz :03/10/17 22:45 ID:TqWT1XPo
×Delhpi ○Delphi スマソ
579 :
575 :03/10/17 23:32 ID:+vXG2kXx
>>575 Delphi自体は初心者向きだしかなりいいツールなんだが、
VST開発ということであればサンプルソースなんかの関係でC++
の方が学びやすいと思う。Delphiの利点もVSTではあまり活かせない。
現時点でDelphi使いなら問題ないが。
そういう漏れは普段Delphi使い、VSTはBCCでやってる。
DelphiでVSTもそのうちやりたいけどね。
>>581 あ、すまそ。BCCじゃなくBC++だ。BC++5.0のIDEからやってる。
BCCの方は試してないよ。多分できると思うが多分巷のIDEはムリだと思う。
あれは自分でアプリ作るときには便利だが既存のプロジェクトをビルドしたり
するのにはぜんぜん役に立たない。
583 :
名無しサンプリング@48kHz :03/10/18 20:03 ID:CDvSUMUk
Borland のフリーなコンパイラとそれ用のフリーな統合環境用のプロジェクト 設定あげようか?AGain とか ADelayEditGUI が BC++ でビルド出来ればオッケー でしょ? 誰か使いやすいフリーのリソースエディタ知りませんか?Windows 用の。
584 :
583 :03/10/18 20:19 ID:CDvSUMUk
ttp://ring2.virtualave.net/again.zip ほい。AGain for BC++。フリーのコンパイラ及び統合環境とVSTSDKはご自分で
ご調達下さい。(この鯖、ダウソ量制限があるのでご注意を)
ソースファイルとヘッダファイルは中身が空になってるので、SDKからピーコすれば
オッケーです。
ビルドしたんだけど認識されないよ〜ってヒトは main 関数のエクスポート名が問題
だと思われまつので、このプロジェクトん中の .def ファイル見てみそ。
あと NASM 使えばSSE/SSE2/3DNow最適化もバッチリでしょ。
585 :
名無しサンプリング@48kHz :03/10/18 20:20 ID:ECJIN8/n
>>583 tp://www.jsdlab.co.jp/~kamei/
586 :
583 :03/10/18 20:35 ID:CDvSUMUk
>>585 厨でゴメソ、テキストエディタしか見当たらなかったヨ・・・。
>>583 マリガトー
これでC++かつフリーな開発環境ができます。これから試してみます。
>>585 xyzzy良いよね。今も2ch-mode@xyzzyから書き込み中。
でもリソースエディタはまた別物と思われます。
588 :
788@いっぱいいっぱい :03/10/20 17:51 ID:XV78xniD
>>584 その設定でビルドしてみたんだけど認識してくれないです。
Warningに
"非パブリックシンボル 'main' をエクスポートした
brc32 Release\again.res Release\again.dll"
ってのが出てるんだけど関係ありますか?
bcc5.5.1+BccDev1.2.14です。
590 :
538 :03/10/24 02:42 ID:hO1GPeHK
あ、もすかしたら main 関数の名前を _main() にしないとダメだったかも(うろ覚え)。 ちょっと今手もとに環境ないんで試してみてスマソ。
591 :
583 :03/10/24 21:00 ID:sIIatose
そんなことはナカタです。 main() はそのままでヨカタ。 でもその Warning は出たかどうか覚えてないれす。 again.def に main = _main という1行は入ってますよね?
>>591 main = _mainってのは入ってますね。
それからbccののプリプロセッサシンボル(?)がDWIN32らしいので
gainvstmain.cpp内の
#if WIN32を
#if DWIN32に書き換えました。
あとはファイルのパスを設定したくらいです。
593 :
592 :03/10/24 22:05 ID:xBBoGjsd
-DWIN32 ってWIN32の宣言なのことなのですね。スマソ。 ******** #if WIN32 #include <windows.h> void* hInstance; BOOL WINAPI DllMain (HINSTANCE hInst, DWORD dwReason, LPVOID lpvReserved) { hInstance = hInst; return 1; } #endif ******** でコンパイルすると、 #if WIN32の行で式の構文エラーって言われてコンパイルが通らないです。なぜなんでしょ...
>539 どうもボーランドのコンパイラは#if構文では、 式の評価しかできないらしく、WIN32が空白に置き換えられ 式ではないとしてエラーを出しているようです。 WIN32=1とするか#ifdef WIN32,もしくは#if defined(WIN32) に書き換えるとコンパイルが通ると思います。
>>588 788さん、メール受け取りましたー。修正箇所も了解です。
ちと激忙モードにて来月ぐらいにはなんとかします。トホホ……
ホッシュage
マルチバンドコンプAU化期待age
ならばAU化できる猛者を求む!! オレも勉強してみようかな・・・。 素人でも意味が分かればできるもんなの?
600 :
788@いっぱいいっぱい :03/10/30 18:36 ID:agbocNqX
>>598 バッファクリアのところにバグがありました。
汚いコードで非常に申し訳ないです。
自己レス。リソースエディタじゃないや。ごめん。
603 :
名無しサンプリング@48kHz :03/10/31 12:45 ID:9tUXc00f
>>599 macは豪華な開発環境が最初から付いてるから環境に関しては問題無いと思う
AUのdevelopment kitも出てるし
でもGUI周りはVSTGUIライブラリが使えない分移植が大変そう。
>>598 逆回転させてフィルタのQをあげると(゚∀゚ )!!
GUI実装キボンヌ
604 :
185 ◆8Tls72BXjM :03/11/05 13:04 ID:oq6M12N1
605 :
名無しサンプリング@48kHz :03/11/08 19:53 ID:kuJcDdgd
>>604 良いですね〜。実はバッファーリセットボタンを追加して欲しいと
不仕付けにも788さんの掲示板でリクエストしていたんですよ!
いや〜。有り難いです。
>>605 バッファのクリアはLPFにレゾナンス付けたらすぐ発信するようになっちゃったので
対パニック用なんですど、何かの役に立ちましたでしょうか?
今phase linear FIRでEQを作ろうと計算してるんですけど、
ものの本には遅延群が大きくてあまり音声処理用には向かない
みたいな事も書いてあったり…実際のところどうなんでしょうね?
wavesのEQにはphase linearなものがあるらしいんですけどそんな高価な物もって無いし
使ったことある人いますか?
>>608 情報どうもです。早速試してみます。
wavesもelementalaudioもマスタリング用をうたっている所を見ると
やっぱりそれなりに遅延が生じるモノの様ですね。
それにしてもfiriumのUI、カコイイなぁ…
610 :
名無しサンプリング@48kHz :03/11/15 20:33 ID:uyXLhN0t
たまにはage
>>605 亀レスもうしわけないです。
多分初リリースの改訂版ディレイのバイパスボタンを押すと
バッファがクリアされたような気がします。
というか、つけますねボタン。
http://www.ismusic.ne.jp/sweetboy/SH-1/SH-1Maximizerv0.99.zip マキシマイザーを作ったのでよければベータテストお願いします。
ちなみにWavesライクなパラメータで作ってみました。
(中身はまったく追いついてない・・・ですけど)
>>185 まったく話は関係なんですが、
マルチバンドコンプ作るにあたって
周波数ごとの分割はBPF使いましたか?
IIRのBPFはどうもかっちり動作していないように思いまして。
コンプレッサー自体は既にできているので
Quadraで作ろうと思っています。
>>606 >>611 亀レス失礼します。例えばショートディレイにフィードバック長くかけて
おいて、途中で切れるとか。トリッキーな事がしたかったもんで。
ディレイってフィードバックに対して減衰するカーブ自体は固定ですよね。
それに反するような効果が好きだったりします。。まあ、八分のディレイを
あまり減衰せずに、三回鳴らして消えるとか。。(略
とにかくアリガトでした。
613 :
185 ◆8Tls72BXjM :03/11/18 16:32 ID:6EtRQ1fP
>>611 マルチバンドコンプで使ったBPFはLPFとHPFの従属接続でやってます。
クロスオーバー周波数を設定するタイプのマルチバンドコンプなら
BPFで良いかなと思ったんですけど、フィルターを自由に設定できるようにしたかったので。
さらにLPF、HPFを使い回しできるってものあります(w
ただBPFとLPF+HPFはまた特性が違うわけでどっちが良いのかはわかりません。
今はうまいことフィルタにphase linear FIRを使えないかなぁ…と画策中です。
biquadタイプのIIRフィルタなら具体的な係数を求めたらここで周波数特性を確認できます。
http://www.digitalfilter.com/iircalwav/jpiircalwav.html >>コンプレッサー自体は既にできているので
よかったらコンプキボンヌ。
614 :
名無しサンプリング@48kHz :03/11/22 19:52 ID:3gYGR+RZ
>>788 マキシマシザー使って見ますた。
もう少しゲイン上げられるレンジが広いほうが良いかとおもいますた。
いわゆるlook aheadタイプのリミッターですか?
とりあえず乙
615 :
788@いっぱいいっぱい :03/11/26 19:51 ID:qys2vjOK
いつもいつも亀レスすみません。
>>614 ゲインレンジはこれ以上上げるとひずんでしまうのであげられそうにないです。
原理はピークリミッターを色々いじってある?というか謎です(アバウト
>>613 IIRフィルタを色々試行錯誤したところ、
かっちりしたクロスオーバーを実現するには
8Pole以上は最低限必要のような気がしました。
むむむむむぅ、
コンプレッサーはVSTにしてないで基本クラスだけできてるので
ちとお待ちくださいまし。
プラグインつくりたいんですが、Licensing Agreementをみるとメールかファックスを送りなさい。 のようなことが書いてあるあれは、いったいどきにメールすればいいのでしょうか? それに、これって↓なにをどううめればいいんでしょうか?どなたかおしえてくださいな。 By: .......................................... Printed Signature.......................................... Title.......................................... Date executed..........................................
618 :
185 ◆8Tls72BXjM :03/12/03 22:52 ID:wHDE/jud
c3multibandcompを1.2.0にバージョンアップしました。
今回はPhase Linear FIRを搭載してみますた。
全バンドとも群遅延特性は全周波数帯で一定(なはず)です。
今まで通り24dB/oct ButterWorth IIRも選べます。
意外と(?)音違います。ただFIRはちょっと重めです。
フィルタのタップ数減らせば良いんですけど
低域での遮断特性が悪くなるのでどうしようか…って感じです。
前バージョンと互換性は無いので気をつけてください。
(同時に使用しても問題はありません。)
ダウソロード
http://www.ismusic.ne.jp/slim_slow_slider/vst/index.html >>788 @615
8poleとなると郡遅延歪みが結構大きくなってきますよね。
2poleのフィルタを従続する場合は各段でのQの決め方がポイントになってくらしい
とアナログフィルタの本に書いてありました。
チェビシェフとか、だ円なら低い次数でも遮断特性は急峻にできるようです。
619 :
名無しサンプリング@48kHz :03/12/04 23:28 ID:3OhgxvIe
OSXで使えるVST.au版みなさん作って下さい!!!
OS9で使えるVSTみなさん作って下さい!!!
使えるVSTみなさん作って下さい!!!
みなさんVST作って使える下さい!!!
つまんねーよ。つーかここは自分で作るスレだし
625 :
名無しサンプリング@48kHz :03/12/12 00:29 ID:fi/ED0G+
おいらも作ってみようかとSDKのソースを追いかけている段階なんですが、 サンプルのソースよりもうちょっと凝ったもので、公開されているソースは、 ないでしょうか? VSTじゃなくて、Waveファイルを扱ったWindowsアプリでも良いので、 信号処理の基本が勉強できそうなものを探しております。
626 :
名無しサンプリング@48kHz :03/12/12 15:01 ID:SN8RNePH
627 :
788 ◆wRS8KONdBw :03/12/12 18:08 ID:Ran2Nx1r
>>624 おそらく係数が単に少ないか、
または、使っているフィルタが少ないからでしょう。
FIRなら一つで色々な特性のフィルタが比較的簡単に表現できますしね。
といいつつ、レイテンシが気になってまだFIRは使ってないですが、
(RMS検出のリミッタと組み合わせようと模索中)
マルチバンドコンプできました。
ttp://www.ismusic.ne.jp/sweetboy/T-SLEDGE/T-SLEDGE099.zip 中身が結構粗雑ですが、結構高速化してあります?
>>625 フィルタの特性などは本を見たほうが理解しやすいですが、
リバーブやらディレイやらは
「エフェクト 原理」でぐぐって、適当に書いてあるのを見ただけでも
意外とコードにできたりしましたよw
628 :
名無しサンプリング@48kHz :03/12/12 23:47 ID:4RcQhZ8X
なんか凄いぞ、藻まいら。マジで。 とりあえず使わせてもらいます。多謝。
>>788 >T-SLEDGE
HFとMLFバンドのON/OFF表示と動作が逆じゃないですか?
あともう少しフォントを大きくして頂けると…文字が潰れて読めません。
630 :
625 :03/12/13 16:43 ID:mTxQQt1+
>>626-627 サンキューです。
飲み込むまで、時間がかかりそうですが、
のんびりやってみます。
631 :
788 ◆wRS8KONdBw :03/12/14 14:30 ID:ZstebjgP
こんなじかんですが、どうもw
>>629 動作逆でしたか!確認して修正してみます今すぐできますので。
ああと、文字はおまけ程度で勘弁してください。
ぎりぎりの大きさにしていこうなどとなぜか思っている次第なので、
そのかわりパラメータ変更時は画面下にでますし・・・かんにんして。
632 :
788 ◆wRS8KONdBw :03/12/14 15:14 ID:ZstebjgP
確認してみましたが、 更新バージョンでは動作にこれといった問題点は発見できなかったです。 なので、サーバ復旧し次第アップしておきます。
> ぎりぎりの大きさにしていこうなどとなぜか思っている次第なので、 > そのかわりパラメータ変更時は画面下にでますし・・ いや、その特別にコダワリがあるなら別にイイです。すいません。 > 確認してみましたが、 > 更新バージョンでは動作にこれといった問題点は発見できなかったです。 私が使ってみたバージョンは0.99です。 症状はプリセットに起動時と違うモノを選択した後に発生していました。 さらにバグレポートなんですが、volcano105を使った プロジェクトファイルでリリースのパラメータが正しく保存されないようです。
634 :
788 ◆wRS8KONdBw :03/12/14 17:34 ID:ZstebjgP
>>633 これから確認してみますが、
そちらでお使いのホストアプリケーションを教えていただけないでしょうか。
確認出来次第修正します。
ところで、プリセット募集中です
(KvRにかいてありますが、日本語のほうが肩身が狭くないですw)
>>634 すいません。T-SLEDGEの方はこちらの勘違いでした。
HFをOFFにした方がハイが上がって聞こえたもので…お騒がせしました。
volcanoの方はリリースのARCを外してリリースタイムを設定して保存すると
再び開いた時にリリースタイムが10msになってしまいます。
ホストはFLStudio4とKristal Audio Engineです。肝心なこと書き忘れてゴメソなさい。
636 :
788 ◆wRS8KONdBw :03/12/14 18:35 ID:ZstebjgP
Volcanoのほうは明らかに間違ったコードがリリース周りにあったので さっそく確認と修正をおこないました。 おっしゃられた通りのバグを確認しました。 T-SLEDGEのほうはこちらではバグが確認できませんでした。 プリセット読み込み、書き出しともに問題なかったです。 Chainer v1.03を今インストールして確認しました。 (実はバンク書き出しできることしらなかった・・・今まで)
>>788 さん
オフィシャルページ見れないんですが(汗
>なので、サーバ復旧し次第アップしておきます。
ってことでとじた訳じゃないんですよね?
T-SLEDGEがSX1.06で使えません?
640 :
788 ◆wRS8KONdBw :03/12/16 23:53 ID:FIIknFlv
どもども、KvRでも言われてるんですが、 どうやらコーディングに問題があるようで、こっちではChainerでしか テストしてないので、CubaseSXで試してOKだったらアップします。 Volcanoのバグは修正したのでこれからアップしるところです。
641 :
788 ◆wRS8KONdBw :03/12/17 00:18 ID:G6ihpw/x
>>641 T-SLEDGEは、センドでは音出るけど
インサートでは音出ないし波形も表示されない。SX1.06にて
643 :
788 ◆wRS8KONdBw :03/12/17 17:01 ID:/b6LjmBZ
>>642 原因はかなり基幹的な部分にあるかも知れないバグです。
取り合えず、それにあわせた処理をしたのでインサートでもなると思います。
(修正以前から自分の環境ではなぜか全快でなってます・・・なぜ?
というのも、
ProcessReplacingで、
出力バッファをクリアしてから、
各コンプレッサーで圧縮した音を出力バッファ上で合成し、
さらにそれをリミットするという構造をとって処理をしていたのですが、
出力バッファをクリアした途端。
入力バッファも全て0の値を返してきました(なんで
このことについてご存知の方、情報お願いします。
644 :
185 ◆8Tls72BXjM :03/12/17 17:21 ID:jDYTKvJK
>>643 それは
void ProcessReplacing(float** inputs, float** outputs, long sampleFrames);
の*inputs == *outputsということがあるえる為かと。
一度入力を別のバッファに移してから処理すれば大丈夫だと思います。
実は一度漏れもやりました。
645 :
788 ◆wRS8KONdBw :03/12/17 17:35 ID:/b6LjmBZ
ぐぐはぁ、 やはりそこが原因でしたか。 個別モジュールを連結ループする構造だとどうしてもバッファどりが問題ですねぇ。 ご解答ありがとうございます。多謝w
646 :
名無しサンプリング@48kHz :03/12/18 12:22 ID:niz3nyCP
MIDIを通信で使う利点はデータが軽いからじゃないの? それを音声自体のやりとりでやるなら普通にmp3とかで良いような気が… どうせ鯖にmidi送りつけて豪華ソフトウェアシンセでmp3に変換してから送り返す って形になるんでない?なら最初からmp3で…(以下略 スレ違いすまそ。
648 :
457 :03/12/20 14:05 ID:mCehL31r
久しぶりにスレ覗きす
>>646 考える分には結構おもしろい話題のような気がしますね。
MIDIoIPとAudio over IPって事なんかな?
VST System LinkをoverLANでやってる
http://www.fxteleport.com/ なんてのも面白い規格ですよね
AUプラグインづくりのメドもたったので、近々。
>AUプラグインづくりのメドもたったので、近々。 禿げしく期待!
期待age
皆さん、プラグインのデバッグするときどうやってます? やっぱりfprintfとかassertとか埋め込んでおいてホスト で起動してみるしか無いですか?
653 :
名無しサンプリング@48kHz :03/12/26 01:46 ID:Fwq4esMK
>皆さん、プラグインのデバッグするときどうやってます? Console出力。Win でも OpenConsole() すれば普通に printf() で 出せちゃうしね。process() のデバッグならデバッガで出来るけど、 マウスイベント関連のデバッグにはデバッガだと不便なので。
655 :
651 :03/12/31 19:08 ID:AUsgMt0N
>>654 どうもありがとうございます!
QRIOを横目に測定した結果、次のようになりました。
Nuendo2.1 wave0dB S/N Ratio 96.0dB
Nuendo2.1 wave0dB RDR16 S/N Ratio 94.0dB
Nuendo2.1 wave-20dB S/N Ratio 76.2dB
Nuendo2.1 wave-20dB RDR16 S/N Ratio 76.4dB
ということで、
Nuendo上における
16Bitsへの変換ではRDRのクォンタイズ限界能がNuendoにほぼ及ばないという結果に。
レベルが0dBに達しない状態ではどうやらRDRが幾分歪を抑えるようです。
ただ、8Bits(つかわないですよね)への変換には自信ありですw
657 :
788 ◆wRS8KONdBw :03/12/31 22:08 ID:UuZU0qUo
関係ないですが体験版で出力できるホストを発見したので追加報告です。 DigiOnSound4 wave0dB S/N Ratio 90.6dB DigiOnSound4 wave0dB RDR16 S/N Ratio 82.9dB 一見するとRDRの影響でものすごく音質が低下しているように思われますが、 16Bitsにダウンサンプルする以前に F32Bitsの状態でRDRをかけただけで88dBまでS/N比が低下していました。 (Nuendoで証明されたように32Bitsの状態では94.0dB以下になることは異常です) VSTプラグインの使用自体に相当な問題があるようです。 体験版だから?
659 :
名無しサンプリング@48kHz :04/01/01 23:46 ID:KXocZAzW
>655 いや、まさにそのリンク先のそれでOK。VST だったらば、 DllMain の中の PROCESS_ATTACH で OpenConsole して、PROCESS_DETACH で FreeConsole すれば平気なはず。漏れはそうしてまつ。 ただし、これで表示されるコンソール画面を手動で閉じると落ちるので注意。 (逆に、強制的に落としたい場合に使える、ってのもあるけど) 複数プラグインで二重に OpenConsole とかしても開くコンソールは1つだけ だけど、特に落ちたりということもなし。
ねー、マルチバンドコンプのソース、誰か公開してくれてなかったっけ
してないよ
そっかあ、記憶違いだな。しゃーねー、自分でなんとかするか。
>>658 返事送れましてすみませんです。どうもありがとうございます。
サイン波なので圧縮するとそこまで小さくなるようですね、驚きです。
計測結果はこんな感じです。
Input S/N Ratio 113dB
WaveLab4.0 0dB S/N Ratio 94.5dB
WaveLab4.0 0dB S/N RDR16 Ratio 96.3dB
WaveLab4.0 -20dB S/N Ratio 74.8dB
WaveLab4.0 -20dB RDR16 S/N Ratio 76.4dB
結果から
0dBのサイン波はNuendoと結果が逆転しています、
同じSteinberg製でも、書き出しアルゴリズムがNuendoとは違うようです。
単純に言ってRDRとの相性が非常にいいようです。
ちなみに一般にCDの歪みは最小約96dBといわれています。
-20dBでは0に近い値が切り捨てられてしまうので、高域ひずみが発生し
音質がかなり低下してしまうわけです。ノーマライズ大事ですね。
MSIで計測したかったんですが、F32Bitsはサポート外でした。
WinampではF32Bitsのファイルは音量が上がってしまい、測定できずでした。
>>663 VST pluginで16bit intにクオンタイズ掛けるとしてもpluginの出力は32bit floatなんですよね?
そうするとホストのフェダーを0dBに固定しておかないとあんまり効果ないでつか?
665 :
名無しサンプリング@48kHz :04/01/03 22:10 ID:T81oO+aa
すいません、ここで根源的な問題なのですが、 「VST Pluginを自作する」事による 効果やメリット、問題点を整理して頂けませんでしょうか?
666 :
名無しサンプリング@48kHz :04/01/03 22:20 ID:CdSerxJ5
1) 楽しい。 2) 知的興味が満足される。 3) 自分の好きなように仕様を決定できる。 4) 他人にも自慢できる。 5) エフェクトやシンセシスに対する理解が深まり市販や他のフリーのVSTを 使ったときもこのパラメタいじればこういうふうに動作するはずというのが わかるので音作りに役立つ。 6) コンパイラや開発環境がそろっていれば、頭と時間以外にそれ以上金はかからない。 といったとこかい?
効果やメリット:好きな音を作れる。売るならうまくいけばもうかる。 デメリット:手間がかかる。もしかすると金もかかる。
>>665 質問内容が曖昧で、どーしたもんだか…
個人的な知識欲とか、好みのUIが使えるとか、金かかんねーからとか
デジタル信号処理技術の技術底辺の向上による業界全体へのフィードバックとか
いろいろあんじゃん
角度とか
669 :
名無しサンプリング@48kHz :04/01/03 23:33 ID:T81oO+aa
>デジタル信号処理技術の技術底辺の向上による業界全体へのフィードバック これはいったいどんな効用を見込めるのでしょうか?
>>669 つーか何を知ろうとしとるんかが掴めんのだけど
レポートかなんかなん?
もちっと「自分にはこういう考えがあって、こうこうだがどうか?」
って形にしたほうが求める回答は得られ易いんでないかい?
底辺拡大と競争力の見直しなんざ
資本主義経済の軽い読み物を参考にしたほうが効率いいんでない?
671 :
名無しサンプリング@48kHz :04/01/04 15:37 ID:FidQDnT6
>デジタル信号処理技術の技術底辺の向上 ここについての解釈をお願いします。 例えばこの技術によって可能となる ビジネスですとか。携帯電話には 実装可能なシステムなのでしょうか?
>>671 そんな具体的なことを言ってるわけじゃないとおもうが。
シロウトにもVST作る技術が備わってくれば、それ相応の
ハイレベルな製品がベンダーからでてくるだろう、子供だ
ましな製品は淘汰されるだろう。
ってことじゃないの?
673 :
名無しサンプリング@48kHz :04/01/04 16:29 ID:FidQDnT6
要するにソフトシンセを自作する事で クリエイターの底上げって事ですかね?
ID:FidQDnT6 って電波?
675 :
名無しサンプリング@48kHz :04/01/04 16:37 ID:zt1eviJ3
話がかみあってないように見えるのは漏れだけか?
676 :
名無しサンプリング@48kHz :04/01/04 17:06 ID:zt1eviJ3
頭でっかちの音響ヲタくさいな。
677 :
名無しサンプリング@48kHz :04/01/04 17:10 ID:zt1eviJ3
要するに↓こんなこと、人それぞれってことでいいんじゃないの? 効用が 見込めるかどうか他人に問いただすこっちゃないよ。自分で決めれ。 665 :名無しサンプリング@48kHz :04/01/03 22:10 ID:T81oO+aa すいません、ここで根源的な問題なのですが、 「VST Pluginを自作する」事による 効果やメリット、問題点を整理して頂けませんでしょうか?
まぁ作ってみればわかるってこった。
禿げ胴、口より先に手を動かそうぜ。つうか漏れも二ヶ月ほっぽってある コンプエキパンさっさと作ろ。
どうもこんばんわ。
>>664 擬似的に16ビットに変換したものを出力していますが、
おっしゃる通り32ビット浮動小数点で出力しています。
なので、ホストによりますが
構造的にマスターフェーダを通してから、
マスターエフェクトを通すタイプでないと、
この手のエフェクタ自体にまったく効果がないです。
まぁ、これは正直面倒くさいのでF32Bits PCMで出力した後に
そのファイルにRDRをかけるのでもおそらく同じことでしょう。
>>672 一概にそうとは言い切れませんよ。
実際のハードの技術に対してデジタルの技術はかなり発展途上なので、
ベンダーでなく個人側であたらしい技術の開発をしている人も
(逆読したのを自分が開発した技術だ!とかはなしですけどねw)
実際にいます、少しは。
で、結局は自作すると痒いところにてが届くということにつきますね。
681 :
名無しサンプリング@48kHz :04/01/06 21:32 ID:ht/P602L
皆さんは何処で知識を習得されたのでしょうか? それと、趣味なんですか?お仕事なんですか?
google
683 :
名無しサンプリング@48kHz :04/01/07 20:19 ID:X+EJDFhX
age
まぁ開発者きどりで騙る分には、googleで探して読みかじった知識で 十分だけどなw
これからVST作ってみたいと思ってるんですが、Winならコンパイラは 圧倒的にVC++でしょうか?何度も繰り返されてるようなのであれなん ですが、GUIがBCBの方が簡単そうなので・・・。 たぶん「VC+++vstgui」 vs 「BCB+VCL」という選択肢かと思うんです が、この両者でGUI作成の効率どのくらい違うか経験者の人のご意見を お聞かせ下さい。 あとネットでのサンプルを参考にする場合BCBだと不便だったとかそうい う経験談などもあれば。
BCBでもVSTGUIって使えるんじゃないの? ソースも全て公開されてるし。 でも最適化はVC++の方が上かな?
687 :
名無しサンプリング@48kHz :04/01/08 15:22 ID:1hqPc5Lb
>>685 BCBって、アプリ作るときには簡単にフォーム作成出来るけど、
DLLを作る場合にはどうなの???VST の GUI って Windows では子ウィンドウなんだよね。
親ウィンドウのハンドルを渡されて、それの上に子ウィンドウを作らなければならない。
あと、漏れは Mac がメインだから BCB はあきらめた。
vstguiも使ってないけど。フルスクラッチ。
688 :
685 :04/01/08 17:28 ID:hhgKkfSr
>>686-687 サンクス。
好みとしてはボーランドなんですが、サンプル流用などを
考えて、とりあえず当面はVC++でやってみることにしました。
早速ちょっとした変態プラグインを作ってみました。
割と簡単に作れるので驚きました。まだGUIがないので
これからGUIに挑戦してみます。
ところでUniqueIDってみなさんちゃんと取得してますか?
要するにユニークと思われる文字列なら何でもいいような
気がするんですが。
>>688 万が一他のプラグインと重複してるとホストから正しく読み込めないんだと思う。
あそこで登録するのは被ってるIDがないかデータベースと照合してるんでしょ。
配布するなら登録したほうが良さげ。
どもはじめまして。 >変態プラグ 俺もやり始めたんだけど、なんでみんなすぐ作れるねん! とりあえずAGainビルドしてみた。 俺はVSTがどーとかじゃなくてまず処理系の勉強からですぅ…。
なんか開発者さんが増えててイイですね。
>>685 vstguiは用意されてるコントロールを張りつけるだけっていう使い方なら割りと簡単だと思います。
少し凝ったコントロールを使おうとすると結局自作または既存のコントロールを改造するしかないと思いますけど。
ただマルチプラットフォームなのでwin/mac間の移植を考えてる場合は楽かもしれません。
それからいろいろプラグインをアップデートしますた。
特にマルチバンドコンプはCPU負荷が前の60〜70%くらいになってます。
よかったらどーぞ。
ttp://www.ismusic.ne.jp/slim_slow_slider/vst/index.html
693 :
685 :04/01/09 03:13 ID:Vl6nIrI2
とりあえずvstgui使ってみました。 画像をしっかり作り込めばこれでも結構いい物が 作れるような気がします。 で、気合い入れてGUI作ったら今度は音の方が 負けてる気がしてきた。アルゴリズムを改良しなきゃ。
695 :
名無しサンプリング@48kHz :04/01/09 18:04 ID:hApQJglf
まぁ、 マルチプラットホーム意識する以外はそれなりにプログラム組む人にとっちゃ 逆に邪魔だけどね。VSTGUIバグは結構あるしね。
697 :
690 :04/01/10 07:20 ID:9/fRZNLg
>>691 「こういうのが欲しい」というのがあるのでやり始めたのですが、
非常に道のりは遠いです。でも気長に頑張ります。
>>692-696 ワーイ!
VSTGUIはオープンソースコミュニティーが活性化すると良いなー。
>>694 VST用のVCLいいなあ。あれソースはC++かなあ。
PascalだったらDelphiからでも使えそうだが。
699 :
名無しサンプリング@48kHz :04/01/10 14:13 ID:Exl25BZc
>>659 どうしても
*stdout = *hf;
のところで落ちるみたいです。
リンクしてるCライブラリの違いにもよるんでしょうか?
stdoutでははくhfのままfprintfしたらうまくいきました。
すごい亀レスですまそ。
>>699 >*stdout = *hf;
こんなのは問題外
dup2とかfreopenとか
サイン波のシンプルなLFOのコードの書き方教えてくらさい。。。
テーブル使え。
703 :
名無しサンプリング@48kHz :04/01/13 21:23 ID:z/tkLYm/
LFO に使う sin ごときではテーブルなんか使わないで近似式使った方が速い。 どこまで正確に出すかが問われるけど、LFO に使うんなら3乗項だけでも十分。 今のプロセッサのアーキテクチャだとテーブルは不利な場合も多々あるよ。
704 :
名無しサンプリング@48kHz :04/01/13 21:37 ID:kbD6WzwK
まぁ、そんな基本的なこと聞くくらいならググれと。
てゆーか、不正確なほうが気持ちよい音が出るのだ。
Xcode1.1立ち上げてみたらPB時代みたいには落ちなくなってたので 最近AudioUnitのサンプルコードとドキュメント和訳や解読初めますた。 開発者と名乗れるようになるまでに何年かかるかな。うふ。 しっかしドキュメントの和訳する気ないのかなぁ、Apple……。
>>702 そしてそのテーブルの値を外部から指定できるようにすれば・・・
ウマー
C3 multiband comp作ってたひとまだ見てますか? 俺すごく気に入っちゃったので、分割帯域ふやしてC5作ってくれませんか? CPU負荷が高くなるのは構いません。お暇なら検討してくらさい。
701じゃないんですが読んでて興味が湧いたので、厨質すまん。 テーブルって何ー?中のデータってどんな感じ? 近似式とテーブル読ませるのってどっちが負荷かかんないのかな… (自分で実験すんのが良いんだけどすぐ書けるスキルレベルで無いので…)
しらべた。 sin x = x - x*3/3! + x*5/5! - x*7/7! .... レジスタだけでやれるなら、 テーブルよりも小さくて速い気がする。 テーブルって sin 計算していれとくだけでしょ。
712 :
名無しサンプリング@48kHz :04/01/14 21:23 ID:5MH/c8r0
>>710 >だからメモリは食うけど基本的に速い
メモリのスピードに比べてプロセッサが極端に速くてキャッシュマンセーな今日のプロセッ
サではその「基本」は成り立たない場合が多いわけで。
707の言うように任意の波形を使えるようにする野望があるならテーブルが良いとは思いま
すが。
で、近似式はこんな感じ
-π/2 <= x <= π/2 を前提として、
sin(x) = S1 * x + S2 * x^3 + S3 * x^5......
S1=1.0, S2=-0.166666567325592, S3=0.008333025500178,S4.....
n乗の項数が多いほど本物に近づくけど、LFOに使うんだったらそんなにいらないっしょ。
並列演算命令使えば4つの違ったsin(x)を一気に求められるわけだし。
さらに、逆に純粋なsinじゃないことが705の言うようにいい結果になることも。
713 :
709 :04/01/14 21:30 ID:n0XtQ4js
レスありがとう!とりあえず色々読んで試してみる。 LFO用だと結構でかい領域喰いそう…と素人考えなのだが。 レジスタだけ…よく考えたら、コンピュータって凄ぇよなぁ。 音系探求心って間違いなく「コンピュータ」進化の恩恵を 受けるトップ集団に属していると思う…。
爆
テーブル作るなら32bitで0.00°〜360.00°(π)としても140KBだぜよ。 全然たいしたこと無い。
新参者です。 手探りでWinのVOPMのGUIなしバージョンをOSXでコンパイルして見ました。 FM音源っぽい音は出たんだけど、なんかアブストラクト、、、 どこが間違ってるのかさっぱりわからないけど音が出てうれしかったです。 これからいろいろ勉強していこうと思います。
717 :
709 :04/01/15 23:34 ID:rLHfA5+w
VOPM、初めて見たけど参考になるなー。回路系も楽しそうだ。
718 :
709 :04/01/16 20:44 ID:HxGEuFeT
エラー:キーボードが接続されていません。続行するにはF1キーを押してください。
719 :
709 :04/01/16 20:46 ID:HxGEuFeT
ごめんなさい、ミスりました。ちょっと疲れてるみたい…。
>>709 ペイントソフトで描くというのはどう?
個性的なサイン波ができそう。
本来サイン波に個性があってはいけないんだけど。
721 :
名無しサンプリング@48kHz :04/01/17 00:32 ID:pcsXKgr+
722 :
名無しサンプリング@48kHz :04/01/19 12:12 ID:ZdGFv5a1
これは…いったい何をするもんなの? XMLとか使ってるんだけど??
723 :
名無しサンプリング@48kHz :04/01/19 20:54 ID:feJn3M4s
midiエフェクトのSDKらしい 今のところcubase SX/SLとNueでしか使えないようだよ。
そんなもん新しく作らずに AU を Win に移植してくれれば平和だったのになぁ。 ま、空気読めてないヤマハのOPTよかマシか。
725 :
788@とりっぷないぃ :04/01/22 11:37 ID:2Y4O2P//
>>788 @725氏
理想フィルタの離散逆フーリエ変換からインパルス応答を計算してます。
ギブス現象を抑えるのに窓関数を掛けてます。
remez法を使った係数の最適化はよく解りませんでした…( ´・ω・`)
>>726 また、こんな朝に書き込みますが
お答えありがとうございます。私も同じ計算方法をとっています。
周波数サンプリング法は今のところ放置して置きつつ。
今のところFIRできるのは
バンドパス、ハイ・ローパス、ピーキング、ハイ・ローシェルフというところです。
そのうちSony Oxfordに対抗した(できない?)EQでも作ろうかと思っています。
728 :
名無しサンプリング@48kHz :04/02/02 01:23 ID:E+nmGG79
MIDIで打ち込んだギターを程よく歪ませるオーバードライブとかディストーションを作って公開している神はいませんか?
それは程よく歪むように調整すればいいだけなのでは?
なんでまた"MIDIで打ち込んだ"ギター限定なんだい? ギター用の歪みプラグインだとGreenMachine Ampがお勧め
731 :
名無しサンプリング@48kHz :04/02/02 16:56 ID:T7vXB9Yy
VSTプラグインが検索できるページどこでしたっけ?
733 :
728 :04/02/02 17:30 ID:6teU2ERC
MIDIの打ち込みやってるもんで。色々録音したギター用みたいなエフェクターは色々使ってみたんだけど、なんかシュワシュワいうから。
>>733 たぶん、もとの打ち込みが悪い…。
エフェクトを公開してるとこで、DRYとWETの両方のサンプルを比べて、
DRYの状態のような音を打ち込みで作らないと、いい音はでないよ。
ホッシュage
ごぶさたしてます。 いまでもOS9用のプラグインって需要あるのかな? 現在は開発環境がOS Xベースに移行しているのに OS X用のDAWを持っていないという、なんだかなー なことになってます(w ということで、連絡もせずすいません > 788氏
>>736 OS9用の需要はまだあるけど、OSX用の需要も高い。
俺は完全にOSX。
738 :
名無しサンプリング@48kHz :04/02/10 21:07 ID:kopuzc8D
739 :
AW :04/02/10 21:29 ID:J4nAWAfW
>>737 なるほど、まだ過渡期かな。
ありがとー。
>>736 オレもオレの周りもまだまだOS9です。
OSXはまだまだって感じ
移行する暇があったら音楽やりたいし。
対応がOS9,X,XP,2K.9xなんてあると
ユーザーの現状のよく読めてる人だと尊敬しちゃうけど。
windows XP,2k,9xは特別なAPIさえ使ってなければ何もしなくても互換性が保てるよ。 macはOS9/OSXさらにXにはVST/AUがあるからなぁ。開発側も大変だよね。 AUってVSTプラットフォームに比べてどんな特色があるんでしょか?
GarageBandでAU使えるから、これからユーザー増えるんじゃない?
AudioEffectXのsetBypassってどう使うの?
true: プラグインをバイパスすると出力にはバイパス信号が送られるけど裏でプラグインのprocessも呼ばれる false: そのままバイパスでプラグインのprocessは呼ばれない って感じじゃないか? canDoで"bypass"を尋ねるとホストがサポートしてるかしてないか調べられるみたい。
次スレがあるとしたらスレタイは 【VST】Plugins Development 2.0【AU】 がいいな。
AUは別がいいんじゃね?
749 :
OS9 :04/02/19 02:56 ID:hLQKFXaY
>>748 AUいらね
つーか環境無いから
VSTだVST!
750 :
名無しサンプリング@48kHz :04/02/19 15:10 ID:62Vf9mGv
まぁそういうなよ。 AUとVSTの違いなんてフレームワークの違いだけで信号処理の話は同じなんだから このスレのペースだと次スレは夏頃?
そんなこと言ったらMASだとかBUZZマシーンだとかきりがない。 全部入れるのかVSTなのかはっきりしたい。そしてVSTだけで いいと思う。
752 :
名無しサンプリング@48kHz :04/02/20 01:24 ID:wVnk0+Jn
教えてエロい人。 ある物体とある物体がぶつかり合う時に発生する波形を生成するコードを書きたいんだけれど、 俺の拙いアタマじゃどういう構成にすればいいのか浮かんでこないよママン。 参考になるページとか実際にこうしろ、っていうのってあるかな? こういうのって物理音源ソフトとかの作成方法ついて調べていくべきなのかな。 いずれにしても文献が少ないっぽ・・・
>>752 サンプリングするのが早いんじゃないか?
もしくは物体をモデリングしてインパルスorステップ入力のレスポンスを使うとか?
…難しそうだな。
755 :
名無しサンプリング@48kHz :04/02/21 01:55 ID:x+5uL2NZ
>>754 レストンクス。
サンプリングではなく、モデリング音源を作ってみたいんだよな。
で、確かに楽器をモデリングしてっていう考えでやるつもりなんだけど、
まずはそういうものがどういう風に作られているか分かれば楽だなと思って書き込んだんだ。
今はシミュレーションとかの論文を検索したりしてるけど、まあ当然実際のコードはなかなかお目に掛かれません。
YAMAHAのソフトウェアシンセ(何か物理音源のあったよね?)のソースでも転がってないかなぁ。
と、書いてて気付いたが、シミュ板に行ってみようとオモタ。 逝ってきます。。
プログラミングはBASIC程度しかできないのでここの話にはついていけませんが、
公開されるvstがとても良いのでちょくちょく見させてもらってます。
>>757 それで早速LinearPhaseGraphicEQ2.0を使ってみましたが、
マウスで簡単に素早い操作ができてとても重宝しそうですね。
>>757 Resetを押してもMasterGainの表示が戻らないんですけどバグですかね?
つーかサーバ落ちてますね??
760 :
185 :04/02/25 13:26 ID:me6vekBU
>>759 バグレポありがとう。
サーバも復活したのでver2.0.2で修正しておきました。
シミュレートするとしたらなんだろう? 境界条件が複雑ならFEMとか?リアルタイムじゃ無理か。。
763 :
名無しサンプリング@48kHz :04/02/27 22:07 ID:Mo7W8kPu
点と線でADSRのエンベロープ書きたい。VSTGUIでできる?
764 :
AW :04/02/28 00:17 ID:l2py6PjF
>>761 なんかダメだったw
何でも答えるスレみたいなのにお願いしたんだけどね。。
参考書目読めってw
加算合成だけではダメなのはFZ-1の時代の経験から分かるんだけど、
ならパラメータとしてどういう要素が必要になるか、構成をどう組み立てるべきか、
わっからないんだよな〜・・・
>>757 興味を持っていただいてありがとうございます。
私の力量は本当にちっぽけですが、何とかして完成させていきたいと思います。
766 :
名無しサンプリング@48kHz :04/03/01 06:23 ID:cTB1f2AJ
サンプルのVstXSynthを参考にしています。 Cubase SLのプラグインフォルダに突っ込んで起動してみると、 Cubaseのスプラッシュ画面のときにmain関数が呼ばれているっぽいです。 しかるに、ここでAudioEffectXの派生クラスのインスタンスを作ってますよね? ってことは、この派生クラスのメンバ変数の初期化とかで、 デカイものをメモリに置いてしまうと、プラグインを使っていなくても、 プラグインフォルダに入れておくだけで、メモリを使ってしまうってことですか? 何かうまいことできます?
767 :
名無しサンプリング@48kHz :04/03/01 10:36 ID:wPD4YUch
起動時には呼ばれてすぐ破棄されるんだよ。 そして2回目以降は呼ばれない。 アップデートするとまた呼ばれる。
768 :
766 :04/03/01 11:13 ID:cTB1f2AJ
プラグインが増えると起動が遅くなるのはそういう訳か…
770 :
名無しサンプリング@48kHz :04/03/03 23:18 ID:yUTwT8tt
age
771 :
名無しサンプリング@48kHz :04/03/05 16:37 ID:GLWFbLDN
>>769 Cubase/Nuendo は結構賢いほうだよ。一度テストしたプラグインは、その日付とかが変わらなけ
れば起動時はそのファイルが存在することのみをチェックする。
ただし、その最初の起動時に失敗したプラグインはダメリストに入れられるので、Devices メニュー
の Plugin Information で手動でチェックをいれてあげる必要がある。
VST プラグインの開発時には結構これで悩む人が多いと思われ。
パラEQのフリーのものあんまり見かけないけど、 作るの難しいのかなぁ?
>>772 大抵のDAWソフトに最初から付属してるからわざわざ作る人が少ないんでは?
774 :
名無しサンプリング@48kHz :04/03/19 04:43 ID:1QYUDGlr
SDKのコードは全てMS VC++ですか?
>>774 基本的にはVC
一部書きなおせばBCBでも大丈夫
>>775 サンクス
おとなしくVBで遊んでまつ・・・
BCBもチャレンジしたいけど、最近放置傾向にあるから先行き不安なんです
でもC出来る人はうらやますぃです
>>776 CじゃないよC++。
それからDelphi用SDKもあるよ。
>>777 C++ですね。失礼しました。
>Delphi用SDKもあるよ。
えっ!まじっすか?スタ印の公式サイトに?
Delphiなら少し火事ってました
>>778 その話題はこのスレに何度も出てきてるよ。実際Delphiでやってる人
もいたし。まあDelphiはVBと違ってネイティブコンパイラなんだから
できて当然なんだが。
780 :
age :04/03/22 10:25 ID:2/ZbfrJ4
age
VSTSDKを久々にさわってみようと思ってSteinbergのページから登録。 送られてきたアドレスに接続したらPermission Denied(´・ω・`) なんで・・・。゜(゚´Д`゚)゜。
ホントだ。リンク切れてるね どうしたんだろ…
ホシュage
784 :
名無しサンプリング@48kHz :04/04/07 13:11 ID:WJjjZF45
>>781 ふつーにダウンロードできるじゃん。
もう一度やってみ。
785 :
七七八電話線的通信 :04/04/07 14:21 ID:96mobsR9
>>781 ピナクルのサーバーにあるヤツはリンクが切れてる、とYvanが認めてるね。
契約上、アドレスを直接ココに書くことはできないから、
メーリングリストに参加して、14日付けのYvanのメールを検索してみ。
ダウンロードできる旧アドレスが書かれているよ。
>>785 >ちかじかLinearPhaseで作る予定です(現在βテスト中。
VSTプラグインスレのリンクから落とさせていただいたんですが、
ページはまだないんですかね?なかなかスバラシイので追っかけたいんですが、
メール出してベータテストに参加しないとダメですか?
789 :
age :04/04/28 17:23 ID:UJqsIZwf
age
普通の声をSpeak&Spell風にする シミュレータープラグインでも誰か試しにチャレンジしてホシィ。 ビット落としてEQイジってエフェクターいろいろやっても 全然ピンとこないんだよなぁ。(´・ω・`)
791 :
名無しサンプリング@48kHz :04/05/14 21:25 ID:kAmR9elg
えーと、結局ボーランドのフリーのBCCで VSTを作ることはできるのでしょうか?。 できるんだったら、作ってみたいなあ。
792 :
名無しサンプリング@48kHz :04/05/15 00:36 ID:vIXtQJx/
>>791 DEV-C++でVSTSDKについてたサンプルのコンパイルまでできたyo
794 :
791 :04/05/15 02:06 ID:YfJgX77h
>>793 まじで?。
やった。
早速DEVC++試してみたよー。
でも、うまくいかないよー。
インクルードディレクトリにcommon ディレクトリ指定して、
サンプルのAGain.cpp AGain.hpp AGainMain.cpp
登録して。
てかんじでやってみたけど。だめだー。
795 :
791 :04/05/15 03:28 ID:YfJgX77h
で、でできたー!!! tp://www.u-he.com/vstsource/showone.php?id=32 を参考にしました。 さいこうにうれしい。ありがとう793
796 :
793 :04/05/15 04:19 ID:xCtu77ku
>>791 ソース変更する必要があるってのを書き忘れたんだが
うまくいったようでよかったよかった
797 :
791 :04/05/16 02:55 ID:3dD1V1bq
798 :
名無しサンプリング@48kHz :04/05/17 19:36 ID:5NNvvh7y
>>797 _、_
( く_,` ) n Good Job !
 ̄ ∽ \ ( E)
>>797 偽装ファイルうpするな。サーバーに迷惑かかるだろうが。
>>792 VST作るならフリーのVC++7.1でいいんじゃないか?
801 :
791 :04/05/18 21:45 ID:00rstOqq
最近フリーになった、VC toolkit でもサンプルの
コンパイル&リンクいけたー!
さきにおしえてくれよ。。。
>>799 たしかに。ごめんなさい。廊下にたってます。
VC toolkitのコンパイラって最適化オプション使えますか?
cl /?と入力すればオプション一覧が出てくるよ
>くそ :くそな感じになります おもしろすぎ
r――――――――――――――――― |Blazanは無視が一番! |Blazanにはレスを付けない。 |マターリ出来ないBlazan無視無視。 | ________________ | / | / | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | / |[今日の講義] V. .| Blazan対策について | . Λ Λ 。 。 Λ_Λ (, ,゚Д゚) / \ (´∀` ) / つ ̄ ̄ ̄ ̄ ̄ ⊂ ) ┌───┐ ┌───┐ │ | │ | _____________/\_______ Blazanは構って君、わざとアンチカキコを して気を引こうとします。連続でageる特徴があります。 Blazanに出会った場合はくれぐれも相手にしないように。 相手にすると執拗に攻撃を開始します。 ――――――――――――――――――――――
B l a z a n が a g e 荒 し コ テ や め な い の で 粘 着 続 け ま す ね ス マ ソ
CBitmap::CBitmap(char *filename) { ......... } という感じでBMP以外も読み込めるの作ったんだけどソースいりまっか?
BMP以外ってGIFとかJPEGとか?
とりあえずPNGも読めます。 あ、ごめんなさい、配布が面倒なのでソース自体はBMPのみです。 いらないですかね?簡単なんでココに直接書き込めますが。
CBitmap::CBitmap(char* imageFileName) :nbReference(1), width(0), height(0) { #if DEBUG gNbCBitmap++; #endif setTransparentColor(kTransparentCColor); if(strcmp(imageFileName, "") == 0)return; #if WINDOWS pMask = 0; pHandle = 0; char *imageExt = strrchr(imageFileName, '.'); if(imageExt++ && !stricmp(imageExt, "png")) pHandle = LoadPNGImage(imageFileName); if(!pHandle) pHandle = (HBITMAP)LoadImage(GetModuleHandle(NULL), imageFileName, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);
if(!pHandle) pHandle = (HBITMAP)LoadImage(GetModuleHandle(NULL), imageFileName, IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR | LR_LOADFROMFILE); BITMAP bm; if(pHandle && GetObject(pHandle, sizeof(bm), &bm)) { width = bm.bmWidth; height = bm.bmHeight; } #endif #if DEBUG gBitmapAllocation += height * width; #endif }
しまった!LoadPNGImage(imageFileName)周辺は無視してやってください。 保守ageときます。
で、リソースの解放はしなくていいの?
( ゚Д゚) ………
mac版は無いのねー。でも乙。
820 :
名無しサンプリング@48kHz :04/06/10 23:20 ID:IVaIwlcG
getParameterとかでindexというのがありますが、 この値はどこでどうやってきめるのでしょうか?
>>820 AudioEffectのコンストラクタ
AudioEffect (audioMasterCallback audioMaster, long numPrograms, long numParams);
に渡すnumParamsがパラメータの数になるから0〜numParams-1までがそのプラグインが使うindexになるね。
サンプルだと列挙型を使って
enum{
param1,
param2,
param3,
kNumParams
};
としている。
822 :
名無しサンプリング@48kHz :04/06/11 14:41 ID:z5NWIrlO
それはhppファイルの先頭に宣言したのでよかったのでしょうか? AGainのparameter関連のところをAdelayをみようみまねで書いているのですが、 パラメーターが1つ以上になりません。 しかもgetParameterDisplayを switch (index) { case kvol: dB2string (fGain, text); case kenv: Hz2string (fFreq, text); } としているのですが、GainのところにHzの値(441000.0)が表示されてしまいます。 どうしたらいいでしょうか。
たまにやる(w
826 :
名無しサンプリング@48kHz :04/06/11 22:44 ID:z5NWIrlO
ありがとうございます。 ちゃんとGainのとこが表示されるようになりました。
最近レス進んでるね 僕も書けるようになりたいなぁ
>>817 解放はプロセス終了時なのでプラグインの場合は解放しないと悲惨なことになる場合あり
>>828 ん?~CBitmap ();のタイミングで解放してなにか問題あるの?
831 :
kurt :04/06/12 23:06 ID:g1Z/VSnQ
Gainのとこはちゃんと00000と表示されるようになったのですが、 もうひとつのパラメータが表示されません。 パラメーターの数を代入する配列でもあるんでしょうか? enum{}のところ以外で・・・
>>831 enum周りとgetParameterDisplay()周りのソースこぴぺしてみれ。
833 :
kurt :04/06/13 16:15 ID:H6jqz13t
AGain.hppの最初に enum { kvol, kenv }; classに protected: float fGain; float fFreq; AGain.cppのgetParameterDisplayで switch (index) { case kvol: dB2string (fGain, text); break; case kenv: Hz2string (fFreq, text); break; } こんなかんじです。 ちなみにprocessのところは、ディスプレイに表示するテストをするためだけなので なにもしていません。
enum { kvol, kenv, kNumParams }; こう書き換えて試してみて。
835 :
834 :04/06/13 16:52 ID:rDNxRGde
あー、上の前にkNumParamsで検索してみて、kNumParamsが含まれてるenumがあったら、そこにkvolとkenvを付け加えてみる。 ただし両方とも、kNumParamsより前に挿入。 kNumParamsで検索してヒットがなかったら上の通り。 kNumParams定義してないとコンパイラ通らないと思うから、多分検索で引っかかると思うけど。
836 :
kurt :04/06/13 17:40 ID:H6jqz13t
ヒットしなかったので、enumにkNumParamsを追加しましたが、 かわりませんでした。 ほかに何か考えられるようなものはないでしょうか。
>>836 AudioEffectX()のコンストラクタの第三パラメータに
渡さんとな。AGainのソース見ると1にハードコードされとる。
がんがってくれ
>>837 おまいやさしいな。
>>836 マニュアルを嫁!
ここまで、馴れ合いわ削除とか言う標的になりかねんぞ。
というかkurtは、まずsageを使え! そして、2chなんかに来る前に本屋でC++の本でも嫁! もしくは、それ系のホームページでもミロ! どうせマタ質問すれば万事解決とでも思ってるのは基地外だぞ。
840 :
名無しサンプリング@48kHz :04/06/13 21:45 ID:H6jqz13t
反省しますた。 最後にひとつだけ質問させてください。 VC++を理解するにはどうしたらいいでしょうか? 独学でかれこれ1年になりますが、 どのファイルをどのファイルにインクルードするかとか、MFCの動作など、 基本的なことがまるでわかりません。 書籍やホームページをみても、知りたいことが、ほとんどかいていないことが 多いです。 VC++は独学では無理なんでしょうか?
ひさびさ真性厨を見た。
にぎわってますね。
>>840 > 書籍やホームページをみても、知りたいことが、ほとんどかいていないことが
> 多いです。
それはいちいち書かなくても分かることだからですよ。
もう少しプログラミングに慣れれば、どこを読めばいいか
どこを探せばいいかがわかってくるのでは?
プログラマにはプログラミング能力のほかに、
ドキュメントを読みこなす能力も必要なんですよ。
(ドキュメントの大半は英語なので、英文も読める
方が望ましい)
> VC++は独学では無理なんでしょうか?
可能です。少なくとも私は独学だし(w
がんがれ!
はじめまして。こんなスレがあったとは・・・ちょっと感動。
お前ら素敵だな。 俺もやってみたくなた。
漏れも独学だが、SDK落としたその日に作れたぞ。 GUIのことでここでちょっと質問したがそれ以外は 自力だ。 ガンガレ。
基本文法は独学でOK アルゴリズム関連は書籍を利用。 ネットワーク関連は書籍を利用。 SDKは読みまくって実際に書いてみる。 まぁ、ほぼ8割以上はSDKとか書籍とかを読みしかないんだけどね。
847 :
名無しサンプリング@48kHz :04/06/15 10:27 ID:R3N2EFqw
ありがとうございます。 独学の人結構多いんですね。 こころ強いです。 これから自力でがんばっていきます。
保守sage();
849 :
名無しサンプリング@48kHz :04/06/23 23:14 ID:2EgtEc0/
すげぇ下がってる。ほんとに保守age
>>816 デストラクタに解放するコードがすでに書いてあったと思うよ。
>>828 上に書いてある理由からXXXGUIEditorクラスが解放されるたびに
(GUIウィンドウを閉じるたびに)ちゃんと破棄されると思うよ。
851 :
816 :04/06/24 20:36 ID:gdpNCjW3
>>849 そのデストラクタが書いてないし、そもそも
ヘッダファイルすらないじゃん。
どうして分からないことをムリして書くのかねぇ。
>>850 これってこの価格でC++とかC#(これはよく知らん)とか付いてくるの?
買ってみようかなあ。手を出してみようかなあ。
VBAぐらいしか分からんが。
この手合いのって、作った作品配布したらだめなやつじゃないか? 使用許諾に指導目的で使う云々書いてある。自分だけで使うならかまわんだろうけどね。
855 :
849 :04/06/26 16:53 ID:ZX4o7clx
>>851 だからね、もともと書いてあるんだって。
VSTGUIに、どうして分からないことをムリして書くのかねぇ。
856 :
816 :04/06/27 23:06 ID:pBkFdFjX
>>855 はぁ? 面白いなキミ(w
もう一度ちゃんとスレ嫁。
>>809 以降な。
結局、今は誰もプラグイン作ってないんでしょうか。
俺は作ってません(反省
858 :
816 :04/06/28 16:49 ID:RVSVI8Nd
>>857 何を作りたいですか?
プラグイン作ってない俺に分かることなら、がんばってお答えします。
分からないことなら、素直に分かりませんと言います。
Distortionエフェクトを作ってみたのですが、 ギター弾けない俺にはゴミでした…onz
>>859 まずは公開キボンヌ
何もギターに使わなきゃいかんわけでもないし
人が少ないですね…
862 :
857 :04/06/30 21:40 ID:uXkHPR8k
>>858 いやーC++なんて全然わかんないからさ、どーやったらVSTiつくれるのかなぁって思ったんですよっと
863 :
816 :04/06/30 22:11 ID:PV2ISk4+
>>862 いきなりC++でVSTiを作るのは、正直言って難しいです。
最初はエフェクタがいーと思いますよー。
C++がわからない場合は、SynthEditで作るのが
手っ取りばやいですよ、マジで。
あー、今日は酔っ払ってすっかり気持ちいいし、
俺もですとーしょん作ってみよーかなー。眠くなんなかったらねー(w
漏れなんかもともとプログラマなんでC++なんて楽勝なんだけど、 それでもVST/VSTiはなかなかつくらんな。SynthEditかReaktor ばかり。結局楽しい部分しかやりたくないわけなんだな。
865 :
816 :04/07/01 11:53 ID:VHDUB3Ql
ですとーしょん作ってみたけど、
>>859 さんの
言ってることが理解できたような気がします。
とりあえずサンプル。
ttp://www.yonosuke.net/dtm/data/3718.mp3 最初がノーマルギター、次がFuzz、最後がオーバードライブです。
(オーバードライブ部分はちょっと音圧が高いので注意)
あとフォールドバックとビットクラッシャーも作ってみたけどイマイチ。
結局、アンプシミュみたいに終段にフィルタなりコンプなり
かまして、味付けしないとダメかもね。
まだGUIができてないけど、プラグインをアップできる
場所ってありましたっけ?
866 :
859 :04/07/01 17:27 ID:ff0xRbCr
こんにちは。てか漏れもうpしてみたいんですけどいいアプロダないですかねぇ…
868 :
859 :04/07/01 19:09 ID:ff0xRbCr
870 :
816 :04/07/02 10:58 ID:avns3iMO
>>868 うーん、wavelabからプラグインが見えませんでした。
どんな環境で試されてますか?
>>869 これいいですね、充分使えます。
ところで、左端のHigh limitってローパスフィルタですか?
それとも特定周波数だけスルーしてるのでしょうか?
やっぱSynthEditで実験して、良ければそのままVSTにするか
さらにC++でチューンするのが良さげ。
>>870 High Limitはディストーションのキモとなる閾値(スレッショルド)です。
この値と、OD-1もどきの部分が、ピークをリミットする値を決めてます。
872 :
869 :04/07/02 11:51 ID:4DooxC3Q
873 :
868 :04/07/02 13:01 ID:c07BV7/n
もしかしたら、ユニークIDを変えてないのが原因かも…onz SSW8、Sonar3+CONSOLE、MusicStudioでは動作しております。
てゆうかもまえら、ユニークIDは 毎回ちゃんとsteinに登録してる? それともてきとー?
875 :
816 :04/07/03 00:22 ID:DMAGT041
>>871 なるほど了解しました。解説ありがとうです。
>>873 >もしかしたら、ユニークIDを変えてないのが原因かも…onz
おそらくそれが原因かと。
>>874 もちろん登録。
保守ageにきたんですが以外にあがってますねw
BCB(BCC?でコンパイルできる(あたりまえだけど)と聞いたので
VC++Toolkit(とCBuilderX?)でコンパイルしてみましたが
ちゃんと動作しました。
あ、目を通したら既出ですね orz フリーのIDEもそろったってことでw
ReloだとVC++でDLLのビルドは向かなかったです。
>>854 がなくても善し。あったらなお善し。
(たしか
>>854 は税送料込み出3900円くらいで買えたと思う
小学生のプログラミング環境にはもってこいですw
(インストールが面倒だしMSDNはオンラインだけにっちゃうけどw
>>855 餅つけ。(*´Д`)萌え。
わかってる感じだから書かないけど、とりあえず餅つけw
>>856 餅つけ。(*´Д`)萌え。
CBitmapのオーバーロード・コンストラクタなので、VSTGUIのCBitmapに書き込んでくらはい。
ごめん、素でわかってくれるもんだとおもっとった orz=3
>>876 > 小学生のプログラミング環境にはもってこいです
小学生は対象外です。
> MSDNはオンラインだけにっちゃうけど
MSDNライブラリは付属してます。
878 :
名無しサンプリング@48kHz :04/07/04 16:38 ID:EC0ZIB0p
真性房達にスレが占拠され始めてる。 まず、868いちいち書き込むな。 そして、869あげんな。 さらに、875書き込んでる内容が知ったか杉。 夏なのに寒いよ863で真性房っぷりを発揮。 そして、876脊髄反射、糞コテ氏ね。 最後に、877日本語ぐらい読め。誤爆脊髄反射房氏ね。
879 :
名無しサンプリング@48kHz :04/07/04 16:42 ID:8Nn2b6ib
うるせーくそじじーーーーーーーーーーーーーーー>878
小学生がMFCとか.NETアプリをサクサク書いてたらある意味恐いな・・・
>>881 ノイズの周波数可変ってホワイト〜ピンクって意味合いでイイのかな?
Macなので試せなくて残念だが。
kusoシリーズの強化版
Nasty Sanchez(VSTi)とかBulumpkin(VSTi)とか期待してたのに(w
ディスコン?
884 :
881 :04/07/10 18:58 ID:GcrcJxnf
>>883 > ノイズの周波数可変ってホワイト〜ピンクって意味合いでイイのかな?
そんな感じでイイです
Kusoシリーズどうしよ。ディスコンじゃないつもり。
スラング意味わからんが、かなり強烈ぽいな
Nasty Sanchez AFの最中に○ェラさせてできた○ンコの口ひげ Bulumpkin 脱糞させながらの○ェラ TVBros参照。
>>881 おまいまじいいやしだ。だってsageてるもん。
質問なんですが process関数のsampleframesは 事前にどうやって調べるんでしょうか? わからないのでprocess中に newとかdeleteとか使っているのですが、 これだとオーバーヘッドがでかくて かなり気になってます。
>>887 sampleframesの長さのバッファが欲しいってこと?
sampleframesは環境やホストによって変わるので
前もって決まるという性質のものはないと思いますよ。
基本的には固定長のバッファを用意しておいて使いまわすしかないのでは。
offlineで処理するときなんかはsampleframesはどんだけ大きくてもいい訳だし。
どうしてもsampleframesぴったりのバッファが欲しいなら
class Plug{
public:
Plug(/*---*/) :buffer(NULL){}
~Plug(){
if(buffer){delete [] buffer;}
}
void procces(float* inputs, float* outputs, long sampleframes){
static long buffer_length;
if(buffer_length != sampleframes){
if(buffer){delete [] buffer;}
buffer = new float[sampleframes];
buffer_length = sampleframes;
}
/*--****--*/
}
private:
float *buffer;
};
みたいな感じでどうでしょうか?
その場合、最大長のバッファの長さはどうなるんでしょうか? 固定長のバッファを用意できればいいんですが 最大長がわからないので固定長に出来ないのです。
>>889 sampleframesを、処理に必要な分確保したバッファの長さで割って
何度かに分けて処理するしかないと思う。
sampleframesはASIOドライバ使ってる場合はそのレイテンシの値になってました。
だから、まぁそのくらいの長さのバッファを用意しておいてそれ以上長くなったら
何度かに分けて処理っていうのが一番良いのかも。
getBlockSize()利用することとは違うの?
getBlockSizeで得られる値はプロセスで呼ばれる最大のsampleFramesらしい。 ただ実行中にこれよりも小さいsampleFramesが使われる可能性はあるみたいなことがドキュメントに書いてアターヨ。
固定長バッファで十分まかなえる量を取得して
>>890 さんの言うように分割処理するか
それとも、動的に取得する以外ないんですかね(涙
ちなみに、process内では一サンプルあたり複数の処理を
行っているので、
どうしても一時的なバッファが必要になっているのです。
加えて、パフォーマンス自体は一時バッファがない方が断然劣ります。
この状態でボトルネックのひとつにnew/deleteがあがってしまったので
これをどうにか処理できないかと悩んでいたわけです。
getBlockSize()は、やはり動的に取得しか出来ないので
ここでは使えないものでした。
お答えいただいてありがとうございました。
>>893 そういう事情なら分割処理しかないと思うよ。
単純にLRを逆にして出力するだけのプラグインって、すぐ作れるもんですか? パラメータとかUIとか一切ナシで。
SynthEditを使って一瞬で作れますね IN1→OUT2 IN2→OUT1 これだけのコンテナ作ってSaveAsVST... でもこんな返事は誰も求めてないか
>>895 普通に作ってもすぐ作れるよ。VSTSDKのサンプルのagainを見るべし。
898 :
895 :04/07/20 15:47 ID:Nx63IXUL
>>896 必要最低限のプログラムにできたらな、と思ったので、SynthEditはちょっと違う感じですね。
>>897 ふむふむ、実は当方プログラミングの知識ほぼ皆無なんですけど(htmlとかcssならなんとか....)
VSTSDKのpdf読んだらなんとなく読解できそうでした。
DAWの機能を補助する感じのシンプルなプラグインとか自分で作れたらいいなー、と思うので
ちょっくら勉強してやってみます。
899 :
名無しサンプリング@48kHz :04/07/22 16:51 ID:nhYElFsd
SDKのPDFとかどこにあるの?
901 :
名無しサンプリング@48kHz :04/07/23 01:49 ID:p4LZvKf0
あった。 これでなんとかわかりそう
902 :
名無しサンプリング@48kHz :04/07/23 19:19 ID:p4LZvKf0
SDK2.3のADelayのVolumeって機能してるんでしょうか? volume最低にしても音なるし、 amountはちゃんとしてるのに・・・ ソースをみてもfOutがprocess()に使われてないような気がするのですが
enum { kDelay = 0, kFeedBack, kOut, kNumParams }; こうなってるから疑問におもたのかしら?
905 :
名無しサンプリング@48kHz :04/07/23 22:31 ID:p4LZvKf0
そうそう、 そのkOutのとこ
906 :
名無しサンプリング@48kHz :04/07/24 02:31 ID:BT60w5VN
です。
XML! XML!
VSTはC++でかかれてますが、 例外処理とかを使った形跡がないですよねぇ。 いろんな人のソースを読んでも 例外処理のしの字も見当たらないぐらい 例外処理がない気がするんですが、 やっぱり原因は例外処理のオーバーヘッドですか?
例外処理をするような場面があんまり無いんじゃない? たとえば例外投げるとしたら何がある?
orz 2chでマジレスは禁止か・・・
すでに
>>908 からしてネタだろう(w
ネタでなければ初心者かな。
いずれにしても、必要なら例外処理すればOK。
ほんとにどうでもいいことなんだけど、
>>908 の例外処理の・・・なんでれじゃなくてしなんだろ。
カタカナのレの下手文字風と解釈したが深読みしすぎか?
処理のしなんじゃないのとマジレスしてみる
916 :
名無しサンプリング@48kHz :04/08/02 12:49 ID:RvFgdL8n
物理音源型のドラムシーケンサ作りたいんだけどSyntheditで作れる?
>>916 SynthEditに限らず、ドラムの物理モデル化はとても難しいので、
そもそも、その辺の理論的な部分を押さえているなら、努力次第でできなくはないだろう。
たぶんVC++で作ってもうまくいかないと思うけど。
918 :
名無しサンプリング@48kHz :04/08/02 13:49 ID:O8EpRf/a
ドラムは、音サンプルの蓄積が膨大にあるので、物理音源を開発しても 需要はほとんど見込めない気はするね。
syntheditでやろうっていうのは無謀な希ガス。 物理モデルをシミュレーションするコード書かないと無理でしょ。 モデル化の方法によっては面白い音がでるかも。 応援しますよ。がんがって。
そういやドラムのモデリングってV-Drums以外でまともにできたものってあるの?
実は物理(ry
物理サンプリング
実験としては面白そうだけど > 物理モデリング サンプリングした音源を後加工する方が 拡張性高いし使いまわしが利くから、現実的な ソリューションじゃないでしょ。
ACIDとかMPEXのアルゴリズムの資料ってあるの?
>>925 ACIDのは、ちょっと考えて、実験すればすぐグラニュラーだってわかるよ。
MPEXは資料がある。MPEX Stretchなんかで検索。
MPEXってProsoniqが売ってる技術だけど、資料なんて出回ってるの???
>>928 設定用のパラメータにどんなものがあるのか、なんかを集めていくと、全体像が見えてくる。
それから、関係論文や、関係特許の資料なんかも公開されてる。
もちろん、やり方が公開されてるからといって、勝手に使っちゃいけないんだけど。
あくまで学習用。
930 :
925 :04/08/11 13:41 ID:lzATq4HX
レスありがとうございます ACIDはグラニュラーでしたか、波形ブツ切りにしていくやつですね FFTで成分分解してその長さを変えていったりする(ループ?)ものだと思ってました MPEXももうちょっと調べて勉強してみます
931 :
名無しサンプリング@48kHz :04/08/20 11:30 ID:lxet+SDs
ホッシュage もうちょっとで2周年
このスレ下がってるとさみしいぞ 俺は作ってるからな
>>932 IDがGood Job!! だな。
漏れも分までがんがってくれ。
937 :
名無しサンプリング@48kHz :04/08/30 21:53 ID:J/WcAhTu
SynthEditでVASynth作りたいんですけどどうゆう風に組めば出来ますか?
>>937 ひとことで言うとMIDItoCV→OSC→LPF→VCA→SoundOut。
マニュアルに図解入りで書いてある。嫁。
939 :
名無しサンプリング@48kHz :04/08/30 22:46 ID:J/WcAhTu
>>939 マニュアル読めって! 作り方が書いてあるから。
OSC:Waveform→Oscillator
LPF(Low Pass Filter)→Filters→SV FilterのLow Pass
941 :
名無しサンプリング@48kHz :04/08/30 22:59 ID:J/WcAhTu
捕手
>>934 なにげに面白いけど、更新止まっちゃった?
944 :
934 :04/09/25 17:59:21 ID:ljlGjD8w
すまんね。なかなかネタも気力が続かなくてね。 このあたりの事を書いて欲しいとかリクエストあるですか?
>>944 1から10まで全部書いて!
ついでに
1から10まで貴方の事知りたいワ(はぁと
946 :
934 :04/09/26 11:29:19 ID:Dd06aTqh
あうあう。何書けば・・・
947 :
943 :04/09/26 17:27:50 ID:y1coIzZ4
>>944 MIDI処理とか書いてくれると嬉しいです。
>>944 ついでに恋人の有無と経験人数と好きな体位もおねがいネ(はぁと
949 :
944 :04/09/27 01:58:07 ID:d13ga4pq
944氏に限らず聞きたいのだが、皆どうやってエイリアスノイズ対策してるの? フィルタ噛ますとしても、数倍のサンプリング周波数で演算しないといけないし、漏れが出るだろうし。
951 :
943 :04/09/27 06:18:29 ID:dKPU0XGm
>>949 さんくす、図解がよかったです。
>>950 対策1:オーバーサンプリングしてローパスフィルタをかます。
欠点:処理が重くなる
対策2:blitを使う。
欠点:音が軽くなる
対策3:気にしない。ベース専用シンセなら最強のソリューション。
欠点:高音域が使えない
こんな感じ(w
952 :
950 :04/09/27 07:44:30 ID:vX2RZnnK
>>951 矢張りフィルターでやるにはオーヴァーサンプリングしなきゃ駄目かぁ。
何か妙策が有りやと思ったけど。
それに、フィルターだとカットオフ周波数から離れても多少影響が出るから、出来れば使いたくないな。
BLIT方式は浅学にして知らず、出来れば概要だけでもご教授頂ければ。
ざくっとググッたけど、それっぽいの当たらない。
んで、一応漏れが考えてる(た)駄策も披露しておくと―――
(1)多段ウェーブテーブル
ウェーブテーブルを基音だけの物から、倍音を一音ずつ混ぜていったものをそれぞれ用意する。
音を発声する時は、周波数から何倍音まで含ませて良いかを計算して、好ましいテーブルを使う。
欠点:メモリを湯水の様に使う
(2)数式演算方式
気合で基本的な波形の式を変形して、倍音数をパラメーターに含む数学的函数をこさえる。
欠点:未だ式が導けてない
953 :
943 :04/09/27 16:50:07 ID:dKPU0XGm
PG初心者にもわかるようにお願いします
>>955 PGとか言う前にもっと原理的なものだと思いますよ。
ちょっとアブストラクトだけ。
ここで紹介する技術は古くからのアナログシンセサイザにおける波形、
たとえばパルス波やノコギリ波のような波形を、デジタルシンセサイザにおいて
エイリアスを生じさせることなく生成するためのものである。
その技術は大まかに言うと帯域を制限された原始的な波形の生成のことであり、
波形テーブルを使ったものと同様に有用なものである。
帯域制限されたパルス波、三角波は、位相の異なる帯域制限されたインパルス波の
差分を積分することから得られる。
帯域制限されたインパルス波とは有限な長さに切られた(?)
sinc関数(sin(x)/xみたいな奴)の重ね合わせとして生成される。
また帯域制限されたより一般的な波形の生成方法についても述べている。
音としてのクオリティ、計算量の節約、
コントロールの容易さの点からこの方法を評価している。
誤訳、意訳等あると思いますが、こんな感じでしょうか?
識者の突っ込みよろしくおながいします。
FFTを使ったプラグインを作っているのですけど、blockSizeに2^n以外が 来る可能性ってあるんでしょうか。 当方の環境では2^n以外が来る事は無いのですが、doc見たら5512とかになってる例が出てたので 気になったのですが、どうなんでしょう。 あと、blockSizeより小さいsampleFramesが来る事も私の所じゃ無いのですが、 これもやはり意識しないと駄目なのでしょうか。
>>957 もちろんあるよ。
ブロックサイズピッタリでデータが終わる可能性の方が低いでしょ。
>当方の環境では2^n以外が来る事は無いのですが、doc見たら5512とかになってる例が出てたので
そのヘンはDAWによってマチマチなんだよねー(w
だからsampleFramesを調べて処理しないと、ドツボにはまるよ。
>>957 sampleFramesは環境やホストに依存するので
プラグイン側としてはどんなsampleFramesが渡されても大丈夫なように
作らないとまずいと思うよ。
ドキュメントによるとblockSizeはsampleFramesの最大値を指定できる、みたい。
なのでblockSizeよりも大きいsampleFramesが渡されるようなホストはホストに問題有り
ということで良いのでは?
>>959 >blockSizeよりも大きいsampleFramesが渡されるようなホスト
もちろん、そんなファンキーなDAWはないから大丈夫。
>>957 が心配しているのは、blockSizeより小さいデータが来たときのことでしょ。
blockSizeより小さいsampleFramesが来たら、残りを処理に都合のいいデータで
埋めるなりなんなりの対処が必要。
961 :
957 :04/10/07 12:37:17 ID:l9kurP4H
sampleFrames、blockSizeより小さくても大丈夫なように出来たけど、 ぴったりじゃないと効率は落ちるんで、例えばblockSizeは2048と来てて、 sampleFramesはずっと512とかだと困っちゃうのです。それが心配。 そんな事もあり得るのですか?
VSTの規格で規定されていない以上それはホスト次第 なのだから、汎用で使えるプラグインにしたいのなら、 どう送られても動くような構造になってないとまずいん じゃないかなぁ まとまった数のサンプルが必要な処理をする場合は、 普通はprocessに渡されたブロックを直接処理するんじゃ なくて、一段自前で必要量バッファする方が良いと思うが。 もちろん、自分が自分のために作っているプラグインで あって、自分が使ってるDAWで動けばよい。他のDAW では動作保証はせんよ。というスタンスを明確にする という事でも良いし。
963 :
957 :04/10/07 21:48:25 ID:l9kurP4H
「あり得る」わけですね。がんばってみます。
>>957 FL Studio 試してみ。即死出来るよ。
process/processReplacingが呼ばれる度にBuffer Sizeが違ってて、2^nどころか奇数も
おかまい無し、しかも、値が結構小さい。
なんで、FFT系のプラグインではバッファリングは必須だよ。その場合、Initial Delayもしっかり
報告してあげたほうがいいかもネ。
965 :
957 :04/10/18 18:57:56 ID:79bVGMFO
DSP-Quattroのデモを試してみたら近い状況が体験できました。あとPeakでも。 InitialDelayに対応したホストを持っていないので、できればゼロレイテンシーで行けたらと思ったのでした。 Altivecの恩恵を受けたいので、とりあえずMacのみで行こうと思ってます。 Winには同じことをするフリーのやつがありますし。
ホシュ
VC toolkitをインストールして、vstsdkにあるサンプルから dllを作ろうしてるんですが、うまくいきません。 プログラミングの心得はありますが、WindowsやVC固有の事が分からないです。 昨日からいろいろ試しているのですが、なにかヒントでもないでしょうか? Makefileでもあれば、必要な手順がわかると思うのですが。
ちなみに、コンパイルとリンクはしました。 でも、これだけではダメみたいで、なにか他の事をしないといけないのかなと思っています。
なんか出来たっぽい。 何が悪かったんだろう。。。
【VST】VSTプラグインスレ 7.0
http://pc5.2ch.net/test/read.cgi/dtm/1083765740/l50 185@sssさんへ、上のスレから続きレス。
>本当だ。なんかそういうことになってますね。
>やっぱり英語ページ作った方がいいのかな。
手っ取り早い方法は、Mac版も185@sssさんのページに
置いてもらって、私のページから185さんのプラグインを
消せばいいかなと思いますが、いかがですか?
Mac版に関する苦情は、私が引き受けますので(笑)
>海外は良質なシェアウェアが多いという印象が。
>プロのレベルでフリーウェアをやる人って(digitalfishphonesみたいな)
>まぁほとんどいないですよね。
つくづく思うのは、海外の開発層の厚さ。ひいて言えば
クリエイターの層の厚さに比例しているのかもしれません。
そういえば近頃、vst pluginのメーリングリストに新しい開発者が
現れたようで、やり取りが活発になっています。
これからVSTiを作ろうという人は、眺めているだけでも参考になるかも。
>>972 >手っ取り早い方法は、Mac版も185@sssさんのページに
>置いてもらって、私のページから185さんのプラグインを
>消せばいいかなと思いますが、いかがですか?
了解しました。今日中にもそのようにしておきます。
あ、あとこれは宣伝になりますがC3MultiBandCompのOSX版(VST/AU)出ました。
ttp://www.apulsoft.ch/freeports/index.php apulSoftのAdrianさんというスイスの人が移植してくれました。
随分時間経ってますがAU版リクエストしてた人、お待たせしました。
>>973 osxaudio.comのフォーラムでリクエストが有った時に、
Adrianが「メール送ったけど返事が来ねー」ってこぼしてたよ。
>>973 では、そのようにお願いします。
ただ、いつの間にかgeocityのシステムが変更されてFTPサーバーに
入れなくなってしまいましたので、こちらの方は削除できないかもです。トホホ
OSX版もできたんですね。 > C3
>>975 OS9版移転しておきました。
>>974 割とすぐ返事かいたんですけどね。
なんでもロジックのサイドチェインコンプがバギーだとかで
サイドチェインコンプレッサーも移植させてくれって言ってました。
色々移植するものがあるらしいのでだいぶ先にはなるだろうけど
多分やってくれると思います。
プログラミングの事はさっぱりわかんねーんだが、一つ質問。 VSTってiもだがなんであんなに字が小っこいのばっかなんだろ? VSTの仕様の問題かもしれんが例えば、ズーム機能って付けれられんの? 画像ソフトとかPDFとかエクセルの印刷画面なんかでも昔からできるし、 VSTでもできると思うんだが・・・・
>>977 出来ない事も無いけど、んな文字小さいかね?
俺は全然気にならないんだが。
Winならそういうソフトあるからそれつかえばええやん
981 :
977 :04/11/12 15:14:17 ID:YMe49onX
1280x1024つー解像度なんだが、KONTAKTとか辛いよ。 magnify ウホ!良いツール。ありがと。俺がWinて良くわかったな。
>>981 KONTAKT読めるぞ。
ディスプレイ腐ってないか? あるいは老眼
読めないことは無いけどVST全般デザインに凝りすぎて必要以上に文字小さくしすぎだとは思う
>982 いや、読めない事も無いけど辛い。ド近眼だけど眼鏡時1.2。 >983 だよねぇ。
Synth1は拡大機能が付いてるね 見た目に拘るだけじゃなくて ユーザーインタフェースに対する配慮も大切だよなぁ・・・自戒も込めて