- 1 名前:デフォルトの名無しさん [2009/01/11(日) 13:43:21 ]
- 音のプログラミング処理について語りましょう
各エフェクタの組み合わせとか、 プログラミング外の話題はDTM板の方がいいよ サウンドプログラミング4 pc11.2ch.net/test/read.cgi/tech/1185340076/ サウンドプログラミング3 pc11.2ch.net/test/read.cgi/tech/1145573675/ サウンドプログラミング2 pc8.2ch.net/test/read.cgi/tech/1091054082/ サウンドプログラミング pc5.2ch.net/tech/kako/996/996171508.html
- 59 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 11:32:25 ]
- リバーブと風呂場は残響というか壁の反響音だよな
- 60 名前:55 [2009/01/26(月) 11:54:09 ]
- だから、教会やコンクリートの部屋や洞窟の複雑な反射音を小さな機械で再現しようとしたのがリバーブなんだよ、ばか。
- 61 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 12:08:53 ]
- ディレイは純粋に遅らせるだけ ドライとの合成は別問題
リバーブは残響 リバーブの実装方法の中にはディレイを用いるものもある
- 62 名前:55 [2009/01/26(月) 12:09:42 ]
- だから、ディレイ=エコー=やまびこのプログラムは簡単だと思う。
パラメーターは、原音にたいし、何秒後に何回返すか、音質をどう変化させていくか、音量をどう変化させていくか、 ぐらいしかないと思う。 リバーブは、原音にたいし、0.01秒後ぐらいから反射が始まって、全体的にワオ〜ンという音を作らなければならないから難しいと思う。俺は全然わからないw
- 63 名前:55 [2009/01/26(月) 12:24:27 ]
- 仮にリバーブが出来たとしても、リバーブをかけた時に、聞く人が心地よくなければダメだからむずかしい。
リバーブの製品でも「これ風呂場リバーブじゃん」ってバカにされるからね。
- 64 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 13:17:53 ]
- スプリングエコーって言うのあるじゃん。
あれは山びこじゃなくて、風呂系の響きだよな。
- 65 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 18:57:13 ]
- 風呂場で聞けばいいじゃないのもう
- 66 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 01:24:59 ]
- おまいらちょっとはググったらいんでないか
エコーはフィードバックディレイだ リバーブはディレイタイム(レベルも?)のばらばらな 無数のディレイを加算して再現したりしなかったり いろんな方法があるみたい >>64 スプリングリバーブは、昔アナログのころ バネのある空間に音を飛ばして戻ってきた 音をリバーブとして(ry
- 67 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 17:16:01 ]
- バネのある空間って何だ
- 68 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 23:30:42 ]
- gomente.blog.so-net.ne.jp/2007-10-08
- 69 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 11:49:27 ]
- 等ラウドネス曲線を扱ったプログラミングがしたいのですが、
調べた限りグラフばかりで、グラフから読み取るのは精度的にも問題ありそうなので、 周波数毎のゲインの数値データが欲しかったりします。 1) Web等で数値データとして配布されていますか? 2) もしなければ下記の仕様書の購入を検討するのですが、 そもそも仕様書自体には数値データは含まれているのでしょうか? ISO226:2003 www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=34222
- 70 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:58:53 ]
- >>69
でかい本屋で立ち読みできるからいってみたら?
- 71 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 21:20:01 ]
- >>71
なるほど、その手が。 ありがとうございます。早速行ってみます。
- 72 名前:デフォルトの名無しさん [2009/02/06(金) 15:52:38 ]
- あげ
- 73 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:11:17 ]
- >>72
そんなさがってた?
- 74 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:06:58 ]
- うん、もう海底まじかだったよ
- 75 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:54:44 ]
- >>6
それはドゥレイだろ!
- 76 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 21:47:30 ]
- >>75
超遅レス乙
- 77 名前:デフォルトの名無しさん [2009/02/13(金) 12:54:22 ]
- 再生速度の変更ってどうやればいいですか?
2 3 4 5ってデータがあったら 2 2 3 3 4 4 5 5にしたらいいんですか?これで再生速度50%?
- 78 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 17:46:22 ]
- >>77
やってみるといいよ
- 79 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 21:19:47 ]
- >>77
こんなん 23456789 ←6〜9をフェードアウト 23456789←2〜5をフェードイン
- 80 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:21:02 ]
- 波形はそのままでサンプリングレートを下げるだけ
- 81 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 10:09:26 ]
- それだと音程も下がるよね
- 82 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 13:11:10 ]
- 補完すればいいんじゃね
- 83 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 00:00:50 ]
- >>77
ttp://toragi.cqpub.co.jp/Portals/0/backnumber/2009/01/p202.pdf
- 84 名前:デフォルトの名無しさん [2009/02/17(火) 03:00:39 ]
- すみません質問ですが、Mpeg-4の規格のドキュメントってどこかにないでしょうか。
mp4の音と映像を分離したいと思っているのですが。
- 85 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 07:44:34 ]
- ttp://www.apple.com/jp/quicktime/technologies/mpeg4/
- 86 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:55:52 ]
- mp4のdemuxくらいなら俺だったらmp4boxのソースを参照しちゃうな
ライセンスはLGPLになるが
- 87 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 23:08:07 ]
- >>83
おー、それ買ってみた 今度よもと
- 88 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 12:03:38 ]
- ImageMagickの音版みたいなツール群ってありませんか?
- 89 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 14:55:07 ]
- 具体的に、何ができることを期待している?
- 90 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 15:16:16 ]
- >>89
ノーマライズしたり無音部分を取り除いたり 簡単な帯域通過フィルタができたりするコマンドラインツールです
- 91 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 16:45:41 ]
- >>90
つ sox
- 92 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 18:43:41 ]
- >>91
まさにこんなやつです! さんくす
- 93 名前:デフォルトの名無しさん [2009/03/08(日) 22:10:08 ]
- winXP, VC++2005 でサウンド入出力プログラムを作っています.
SDK,低レベルAPIを使っています. 入力,出力共にマルチバッファリングを行っているのですが, 入力と再生の間に,バッファ数に従う遅延が生じてしまいます. 体感では,(1バッファに録音する秒数 * 用意したバッファ数)秒 の遅延が生じていると思われます. リアルタイムに近い動作を実現したいため, 1バッファに録音する秒数(RecSEC)を短くしています. 現在の設定では RecSEC = 0.005 [sec/buffer] です. バッファ数が少ないと音声がブツブツと途切れてしまいますが, バッファ数を増やす事で解決しました. これで遅延量が少ない動作が実現できたと思っていたのですが, RecSEC = 0.1 として実行してみたところ,約0.1[sec]の遅延を期待していたのですが 約(0.1*バッファ数)[sec] という大きな遅延となってしまいました. ソースコードをアップしましたので,解決方法をご教授願います. waveInStart の実行位置を変えてみる等色々とやってみましたが よくわかりませんでした. pass: sagehoge ttp://www2.uploda.org/uporg2074476.txt.html アルゴリズムによる遅延を解消したいです. よろしくお願いします.
- 94 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 22:57:41 ]
- >>93
遅延云々以前に入力と出力を同期させてないように見える バッファ単位の入力完了イベントでたった今読み取ったバッファを 出力にまわす、という処理をしなくてはならないのに、 入力と出力を同時に走らせてタイミングは運にまかせてるから 録音よりも再生が先行してたまたまバッファまるまる1周分の遅れ が生じているのでは waveXXXは使ったことないので推測でしかないが
- 95 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 10:37:27 ]
- InバッファとOutバッファを共有したいのは分かるが
別々に用意してコピーする方がいいかもしらん
- 96 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 15:32:05 ]
- 別に分けた所で割り込み間隔が短いと負荷時にあっさり逆転する。
まー、デバイスによるのかもしんないけど、 waveIn/waveOut系は互いに同期取ってるわけでも無いし保証も無かったと思うから 一番短い理論上可能な「1バッファ分のレイテンシ」すら難しいと思うよ。
- 97 名前: ◆0uxK91AxII mailto:sage [2009/03/09(月) 15:47:17 ]
- >>93
頭が悪すぎてハナシにならない。
- 98 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 15:56:28 ]
- コテハンでいきなり罵倒か。NG対象にしてくれといわんばかりだな
- 99 名前:デフォルトの名無しさん mailto:sage [2009/03/09(月) 19:07:47 ]
- 基地外参上ってアピールしてるんだろ
- 100 名前:93 mailto:sage [2009/03/09(月) 22:03:47 ]
- >>94
私自信 wave*** を使い始めたばかりなので (それが免罪符だとは考えていませんが) よく分かりません.検討致します. >>95 ありがとうございます. それは何故でしょうか? >>96 「1バッファ分」が理想的ですが, 用意したバッファ分のレイテンシとなる事が避けられたら満足です. >>97 解決策が分かるのですね. お暇な時にアドバイスをお願いします.
- 101 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 09:12:54 ]
- WinXPで音楽のテンポを変更する処理を実装したいです。
音楽が入ったWAVファイルの音程を変えずにテンポを変えたいです。 普通はどのように実装するものでしょうか? WAVEFORMATEX のサンプリングレートを変更するとテンポは変わりますが音程も変わってしまいます。
- 102 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 09:29:10 ]
- タイムストレッチとかそのへんのキーワードでぐぐってみれば
- 103 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 10:02:28 ]
- 音程を変えずにテンポ変えるのって難しいよね
- 104 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 10:19:24 ]
- 単純に考えればテンポを下げるときは波形データを間引きし
テンポを上げるときは波形データを2倍した後間引きするとか 音質は保証の限りではないが
- 105 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 10:19:28 ]
- floor13.sakura.ne.jp/book03/book03.html
nis-ei.eng.hokudai.ac.jp/~aoki/laboratory04.html
- 106 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 11:07:13 ]
- スレ毎に同じ質問が繰り返されてる気がするw
テンプレ化か、FAQとサンプルソースのwikiとかあった方がいいのかねぇ
- 107 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:11:15 ]
- テンプレが増えてきたら、wikiあると便利だろうね
- 108 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:30:21 ]
- スレ毎どころかスレ内でも繰り返してるぞ
>>101 は >>77-83 と同じだろ
- 109 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:36:56 ]
- だな。ろくに知りもしないのに見当違いの回答しちゃう人が混ざってる点も同じ
- 110 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 16:13:23 ]
- じゃ正しいソースください
- 111 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 21:11:14 ]
- >>101
タイムストレッチはここの説明が分かりやすいかもな。 実装したことないけどw作ったらUPよろw 音声再生速度変換 : もっとゆっくりしゃべって! blogs.msdn.com/windows_multimedia_jp/archive/2009/03/04/9458418.aspx
- 112 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 21:21:39 ]
- >>110
つ105
- 113 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 23:43:39 ]
- >>105って
200Hzの音を2倍速にするとき 10msに一度30万ステップの自己相関するん? リアルタイムだと厳しそうね
- 114 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 21:04:04 ]
- ???
- 115 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 22:19:07 ]
- >>113
そうしないと元の音との互換性が低くなるだろ
- 116 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 02:24:19 ]
- >>113
ディレイっぽく聞こえるのを低減させるために オーバーラップさせる時間を周期性としてる 周期性を求めるのに自己相関使ってるのは FFTに比べ低音を考慮したときの精度がいいからとか 実装が楽だからとかじゃね
- 117 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 01:30:58 ]
- >>101
それって結構難しいのよ 論文読むのがいいかなぁ…
- 118 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 07:28:37 ]
- ttp://nis-ei.eng.hokudai.ac.jp/~aoki/laboratory04.html
7.実験6:再生速度の制御 ↑で十分じゃん
- 119 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 18:55:07 ]
- 聴いた感じでは十分とは言いがたい
- 120 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 19:06:41 ]
- 単音ならまだしも
音楽となるとMIDIのようなソースレベルでテンポを変えないと無理だろ
- 121 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 19:11:06 ]
- そこをなんとかするのがサウンドプログラミング
- 122 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 19:19:35 ]
- 適当な区間ごとに離散フーリエ変換で周波数解析して
それを合成すればなんとかなるかもしらん
- 123 名前:デフォルトの名無しさん mailto:sage [2009/03/16(月) 22:40:16 ]
- >>122
それはむずかしい un4seenってとこのライブラリ たしかオープンソースの再生速度変更が けっこう優秀。 WMPより優秀と思う
- 124 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 13:20:45 ]
- サウンドプログラマーな先輩方にお聞きしたい。
WaveTone(ttp://www.vector.co.jp/soft/win95/art/se421780.html) ↑このソフトはどういった変換でスペクトル算出しているのか見当つきますでしょうか。 当方、FFTで似たようなプログラムを組んでみたのですが、低音域の周波数分解能があまりに悪く、 実用とはほど遠い結果になりましたので、先輩方のお知恵をお貸し頂きたいです。 何卒よろしくお願い申し上げます。
- 125 名前:デフォルトの名無しさん mailto:sage [2009/03/20(金) 14:42:06 ]
- FFTのポイント数を増やすのはダメ?
ゼロ詰めしたりフレーム長を増やしたりしてね.
- 126 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 12:18:51 ]
- >>124
・FFT結果から山を見つけて頂点を補完 ・各音階に属する周波数成分で平均化(画像縮小アルゴリズムの面積平均法みたいな感じ?) サイトの画像見る限りでは低音の精度は粗いからFFT後になんか処理してると思われ
- 127 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 00:42:11 ]
- ローパスフィルタで分けてから低音域だけ取り出すとか
- 128 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 00:26:38 ]
- >>123
みつからないけどどこ?
- 129 名前:デフォルトの名無しさん [2009/03/27(金) 05:51:08 ]
- すみませんタイム(ピッチ)シフトを実装したいのですが、
質問させてください。 速度とともにピッチが変更されてもかまわないのですが、 たとえば98%遅くするなど、単純な整数比ではない場合はどう実装すればよいのでしょうか。 アップサンプリング/ダウンサンプリングの手法ではこれは実現できないのでしょうか? 80%〜120%の間で、速度を変更したいです。 よろしくお願いします。
- 130 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 07:37:39 ]
- >>128
ttp://www.un4seen.com/ ttp://www12.plala.or.jp/mojo/Delphi/delphi6-Z.html タイムストレッチはたしかbass_fx >>129 >>118でも見れ 98%の速度にするには、100×nサンプル再生した後 2×nサンプル戻った位置から再生する
- 131 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:56:11 ]
- ピッチも変わっていいならTimidityのソースを見てみたら?
- 132 名前:デフォルトの名無しさん mailto:sage [2009/03/28(土) 21:46:56 ]
- ほんとは間引く前にローパスフィルタだっけ?
あれかけないとノイズがでることがある
- 133 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 23:28:05 ]
- いらない
- 134 名前:デフォルトの名無しさん mailto:sage [2009/04/08(水) 02:00:47 ]
- FIRフィルタをそのまま実装するのと、
同じ係数で短時間FFTしてオーバーラップするのとは 同じ事でしょうか? 異なる場合は、どのような点が異なるのでしょうか?
- 135 名前:デフォルトの名無しさん [2009/04/08(水) 18:02:31 ]
- >>134
infoshako.sk.tsukuba.ac.jp/InfoRes/jdoc/MATLAB5/jhelp/toolbox/signal/fftfilt.html
- 136 名前:デフォルトの名無しさん mailto:sage [2009/04/09(木) 02:53:22 ]
- >>135
ありがとうございますー
- 137 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:57:20 ]
- VSTでイコライザを作ってます。
RBJ Audio-EQ-Cookbook見ながらピーキングフィルタを使ってシングルバンドのEQらしきものは実装できました。 これをLOWとHIGHの2バンドにしようとしてるのですがうまくいきません。 この場合、どんなふうにコードを書けばいいのでしょうか?
- 138 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:30:12 ]
- ピーキング2つって意味ならIIRフィルタ2つ作ってに直列に通す
トンコロ的な、2~3バンドで全体を調整できるようなものにしたいなら シェルビングタイプ2つにして直列に通す
- 139 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 22:35:18 ]
- >>138
ありがとうございます。 ピーキング2つを並べてLOW,HIGHの順でやってるんですが、 LOWの効きがシングルのときよりかなり弱く(効いてない?)なってしまうんです。 「直列」っていうのをちゃんとプログラミングできてないんですかね・・・
- 140 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 13:53:01 ]
- ASIO対応の録音再生ソフトって、素人では作れないですか?
- 141 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 14:02:52 ]
- そんなことないでしょ、どうしてそう思った?
- 142 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 23:30:39 ]
- 商用ソフトしか存在しないから。
なんか、ASIOSDKがあるらしいので、入手できた。
- 143 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 23:44:55 ]
- どんだけ無知だよ。。。
- 144 名前:129 [2009/04/25(土) 17:54:51 ]
- >>130
亀ですみませんが、ありがとうございます。 100*nサンプルを再生バッファに入力した後、2*nサンプルもどってバッファを入力する処理を実装してみたのですが、 再生時にノイズが乗ってしまいました。 波形の接続部分がきれいに合わないためだと思うんですが、 これにローパスフィルタをかければノイズは消えるものなのでしょうか。 それとも僕の方法がまちがっていますか? こわれたテーププレーヤーのような効果をデジタルで実装するのに他に何か有効な方法はないでしょうか。 よろしくお願いします。
- 145 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:16:44 ]
- >>144
いきなり切替えたらノイズが出るので、 フェードアウト・フェードインさせながら切替えないといけない floor13.sakura.ne.jp/book03/book03.html のchapter11.zip
- 146 名前:デフォルトの名無しさん mailto:sage [2009/04/25(土) 18:45:52 ]
- クロスフェードってやつな
- 147 名前:129 [2009/04/25(土) 19:04:13 ]
- >>145
おおお、ありがとうございます。 なるほどお, この本買って読んでみます。
- 148 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 00:48:41 ]
- >>135
便乗ですまんけど、 FFTは暗黙に処理範囲の両端が繰り返すけど、FIRだと繰り返さないよね ブロック処理ってそのあたり大丈夫なのかな?
- 149 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 15:47:10 ]
- 質問が曖昧でなにが大丈夫なんだ?
FIRだと切れ目無くできるからいいけど FFTはぶった切るから窓関数+最後 オーバーラップが必要ってことか
- 150 名前:デフォルトの名無しさん mailto:sage [2009/04/27(月) 22:15:45 ]
- FIR相当の処理をFFTでやると、両端がループしてるから区間の最後の方の
計算値が区間の最初の方に影響するってことだろJK
- 151 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 00:15:26 ]
- 周波数成分いじって逆FFTしてまた窓かけてオーバーラップするからいんじゃね?
- 152 名前:148 mailto:sage [2009/04/28(火) 00:21:42 ]
- 分かりやすくするために極端な例だけど、例えば前半全てゼロ、
後半ピンクノイズみたいな波形があって、それをFFTして周波数成分を 操作して戻すと、ゼロだった前半部に微小な波形が出るよね。 要するにプリエコー、ポストエコーなんだけど、 これはオーバーラップだと解決できないと思うんだ。
- 153 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 00:57:45 ]
- >>152
FFTは時間成分ないんだから当たり前
- 154 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 01:27:08 ]
- >>153
んと、解決できない、でOK? とすると、>>135は無効ってことになるけど・・・
- 155 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 07:55:33 ]
- 感覚でものを言っちゃいかん 数式で検証してくれ
- 156 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 21:36:30 ]
- Androidでサウンド系アプリ作った人いる?
- 157 名前:デフォルトの名無しさん [2009/04/29(水) 04:49:22 ]
- >>149
一回の計算についてはFIRもFFTと同じくブロック処理以外の 何ものでもないのだが? どちらも対象の有限長のブロック以外は全然計算対象に入っ ていない。 FIRの代わりにFFTを使う時、FIRでの場合と同じように1サン プルづつずらしてFFTを行い、その結果を正しく評価すれば FIRでの場合と同じ結果が得られるんじゃない? ただ、それだと普通にFIRやるよりも計算量が増えるので、 それをひっくり返す手法としてオーバーラップ法があるの だと理解してるが?
- 158 名前:デフォルトの名無しさん mailto:sage [2009/04/29(水) 14:31:42 ]
- >>157
てことは、オーバーラップは単に計算量対策で、 FIRとFFT+オーバーラップは本来は代替不可能ってことか。
- 159 名前:デフォルトの名無しさん mailto:sage [2009/04/29(水) 22:26:47 ]
- >>157
一回の計算についてはプログラミング上 ブロック処理にしてもしなくても 出力はFIRならいっしょだからそれは考えないとして。 FIRとFFTの違いはサンプル数の違いがでかくないか? FFTはサンプル数でかくしないと周波数領域で操作できる 周波数ステップ荒くなるし FIRは少なくてもある程度できる。 サンプル数大きくするとそれだけFFTの計算に入れる時間が 大きくなるから時間分解能下がる FIRはリアルタイム処理だから時間分解能最大。 それでサンプル数が一緒での議論だと、 FFTは実際(データが何かにもよるけど)窓関数とかかけなきゃ だめだからそれだけデータ量そこでへっちゃうから、 最終処理後のデータの品質さがる だから目的に合わせて選べばいんでは
|

|