Редактирование SoundFont с помощью Claude
В Polyphone встроен сервер, работающий по протоколу Model Context Protocol (MCP) — стандарту, который позволяет ИИ-ассистентам пользоваться другими программами. Если сервер включён, ассистент, например Claude, может работать с SoundFont, открытыми в Polyphone: вы описываете своими словами, что хотите получить, а ассистент просматривает SoundFont, редактирует их, применяет инструменты Polyphone и измеряет результат.
Каждое изменение сразу появляется в редакторе и может быть отменено, как если бы вы сделали его сами. В этом руководстве показано, как подключить Claude к Polyphone, а затем приведены примеры запросов с аудиофайлами, на которых слышен результат.
Что умеет ассистент
Ассистенту доступно всё, что открыто в Polyphone:
- просмотр: SoundFont, их семплы, инструменты и пресеты, параметры каждого раздела, а также элементы, выделенные в дереве (поэтому он понимает слова «этот семпл» или «выделенные инструменты»),
- редактирование: создание, переименование, дублирование и удаление элементов, изменение параметров, диапазонов клавиш и силы нажатия, точек петли, модуляторов…
- инструменты: большинство инструментов из меню функций, например автопетля, изменение громкости, автопозиционирование семплов или естественное затухание,
- анализ звука: измерение громкости, высоты тона, обертонов, атаки, качества петли… а также рендеринг ноты, сыгранной синтезатором.
Функции анализа играют ключевую роль: ассистент не может слышать. Вместо этого он измеряет звук до и после изменения — так звукорежиссёр читает показания анализатора спектра. Благодаря этому он может проверить, что петля не щёлкает, что ноты настроены и что громкость ровная по всей клавиатуре, но последнее слово всегда за вашими ушами.
Каждое изменение, сделанное ассистентом, — это шаг в истории SoundFont: Ctrl+Z в Polyphone отменяет его. Ничего не записывается на диск, пока вы не попросите ассистента сохранить SoundFont или не сохраните его сами.
Настройка
Включение сервера в Polyphone
Откройте настройки и перейдите в раздел ИИ-ассистент. Включите параметр Разрешить ИИ-ассистентам доступ к открытым SoundFont: в строке ниже появится адрес сервера, по умолчанию http://127.0.0.1:8642/mcp. Если порт 8642 уже занят другой программой, выберите другой в поле Порт.
Сервер принимает подключения только с вашего собственного компьютера. На той же странице перечислены все функции, доступные ассистенту, в четырёх категориях: Просмотр, Редактирование, Инструменты и Анализ звука.
Подключение Claude Code
Claude Code — это ассистент от Anthropic, работающий в терминале (он также доступен как расширение для редакторов VS Code и JetBrains). После его установки скопируйте команду, показанную в настройках Polyphone, кнопкой Копировать и выполните её в терминале:
claude mcp add --transport http polyphone http://127.0.0.1:8642/mcp
По умолчанию Claude Code использует сервер только тогда, когда запущен из той папки, в которой была выполнена эта команда.
Чтобы работать с Polyphone из любой папки, добавьте параметр --scope user:
claude mcp add --scope user --transport http polyphone http://127.0.0.1:8642/mcp
Затем начните новый сеанс Claude Code: функции Polyphone загружаются при запуске сеанса, и к этому моменту Polyphone уже должен быть открыт с включённым сервером.
Команда /mcp в Claude Code показывает, подключён ли сервер «polyphone».
Когда ассистент впервые хочет воспользоваться функцией Polyphone, Claude Code запрашивает ваше разрешение, и вы можете выбрать, чтобы для этой функции вопрос больше не задавался.
Примечание: другие ассистенты, поддерживающие MCP через транспорт HTTP, могут подключаться по тому же адресу.
Первые вопросы
Начните с простых вопросов, чтобы посмотреть, как ассистент изучает SoundFont:
- «Какие SoundFont открыты в Polyphone?»
- «Что содержит этот SoundFont? Есть ли семплы, которые не используются ни одним инструментом?»
- «Выведи список пресетов с номерами банка и пресета.»
Если выделить элемент в дереве Polyphone, ассистент сможет на него ссылаться: «Уменьши громкость выделенного семпла на 6 дБ» или «Переименуй эти инструменты, добавив префикс „Organ“». При небольших изменениях результат сразу виден в редакторе.
Пример: проверка и исправление инструмента
При создании инструмента из множества семплов ошибки появляются легко, и некоторые из них трудно заметить: слегка расстроенная нота, семпл чуть громче соседних, петля, которая начинает щёлкать только через несколько секунд… Ассистент может проверить весь инструмент за несколько секунд.
Чтобы попробовать самостоятельно, скачайте flute-with-mistakes.sf2 и откройте его в Polyphone. Файл содержит инструмент флейты, в который намеренно внесено несколько ошибок. Послушайте гамму от C4 до F6 и следующую за ней долгую ноту G6:
Затем попросите:
«Проверь инструмент „Flute“: есть ли расстроенные ноты, слишком громкие или слишком тихие, клавиши без звука или плохие петли?»
Ассистент анализирует инструмент (одна функция измеряет громкость, высоту тона, тембр и петлю каждого раздела), а затем подробно изучает подозрительные семплы. В ответе перечислены проблемы:
- клавиша E4 ничего не играет: раздел «Flute 63» заканчивается на D♯4, а следующий начинается с F4,
- «Flute 69» звучит на полтона выше: семпл играет A4 (440 Гц), но его корневая клавиша — G♯4,
- «Flute 78» звучит на 30 центов выше: его коррекция равна +30 центам, хотя запись настроена верно,
- раздел «Flute 84» на 6 дБ громче остальных (клавиши от H5 до C♯6),
- петля «Flute 90» щёлкает: формы волны в точке петли не совпадают, а длина петли не равна целому числу периодов.
Затем попросите: «Исправь эти проблемы.»
Ассистент расширяет диапазон клавиш «Flute 63» до E4, задаёт корневую клавишу «Flute 69» равной A4 и коррекцию «Flute 78» равной 0, назначает разделу «Flute 84» приглушение 6 дБ (сам семпл не изменяется) и применяет к «Flute 90» инструмент Автопетля. Новый анализ подтверждает результат: ни одной беззвучной клавиши, ни одной расстроенной ноты, одинаковая громкость везде и петля, формы волны которой теперь совпадают в точке петли. Та же гамма после исправлений:
Ассистент объясняет, что делает, и ему часто приходится делать выбор: здесь он приглушил раздел, вместо того чтобы изменять аудиоданные семпла. Если вы предпочитаете другое решение, просто скажите об этом — а каждое изменение можно просмотреть в редакторе или отменить.
Пример: создание инструмента с нуля
Ассистент вроде Claude Code может также запускать программы на вашем компьютере, например чтобы вычислить семплы. Вместе с функциями Polyphone это позволяет построить целый инструмент по описанию. Флейта из предыдущего примера была создана именно так, начиная с двух запросов:
«Можешь сделать мне звук флейты для клавиши 60?»
«Теперь сделай полную флейту с несколькими уровнями громкости, в новом SoundFont.»
Вот что ассистент сделал шаг за шагом:
- измерил записанную флейту в одном из SoundFont стандарта General MIDI, чтобы узнать тембр инструмента в каждом регистре (обертоны, шум дыхания, атака, вибрато),
- написал программу, синтезирующую 39 семплов: 13 нот от C4 до C7, по одной на каждую третью клавишу, каждая в трёх динамических оттенках — p темнее и с бо́льшим шумом дыхания, с мягкой атакой, f богаче обертонами, с более резкой атакой,
- импортировал семплы в новый SoundFont, задал их корневые клавиши и петли и создал по одному инструменту на каждый динамический оттенок с затуханием 0,4 с,
- наложил три инструмента друг на друга в пресете (банк 0, пресет 73 — флейта стандарта General MIDI) с диапазонами силы нажатия 0-49, 50-89 и 90-127, как описано в руководстве «Реалистичные инструменты с несколькими слоями силы нажатия»,
- отрендерил ноты по обе стороны каждой границы силы нажатия: громкость меняется лишь на 0,1–0,4 дБ, так что при переходе от слоя к слою меняется только тембр.
Последний шаг выявил слабое место: в самой высокой октаве три слоя звучали почти одинаково. Ассистент изменил свою программу так, чтобы громкие ноты становились ярче и в высоком регистре, затем заново сгенерировал семплы и перестроил инструмент.
Послушайте клавишу C4, сыгранную с силой нажатия 35, 70 и 110 — по одной ноте на слой:
И фразу с нарастающей громкостью, в которой тембр следует за динамикой:
Синтезированная флейта никогда не сравнится с хорошей записью: этот пример показывает скорее метод, чем звук. С вашими собственными записями подойдёт такой же запрос: «Импортируй wav-файлы из этой папки, определи их корневые клавиши, сделай петли и собери инструмент с одним слоем на каждый динамический оттенок.»
Другие идеи
Вот ещё запросы, которые хорошо работают:
- «Задай всем инструментам естественное затухание, более длинное в басу.»
- «Высокие ноты этого инструмента слишком яркие: постепенно смягчи их начиная с C6.»
- «Создай из этого органного инструмента регистр „селеста“ с 3 биениями в секунду на C4.»
- «Преобразуй все стереосемплы в моно и обнови инструменты.»
- «Сравни эти два семпла: почему второй звучит глуше?»
- «Объясни простыми словами модуляторы этого пресета.»
- «Удали неиспользуемые семплы и дубликаты, затем сохрани SoundFont в формате sf3.»
Советы
- Уточняйте область действия: «только инструмент „Piano“», «не меняй семплы, только инструменты»…
- Просите измерения: «проверь результат» или «сравни до и после» заставляет ассистента проверить свою работу с помощью функций анализа.
- Двигайтесь шаг за шагом при крупных изменениях и слушайте результат между шагами.
- Сохраняйте копию своего SoundFont и сохраняйте изменения, только когда результат вас устраивает: попросите ассистента сохранить файл или нажмите Ctrl+S.
- Большие SoundFont анализируются дольше: выбирайте инструмент или пресет, а не весь SoundFont.
- Конфиденциальность: ассистент получает названия, параметры, результаты измерений и изображения форм волны, но не сам звук; однако эти данные отправляются в сервис ассистента, как и остальная часть разговора.
Polyphone бесплатен, но содержание сайта и разработка требуют расходов. Даже небольшое пожертвование очень поможет.
Поддержать