Страницы

Поиск по вопросам

четверг, 13 февраля 2020 г.

Преобразование звука

#преобразование #аудио #cpp #linux


Как известно в линукс есть консольные прогарммы aplay и arecord
чтобы проиграть звук с микрофона на колонки нужно ввести:

arecord | aplay

но я хочу добавить эффект дисторшн в эту конструкцию, чтобы было примерно так:
arecord | distort | aplay

Чтобы можно было например на вход подключить электрогитару ну или просто побаловаться.
Так вот мой вопрос вот в чем: Что мне нужно почитать и что изучить, чтобы я мог написать
этот самый distortion?    


Ответы

Ответ 1



Ну, вообще для начала нужно прочитать руководство по командам arecord и aplay. Из него мы узнаем, что по умолчанию они используют формат WAVE. Остается только понять сам формат данных и можно писать утилиту. Также стоит упомянуть, что нужно научиться работать со стандартным вводом и выводом. Но это должно быть достаточно просто.

Ответ 2



#include int main() { int c, i; for ( i = 0; i <= 245; i++) { c = getchar(); printf("%c", c); } while (c != EOF) { c = getchar(); if (c <= 198) printf("%c", 198); else if (c >= 205) printf("%c", 205); else printf("%c", c); } return 0; } это код, который получился у меня. просто сконвертировать файл можно таким образом: ./dist < file1.wav > file2.wav

Комментариев нет:

Отправить комментарий