teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

訂正:連続性という表現を削除

2017/05/23 11:43

投稿

KSwordOfHaste
KSwordOfHaste

スコア18404

answer CHANGED
@@ -1,12 +1,12 @@
1
1
  原因は位相の求め方にあります。
2
2
 
3
- 本件ではサンプルごとになだらかに周波数を変えようとしていますね。このときある瞬間の周波数は直前の位相との位相差により決まります。ところが質問コードでは隣り合ったサンプルの位相に連続性がありません。そのため意図した周波数とずれた周波数の音になってしまうのです。
3
+ 本件ではサンプルごとになだらかに周波数を変えようとしていますね。このときある瞬間の周波数は直前の位相との位相差により決まります。ところが質問コードでは隣り合ったサンプルの位相の差は期待した周波数りません。そのため意図した周波数とずれた周波数の音になってしまうのです。
4
4
 
5
5
  `y = sin(2 * M_PI * freq * t);`
6
6
 
7
7
  で波形を求めるためには条件が必要で、その条件はこの式を用いる期間で「**周波数が不変でt=0の時の位相が2πの倍数**」であることです。
8
8
 
9
- 以下のようにするとサンプル間の位相に連続性るため期待通りの結果になります。
9
+ 以下のようにするとサンプル間の位相i番目のサンプルの周波数に従っ値になるため期待通りの結果になります。
10
10
 
11
11
  ```C
12
12
  ...