⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 convolve.alg

📁 Audacity是一款用於錄音和編輯聲音的、免費的開放源碼軟體。它可以執行於Mac OS X、Microsoft Windows、GNU/Linux和其它作業系統
💻 ALG
字号:
(CONVOLVE-ALG(NAME "convolve")(SUPPORT-FUNCTIONS "void h_reverse(sample_type *h, long len){    sample_type temp;    int i;        for (i = 0; i < len; i++) {        temp = h[i];        h[i] = h[len - 1];        h[len - 1] = temp;        len--;    }}")(ARGUMENTS ("sound_type" "x_snd") ("sound_type" "h_snd") )(TABLE "h_snd")(START (MIN x_snd))(NOT-IN-INNER-LOOP "h_snd")(STATE         ("table_type" "table" "sound_to_table(h_snd)")        ("sample_type *" "h_buf" "susp->table->samples")        ("double" "length_of_h" "susp->table->length")        ("long" "h_len" "(long) susp->length_of_h;         h_reverse(susp->h_buf, susp->h_len)")        ("long" "x_buf_len" "2 * susp->h_len")        ("sample_type *" "x_buffer_pointer"          "calloc((2 * (susp->h_len)), sizeof(float))")        ("sample_type *" "x_buffer_current" "susp->x_buffer_pointer")  )(ALWAYS-SCALE x_snd)(TERMINATE (MIN x_snd))(LOGICAL-STOP (MIN x_snd))(INNER-LOOP-LOCALS   "long i; double sum;")(INNER-LOOP "        /* see if we've reached end of x_buffer */        if ((x_buffer_pointer + x_buf_len) <= (x_buffer_current + h_len)) {            /* shift x_buffer from current back to base */            for (i = 1; i < h_len; i++) {                x_buffer_pointer[i-1] = x_buffer_current[i];            }                /* this will be incremented back to x_buffer_pointer below */            x_buffer_current = x_buffer_pointer - 1;        }        x_buffer_current++;        x_buffer_current[h_len - 1] = x_snd;        sum = 0.0;        for (i = 0; i < h_len; i++) {            sum += x_buffer_current[i] * h_buf[i];        }        output = (sample_type) sum;")(CONSTANT "h_buf" "h_len" "x_buf_len" "table")(SAMPLE-RATE "x_snd->sr")(FINALIZATION "    table_unref(susp->table);     free(susp->x_buffer_pointer);"))

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -