サウンドプログラミング3 at TECH
[2ch|▼Menu]
240:デフォルトの名無しさん
06/08/19 09:10:42
>>238-239
書き方が悪くてすみません。
「音程を変化させずに速度変化をした」
処理です。
>>239
いいえ、3度以上の繰り返しについても問題なく実装しているはずです。
DirectSound+C#なので、部分抜き出しが難しいですが・・、
0.5以上1倍以下ではどれだけ細かい指定をしても平気なので、
ここにバグがあるわけでは無い・・・とは思うのですが。

 decimal readCount = 0;
 decimal readSpeed = 0.4;

 for(writePoint=0;writePoint<(一秒分のバッファ長);writePoint+=(0.1秒分のバッファ長))
 {
  readCount += (double)readSpeed;
  for(i=0;i<readCount;i++)
  {
   /* [readBufferに0.1秒分読み込み] */
  }
  /* [readBufferから書き込み用バッファにwritePoint位置でコピー] */
  readCount -= (int)readCount;
 }
 /* [書き込み用バッファを再生バッファにコピー] */

という感じでの実装です。
なんだっけ、グラフィックとかで良く使う「斜めの直線を整数型のみで計算するアルゴリズム」を応用した感じなのですが。


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5037日前に更新/170 KB
担当:undef