サウンドプログラミング3
at TECH
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