Оглавление:
- Шаг 1. Первые дела в первую очередь
- Шаг 2: ввод
- Шаг 3: вывод
- Шаг 4: Теперь немного звука
- Шаг 5: Другие типы источников напряжения, другие типы звуков
- Шаг 6: колокола, барабаны, тарелки, щипковые струны
- Шаг 7: Собираем все вместе
- Шаг 8: экспоненциальный рост
- Шаг 9: применение экспоненциального нарастания к синусоиде
- Шаг 10: предложения
Видео: Синтез аналогового звука на вашем компьютере: 10 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:55
Нравится звук тех старых аналоговых синтезаторов? Хотите играть с ним в свободное время, в своем собственном доме, сколько хотите, БЕСПЛАТНО? Здесь сбываются ваши самые смелые мечты о Moog. Вы можете стать исполнителем электронной звукозаписи или просто издавать крутые, странные звуки для прослушивания на своем mp3-плеере. Все, что вам нужно, это компьютер! Все это делается с помощью волшебства бесплатного симулятора схем под названием LTSpice. Теперь я знаю, что вы, вероятно, говорите: «Джи Уилликерс, Тайлер, я ничего не знаю о запуске симулятора схем - это звучит ТЯЖЕЛО!». Не волнуйся, Банки! Это просто, и я дам вам несколько шаблонов для начала и доработок, чтобы издавать любые странные звуки, которые вы хотите. Не уверены, что это того стоит? Вот ссылка на готовый к воспроизведению звуковой файл (он сделан из «Composition_1.asc» на шаге 7 этой библиотеки), который вы можете попробовать. Я преобразовал его из.wav в mp3, чтобы сократить время загрузки. https://www.rehorst.com/mrehorst/instructables/composition_1.mp3 В этом звуке есть низкие басы, поэтому слушайте его в наушниках или хороших динамиках. Если вам нравится то, что вы видите, голосуйте за меня! Примечание. Я прикрепил файлы схем для LTSpice, которые вы можете запускать на своем компьютере, но по какой-то причине, когда вы пытаетесь их загрузить, имена и расширения меняются. Содержимое файлов выглядит нормально, поэтому после загрузки файлов просто измените имена и расширения, и они должны работать. Правильные имена и расширения отображаются на значках, которые вы нажимаете для загрузки.
Шаг 1. Первые дела в первую очередь
LTSpice - это программа для Windows, но пусть это вас не расстраивает. Он отлично работает под Wine в Linux. Я подозреваю, что нет проблем с его запуском в клиенте VMWare, VirtualBox или других инструментах виртуализации под Linux, и, вероятно, на Mac тоже. Загрузите копию LTSpice для Windows (тьфу!) Здесь: https://www.linear.com/ designtools / software / ltspice.jsp Установите его. Что такое LTSpice? Это симулятор схем во временной области, который должен знать каждый любитель электроники. Я не собираюсь приводить здесь подробное руководство о том, как это работает, но я объясню несколько вещей, которые вам нужно знать по ходу дела. Одно предупреждение - легко можно получить слишком низкие частоты. или слишком высоко, чтобы слышать. Если вы сделаете это и подключите к своим дорогим колонкам мощный усилитель, вы можете просто разнести свои колонки / усилитель вдребезги. ВСЕГДА проверяйте формы сигналов перед их воспроизведением и будьте осторожны, чтобы ограничить громкость при первом воспроизведении файла на всякий случай. Перед тем, как использовать динамики, всегда рекомендуется проигрывать файлы через дешевые наушники на малой громкости.
Шаг 2: ввод
Входные данные для симулятора представлены в виде принципиальной схемы. Вы выбираете компоненты, размещаете их на схеме, а затем соединяете их вместе. Как только ваша схема будет завершена, вы сообщаете симулятору, как вы хотите, чтобы он моделировал схему и какой тип выходного сигнала вы хотите. Взгляните на схему под названием resistors.asc. Вы увидите схему, которая включает в себя источник напряжения, пару резисторов, помеченный выходной узел, землю и текстовую командную строку. Давайте посмотрим на каждого. Теперь самое время открыть файл схемы, указанный ниже. Заземление: это САМЫЙ КРИТИЧНЫЙ компонент вашей схемы. Вы ДОЛЖНЫ иметь заземление, подключенное по крайней мере к одной точке в вашей цепи, иначе вы получите очень странные результаты при моделировании. Источник напряжения: если вы подаете напряжение в цепь, вам необходимо указать, является ли оно постоянным или переменным током. (или что-то более сложное), что такое напряжение, «внутреннее сопротивление» источника и т. д. Вы можете ввести эти параметры, щелкнув правой кнопкой мыши указатель на источнике. Все, что вам действительно нужно, это сопротивление для простого моделирования. Резисторы: резисторы довольно легко понять. Просто щелкните правой кнопкой мыши, чтобы установить значение сопротивления. Игнорируйте любые другие параметры, которые могут там скрываться. Помеченные входные и выходные узлы: просто имена для узлов в схеме, удобные для пользователя. - используйте такие имена, как «output», «input» и т. Д. Директива моделирования: оператор.tran сообщает симулятору, как вы хотите моделировать схему. Это симулятор во временной области, что означает, что он анализирует схему в разные моменты времени. Вы должны указать ему, каким должен быть максимальный временной шаг и как долго симуляция должна выполняться во «схемном времени», а не в реальном времени. Если вы прикажете симулятору работать в течение 10 секунд цикла и вы установите максимальный временной шаг на 0,001 секунды, он проанализирует схему не менее 10000 раз (10 секунд / 0,001 секунды), а затем остановится., напряжение на каждом узле в цепи и токи в каждом узле и на выходе из него будут рассчитываться и сохраняться на каждом временном шаге. Вся эта информация будет доступна для отображения на дисплее, например на экране осциллографа (время по горизонтальной оси, напряжение или ток по вертикальной оси. Кроме того, вы также можете отправить вывод в аудиофайл.wav, который можно воспроизвести на компьютер, записать на компакт-диск или преобразовать в mp3 для воспроизведения на вашем mp3-плеере. Подробнее об этом позже …
Шаг 3: вывод
Вывод может быть графическим графиком зависимости напряжения от времени, напряжения от напряжения и т. Д., Или текстовым файлом, состоящим из набора напряжений или токов на каждом временном шаге, или аудиофайлом.wav, который мы собираемся много использовать в Это поучительно. Загрузите и откройте файл "resistors.asc". Щелкните значок бегущего человечка (верхняя левая часть экрана), и цепь должна запуститься. Теперь щелкните по метке «OUT» в цепи. Вы увидите напряжение, помеченное как «выход», отображаемое на графическом выходе вдоль горизонтальной оси, которая представляет время. Это напряжение, измеренное относительно земли (вот почему вам нужно хотя бы одно заземление в каждой цепи!). Это основы. Попробуйте изменить одно из значений резистора или напряжение, затем перезапустите моделирование и посмотрите, что произойдет с выходным напряжением. Теперь вы знаете, как запустить симулятор схем. Легко, правда?
Шаг 4: Теперь немного звука
Откройте схему "dizzy.asc". Это странный генератор шума, который использует модулятор и пару источников напряжения для создания аудиофайла CD-качества (16 бит, 44,1 ksps, 2 канала), с которым вы можете играть. Компонент модулятора на самом деле является осциллятором. Частота и амплитуда регулируются как VCO и VCA в реальном аналоговом синтезаторе. Форма волны всегда синусоидальная, но есть способы изменить ее - подробнее об этом позже. Пределы частоты устанавливаются параметрами mark и space. Отметка - это частота, когда входное напряжение FM составляет 1 В, а пробел - частота, когда входное напряжение FM составляет 0 В. Выходная частота является линейной функцией входного напряжения FM, поэтому частота будет находиться посередине между частотами метки и пробела, когда входное напряжение FM составляет 0,5 В, и будет вдвое больше частоты метки, когда входное напряжение FM составляет 2 В. модулятор также может модулироваться по амплитуде через входной штырь AM. Амплитуда выходного сигнала модулятора (генератора) будет соответствовать напряжению, приложенному к входу напряжения AM. Если вы используете источник постоянного тока с напряжением 1, выходная амплитуда будет 1 В (это означает, что она будет колебаться от -1 до +1 В). Модулятор имеет два выхода - синус и косинус. Формы сигналов точно такие же, за исключением того, что они сдвинуты по фазе на 90 градусов. Это может быть интересно для приложений со стереозвуком. Существует оператор.tran, который сообщает симулятору максимальный временной шаг и продолжительность симуляции. В этом случае время цикла (общее время моделирования) = время аудиофайла. Это означает, что если вы запустите симуляцию в течение 10 секунд, вы получите аудиофайл длиной 10 секунд. Оператор.save используется для минимизации объема данных, которые симулятор будет сохранять при запуске симуляции. Обычно он сохраняет напряжения на каждом узле, а также токи в каждом компоненте и на выходе из него. Это может добавить к МНОГО данных, если ваша схема усложняется или вы запускаете длительное моделирование. Когда вы запускаете симуляцию, просто выберите одно напряжение или ток из списка в диалоговом окне, и файл данных (.raw) будет небольшим, и симуляция будет выполняться на максимальной скорости. Наконец, оператор.wave сообщает симулятору, что создать стереоаудиофайл с качеством компакт-диска (16 бит на выборку, 44,1 ksps, два канала), выставив напряжение на «OUTL» в левом канале и напряжение на «OUTR» в правом канале. Файл.wav состоит из 16-битных выборок. Полномасштабный вывод в файле.wav (все 16 бит в образце включены) происходит, когда выходное напряжение составляет точно +1 Вольт или -1 Вольт. Схема вашего синтезатора должна быть настроена на генерирование выходного напряжения не более +/- 1 В на каждый канал, в противном случае выходной сигнал в файле.wav будет "обрезаться" всякий раз, когда напряжение превышает +1 или -1 В. Поскольку мы делаем Для аудиофайла с дискретизацией 44,1 кбит / с нам нужно, чтобы симулятор моделировал схему не менее 44 100 раз в секунду, поэтому мы устанавливаем максимальный временной шаг 1/44, 100 секунд или около 20 микросекунд (мкс).
Шаг 5: Другие типы источников напряжения, другие типы звуков
Аналоговому синтезатору нужен источник случайного шума. Вы можете генерировать шум, используя «поведенческий источник напряжения» (bv), и вы можете включать и выключать его с помощью «переключателя, управляемого напряжением» (sw). Использование компонента bv для генерации шума включает определение напряжения на основе формулы. Формула для генерации шума выглядит так: V = white (time * X) * Y Функция white создает случайное напряжение между -0,5 и +0,5 В, используя текущее значение времени в качестве начального числа. Установка Y на 2 дает размах +/- 1 В. Установка X между 1 000 (1e3) и 100 000 (1e5) влияет на спектр шума и изменяет звук. Переключатель, управляемый напряжением, также требует установки некоторых параметров в операторе.model. Вы можете использовать несколько переключателей, управляемых напряжением, и несколько операторов модели, чтобы каждый из них вел себя по-разному, если хотите. Вы должны сообщить симулятору сопротивления «включено» и «выключено», а также пороговое напряжение, при котором он переключается. Vh - «напряжение гистерезиса». Установите положительное значение, например 0,4 В, и при размыкании и закрытии переключателя не будет никаких звуков щелчка. >>> Обновление: вот еще более простой способ сделать стробируемый источник шума - просто умножьте напряжение шума на импульсное. источник - см. easy_gated_noise.asc ниже.
Шаг 6: колокола, барабаны, тарелки, щипковые струны
Колокола, барабаны, тарелки и струнные - все это ударные. У них относительно быстрое время нарастания и экспоненциальное время затухания. Их легко создать, используя источники синусоидального и поведенческого напряжения в сочетании с некоторыми простыми схемами. Взгляните на схему "bell_drum_cymbal_string.asc". Источники импульсного напряжения с резистором, конденсатором и диодом создают необходимые формы волны с быстрым нарастанием и медленным экспоненциальным затуханием. Эти выходные напряжения модулируют выходы поведенческих источников, настроенных как источники случайного шума или синусоидальной волны. Когда импульсный источник напряжения увеличивается, он быстро заряжает конденсатор. Затем конденсатор разряжается через резистор. Диод не дает источнику напряжения разрядить конденсатор, когда напряжение источника равно нулю. Резисторы большего номинала увеличивают время разряда. Вы можете указать время нарастания импульсного источника - тарелка является источником найза с очень быстрым временем нарастания. Барабан также является источником шума, который работает на более низкой частоте и имеет более медленное время нарастания. Колокол и струна используют источники синусоидальной волны, которые также модулируются импульсными источниками. Колокол работает на более высокой частоте и имеет более быстрое время нарастания, чем струна. Запустите моделирование и послушайте результат. Обратите внимание, что барабан появляется в обоих каналах, а все остальные звуки - в правом или левом канале. Два резистора на выходе барабана отвечают за передачу звука в оба канала.
Шаг 7: Собираем все вместе
Хорошо, теперь вы узнали, как создавать звуки, формировать огибающие и модулировать их по частоте. Теперь пришло время объединить несколько разных источников в единую схему и создать что-то интересное для прослушивания. Как сделать так, чтобы источник шума появился в композиции за 33 секунды? Как включить этот перезвон через 16 секунд, затем выключить, а затем снова включить через 42 секунды? Один из способов - использовать источник поведенческого напряжения для создания желаемого звука, а затем включать и выключать его, умножая напряжение, генерирующее звук, на другое напряжение, которое включает и выключает звук, как это было сделано в bell_drum_cymbal_string.asc. Вы можете сделать то же самое для постепенного появления и исчезновения звуков. Идея здесь состоит в том, чтобы настроить повторяющиеся звуки, а затем использовать дополнительные источники, чтобы добавлять эти звуки в вашу композицию в желаемое время, умножая их напряжения на звуковые напряжения. Вы можете включить в окончательный вывод звука столько напряжений, сколько захотите, просто продолжайте умножать их (так же, как логическое «и») вместе. При одновременном включении всех звуков они будут оставаться в идеальной синхронизации на протяжении всей композиции, поэтому они никогда не будут ранними или поздними во время исполнения музыки. Есть два колокола, по одному на каждый канал. Напряжения pulse_bell действуют на протяжении всей симуляции, но звуки появляются на выходе только тогда, когда V (bell_r) и V (bell_l) не равны 0.
Шаг 8: экспоненциальный рост
Обновление 7/10 - прокрутите вниз. Вот схема, которая генерирует экспоненциальную кривую, применяемую к паре источников шума. V1 и V2 генерируют линейные нарастания, которые начинаются с 0 и возрастают до X вольт (левый канал) и Y вольт (правый канал) в периоды prd_l и prd_r. B1 и B3 используют формулу для преобразования линейных рамп в экспоненциальные с максимальной амплитудой 1 В. B2 и B4 генерируют случайный шум, который модулируется по амплитуде экспоненциальными линейными изменениями и параметрами amp_l и amp_r (простые регуляторы уровня). Я приложил mp3-файл, сгенерированный этой схемой, чтобы вы могли услышать, как он звучит. Вероятно, вам придется переименовать файл, чтобы он начал играть. X и Y устанавливают пределы напряжения линейных рамп. В конце концов, линейные изменения обоих каналов будут масштабированы до 1 В, но, установив X и Y, вы можете контролировать крутизну экспоненциального изменения. Маленькое число, такое как 1, дает почти линейный наклон, а большое число, например 10, дает очень крутой экспоненциальный наклон. Периоды линейного изменения устанавливаются с помощью параметров prd_l и prd_r. Время нарастания линейного нарастания установлено на значение prd_l или prd_r минус 5 мс, а время спада установлено на 5 мс. Длительное время спада предотвращает щелчки в конце каждого линейного изменения, когда амплитуда падает обратно до нуля. Out_l и out_r - это произведения основанных на времени случайных шумовых напряжений, экспоненциальных линейных напряжений и параметров amp_l и amp_r. Обратите внимание, что значение случайного шума правого канала использует другое «начальное число», чем левый канал. Это сохраняет шум в каждом канале случайным и отличным от шума противоположного канала. Если вы используете одно и то же семя, при одном и том же значении вы получите одно и то же случайное значение, и звук окажется в центре, а не будет восприниматься как два разных источника, по одному в каждом канале. Это может быть интересный эффект, с которым можно поиграть… Обновление: обратите внимание, что форма волны изменяется от 0 В до некоторого положительного значения. Лучше, чтобы напряжение колебалось между равными положительными и отрицательными значениями. Я переработал схему именно для этого, но это немного увеличило сложность уравнения, определяющего форму волны. Загрузите exponential_ramp_noise.asc (помните, что сервер Instructables изменит имя и расширение при его сохранении).
Шаг 9: применение экспоненциального нарастания к синусоиде
На этой странице показано, как использовать экспоненциальное нарастание из предыдущего шага для модуляции источника синуса (на самом деле синуса и косинуса). Источник поведенческого напряжения используется для преобразования линейного нарастания в экспоненциальное нарастание, которое управляет входом FM на компоненте modulate2. Амплитуда модулируется как быстрым экспоненциальным нарастанием, так и медленной синусоидальной волной. Послушайте образец файла - звучит довольно странно.
Шаг 10: предложения
1) Вы можете варьировать общее время симуляции - сделайте его коротким, пока вы играете с компонентами и когда вы получаете нужный звук, затем настройте симулятор на работу на 30 минут (1800 секунд) или на любое другое время, которое вам нравится. Вы можете копировать схемы с одной страницы на другую, и вы можете создавать подсхемы, чтобы вы могли просто соединять вместе небольшие схемные модули, как с помощью коммутационной платы на реальном синтезаторе. 2) Частота дискретизации CD составляет 44,1 ksps. Если вы сохраните максимальный временной шаг до 20 мкс, вы получите «чистый» результат, потому что симулятор будет иметь данные, доступные для каждого нового образца. Если вы используете меньший временной шаг, симуляция будет медленной и, вероятно, не повлияет на звук. Если вы используете более длинный временной шаг, вы можете услышать некоторое наложение, которое может вам понравиться, а может и не понравиться. размер файла.raw мал. Если вы не сделаете выбор, ВСЕ напряжения и токи будут сохранены, а файл.raw станет ОЧЕНЬ большим 4) попробуйте использовать очень низкие частоты для модуляции более высоких частот 5) попробуйте использовать более высокие частоты для модуляции более низких частот 6) объедините выходные сигналы от некоторых низкочастотных источников с некоторыми высокочастотными, чтобы сделать вещи интересными. 7) используйте импульсный источник напряжения для модуляции синуса или другой источник для обеспечения ритма. 8) используйте аналоговые схемы для преобразования импульсов напряжения в желаемое.) используйте математические выражения для определения выходного сигнала поведенческого источника напряжения.
Рекомендуемые:
Как играть в игры NDS на вашем компьютере с помощью DeSmuME: 4 шага
Как играть в игры NDS на вашем компьютере с помощью DeSmuME: Привет! Я здесь, чтобы научить людей использовать программы (в основном эмуляторы) на своих компьютерах. Сегодня я покажу вам, как использовать эмулятор NDS под названием DeSmuME. Не спрашивайте, почему это так называется, я не знаю. Погуглите, если вам интересно! Давай начнем
Запуск радиостанции на вашем компьютере: 6 шагов (с изображениями)
Запуск радиостанции на вашем компьютере: в этом руководстве показано, как создать собственную интернет-радиостанцию прямо на вашем домашнем компьютере
Как проверить, будет ли игра запускаться на вашем компьютере, прежде чем покупать игру: 4 шага
Как проверить, будет ли игра запускаться на вашем компьютере, прежде чем вы ее купите. Недавно я приобрел Call of Duty 4 у друга (я мог бы добавить бесплатно), потому что не запускался на его компьютере. Что ж, его компьютер довольно новый, и меня озадачило, почему он не запускается. Итак, после пары часов поиска в Интернете я наткнулся на
Воспроизведение DDR на вашем компьютере: 8 шагов
Играйте в DDR на своем компьютере: кто-нибудь здесь любит DDR? Хотели бы вы свободно играть в DDR с помощью пэда или даже пальцев на компьютере? В этой изящной инструкции я покажу вам, как именно это сделать … даже загружать пакеты песен из вашей любимой версии DDR
Используйте подключение для передачи данных вашего iPhone на вашем компьютере: 6 шагов
Используйте подключение для передачи данных вашего iPhone на вашем компьютере: ПРИМЕЧАНИЕ. Начиная с iOS 3 и 4, есть другие способы подключения, даже законный, через AT&T (хотя это требует дополнительных затрат). Этот метод все еще работает, и всегда будет (независимо от обновлений iOS), пока вы можете подключиться к своему iPhone по SSH. Иметь