API для разработчиков — мастеринг аудио одним запросом
Встройте автоматический мастеринг (LUFS / True Peak по ITU-R BS.1770-5) в свой продукт: дистрибуция музыки, генераторы треков, пакетная обработка каталогов. Один HTTP-запрос — готовый мастер.
Быстрый старт — 3 шага
Зарегистрируйтесь и купите токены
1 токен = 1 мастеринг. Токены покупаются пакетами, анализ трека — бесплатный.
Создайте API-ключ в профиле
Откройте magicmaster.pro/profile (тарифы Pro и Studio) и создайте ключ в разделе API.
Отправьте файл
Ключ передаётся заголовком X-API-Key. Отправьте трек — получите job_id, опросите статус и скачайте результат.
Пример: curl
Мастеринг одного файла: запуск задачи, проверка статуса, скачивание результата.
curl -X POST https://magicmaster.pro/api/v2/master \
-H "X-API-Key: mm_live_YOUR_KEY" \
-F "file=@track.wav" \
-F "style=edm" \
-F "target_lufs=-9" \
-F "out_format=wav"
# → {"job_id": "..."}; then:
curl https://magicmaster.pro/api/master/status/JOB_ID -H "X-API-Key: ..."
curl -o master.wav https://magicmaster.pro/api/master/result/JOB_ID -H "X-API-Key: ..."Пример: Python
Тот же флоу на requests: отправка файла и опрос статуса до готовности.
import requests, time
API = "https://magicmaster.pro"
HEADERS = {"X-API-Key": "mm_live_YOUR_KEY"}
with open("track.wav", "rb") as f:
r = requests.post(
f"{API}/api/v2/master",
headers=HEADERS,
files={"file": f},
data={"style": "edm", "target_lufs": -9, "out_format": "wav"},
)
r.raise_for_status()
job_id = r.json()["job_id"]
while True:
s = requests.get(f"{API}/api/master/status/{job_id}", headers=HEADERS).json()
if s["status"] == "done":
break
time.sleep(3)
audio = requests.get(f"{API}/api/master/result/{job_id}", headers=HEADERS)
with open("master.wav", "wb") as out:
out.write(audio.content)
print(s["after_lufs"], s["true_peak_db"])Эндпоинты
| Эндпоинт | Описание | Стоимость |
|---|---|---|
POST/api/v2/analyze |
LUFS, True Peak и подсказка жанра по загруженному файлу. | Бесплатно |
POST/api/v2/master |
Мастеринг одного трека, возвращает job_id. | 1 токен |
POST/api/v2/batch |
До 10 файлов за запрос. album_mode=1 — альбомный режим с сохранением относительной громкости; intensity 0.5–1.5 — плотность компрессии. | 1 токен / файл |
POST/api/v2/multipreview |
Мультипревью: фрагмент трека (24 с) рендерится сразу в 4 стилях параллельно (~20 с). Опционально styles — JSON-массив 2–6 стилей. Аудио: GET /api/master/preview/{id}/{style}. | Бесплатно (6/день) |
POST/api/v2/master/stems |
Stem-мастеринг: 2–8 стемов одного трека (files[]) суммируются с per-stem гейнами (gains_db — JSON-массив дБ, ±24) и мастерятся как один трек. Разный sample rate и длина выравниваются автоматически. | 1 токен |
POST/api/v2/clean |
Экспресс-очистка ИИ-следов без мастеринга: убирает цифровой след Suno/Udio (HF-стеганография, артефакты блоков), громкость и характер не меняются. Параметры: sensitivity 0–1, out_format. | 1 токен |
GET/api/master/status/{id} |
Статус задачи и метрики результата. | Бесплатно |
GET/api/master/result/{id} |
Скачивание готового мастера. | Бесплатно |
GET/api/v2/chain/default?lang=en |
Описание дефолтной цепочки обработки (RU/EN). | Бесплатно |
Параметры master
style— жанровый пресет, 17 жанров: edm, rock, hip-hop, pop и другие.target_lufs— целевая интегральная громкость, например −14 для стриминга или −9 для клубного мастера.out_format— формат результата: wav, mp3, flac, opus или aac.intensity— плотность жанровой компрессии от 0.5 (мягче) до 1.5 (плотнее), по умолчанию 1.0.album_mode— только для batch: значение 1 сохраняет относительную громкость треков альбома.- PRO-параметры (
denoise,deesserи другие) — см. интерактивную OpenAPI-документацию /docs.
Что возвращает status
after_lufs— интегральная громкость результата (LUFS).true_peak_db— истинный пик результата (dBTP).codec_check— честная проверка громкости и пиков после кодирования в выбранный кодек.tonal_analysis— тональный баланс по частотным полосам.lufs_timeline— график громкости по ходу трека.input_clipping— обнаруженный клиппинг исходника и работа De-clipper.album_lufs_offset— смещение громкости трека в альбомном режиме.intensity— применённая плотность компрессии.
Лимиты и честность
- 1 токен = 1 мастеринг. Никаких подписок на API — платите только за обработанные треки.
- До 10 активных API-ключей на аккаунт; каждый ключ можно отозвать в любой момент.
- Файлы обрабатываются в памяти и не хранятся на сервере после выдачи результата.
- Полная интерактивная спецификация (OpenAPI / Swagger) — на странице /docs.
Частые вопросы
Как получить API-ключ?
Зарегистрируйтесь на magicmaster.pro, оформите тариф Pro или Studio и создайте ключ в профиле. Ключ передаётся в заголовке X-API-Key, одновременно может быть активно до 10 ключей.
Сколько стоит один мастеринг через API?
1 токен = 1 мастеринг. Анализ трека (POST /api/v2/analyze) бесплатный. Токены покупаются пакетами — актуальные цены на странице тарифов.
Какие форматы поддерживаются?
На вход принимаются WAV, MP3 и FLAC. Формат результата задаётся параметром out_format: wav, mp3, flac, opus или aac — с честной проверкой громкости после кодека (codec_check).
Что такое album_mode и intensity?
album_mode=1 в batch-запросе включает альбомный режим: относительная громкость треков сохраняется за счёт единого смещения громкости для всего релиза. intensity (0.5–1.5) управляет плотностью жанровой компрессии: 0.5 — мягче и воздушнее, 1.0 — стандарт жанра, 1.5 — плотнее и громче.