- 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
- 28 名前:デフォルトの名無しさん [2009/01/16(金) 06:15:59 ]
- プログラムの勉強をするなら動画圧縮か音声圧縮がいいということでサウンドプログラミングを始めたんですが
全く音の知識は無いんですが、周波数を変更する場合の存在しない中間サンプリング点を打つ場合 直線上に打つのは酷いってのはわかるんですが、補間で曲線上に打っても同じぐらい酷いと思うんですが これはどうやって打てばいいんですか?
- 29 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 09:53:05 ]
- >直線上に打つのは酷いってのはわかるんですが
ひどくない たとえばフーリエ変換して周波数成分を欲しい領域に移動して 逆フーリエ変換すれば得られる等
- 30 名前:デフォルトの名無しさん [2009/01/16(金) 10:44:04 ]
- 過去スレでよくフーリエ変換って出てくるので知ってはいるんですが
あれって一定の範囲内ってのがいいかげんで、 しかも途切れが含まれなかったり単音じゃないと酷いと思うんですが ほんとにこれが主流なんですか?数学と無理やり抱き合わせるんじゃなくて 音専用の予測アルゴリズムとかはないんでしょうか?
- 31 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 12:20:24 ]
- >>28
中間点をとるっていうのは __ ̄ ̄__ ̄ ̄ が ___― ̄ ̄ ̄―___― ̄ ̄ ̄ みたいになるっていう意味でしょうか?
- 32 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 13:02:04 ]
- バイリニア補完とかバイキュービック補完とかガウス補完とかシンク補完とかの話?
リアルタイム性の必要な処理なら、足して2で割るのもよく使われるよ。
- 33 名前:デフォルトの名無しさん [2009/01/16(金) 14:50:50 ]
- >>31
そうです。 >>32 いやニュートンとかスプラインのことをいったんですが、どのみち音に特化してなければ同じですが。 足して2で割るって酷くないですか?間が飛びぬけて山谷になってるかもしれないのに それって意外な事実ですよね。実際変換ソフトなら全部似たり寄ったりだと思って使ってました
- 34 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 15:04:53 ]
- >>33
あなたがするべき事は実際に大量のデータで統計を取る事だな 音情報である以前にスピーカーを振動させるための電圧である事も考慮しつつ
- 35 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 16:02:04 ]
- >>34
なんか英文を直訳したような文章だな
- 36 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 19:29:17 ]
- >プログラムの勉強をするなら動画圧縮か音声圧縮がいいということで
これの根拠が分からない。ファイル圧縮ならまだ一般的な感じもするが。
- 37 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 20:06:50 ]
- シャノンからやり直せ。
- 38 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:05:19 ]
- >>33
サンプリング定理
- 39 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:25:39 ]
- >>33
速度を気にしないなら、周波数領域に変換してから間を埋めろ。
- 40 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:38:10 ]
- いっつも思うけど、周波数領域に
変換すると、時間分解能みたいのが ゆるくなるから音質悪くなる希ガス
- 41 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 21:57:16 ]
- >>40
DCT自体は可逆だぜ。 速度やらサイズやらのために細かい部分を捨てることが多いだけで。
- 42 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 22:05:29 ]
- >>41
可逆なのは無限に加算したときだけじゃないの 普通は切り捨てるからそこで音質落ちるんだよ 程度問題だけど人間の耳で分からないレベルで 気にならなければOKでしょ
- 43 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 22:10:14 ]
- 音にDCTしてもなぁ…
- 44 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:33:43 ]
- >>42
扱うのはデジタルデータなんだから無限に加算する必要なんざねーよ。
- 45 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 23:39:15 ]
- てことは、かなり細かく分割して周波数領域に
変換するってこと?
- 46 名前:デフォルトの名無しさん mailto:sage [2009/01/17(土) 00:00:59 ]
- ウェーブレットでやれ。
- 47 名前:デフォルトの名無しさん [2009/01/17(土) 08:36:00 ]
- WDM Kernel StreamingをASIOでラッパーするドライバを作ってみた
AsioKs fanzo.real-sound.net/iCubicProject/
- 48 名前:デフォルトの名無しさん [2009/01/19(月) 18:19:02 ]
- あ
- 49 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 10:51:49 ]
- DNAはやくリリースされないかな
- 50 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 11:24:36 ]
- DirectNoteAccess?
- 51 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 16:08:40 ]
- ディレイとエコーの違いが分からない orz
ディレイは少し前の入力値を、現入力値に加算 エコーは少し前の出力値を、現入力値に加算 という理解で合ってるのかな・・・
- 52 名前:デフォルトの名無しさん [2009/01/25(日) 15:10:53 ]
- エコー=リバーブ?
- 53 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 16:15:46 ]
- エコーはこだまだろ
やほーーー、yahoo...
- 54 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 19:40:15 ]
- ディレイもエコーも同じだよ
- 55 名前:デフォルトの名無しさん [2009/01/25(日) 23:34:17 ]
- 俺も>>54と同じ意見。 ディレイ=エコー=やまびこ、で、リバーブが風呂場で音が響く感じ。
- 56 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 09:08:59 ]
- 俺の認識では、エコー=風呂場の響き だな。
- 57 名前:55 [2009/01/26(月) 11:14:09 ]
- >>56
じゃあ、リバーブはどう認識してるの?w
- 58 名前:55 [2009/01/26(月) 11:18:52 ]
- エコー
* (ギリシア*kh*)ギリシア神話のニンフ。ヘラの怒りを買って他人のことばを繰り返すことしかできなくなる。ナルキッソスを恋したがその愛を告げられず、苦悩の果てに声だけ残り、こだまになったという。 * (英echo) 1 こだま。やまびこ。 2 残響。 国語大辞典では、↑だそうだよ。 >>56の風呂場でヤッホーと叫ぶと、2、3秒してからヤッホーが戻ってくるのか?w
- 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
みつからないけどどこ?
|

|