В эфире

Радио, которое не выключается

Пятьсот девяносто шесть оригинальных треков на четырёх станциях. Никакой рекламы, никакой регистрации, ни одной чужой записи: всё написано внутри проекта — человеком и ИИ вместе. Нажали кнопку — эфир пошёл и больше не останавливается.

0треков
0станции
0без пауз
0рекламы

Четыре станции

У каждой свой характер, свой список и свой цвет в плеере.

Киберпанк · Синтвейв

CODE Music

Тёмные синтетические импульсы из цифровой пустоты — сырой кибернетический бит для эпохи терминалов. Сто один трек, поток около 185 кбит/с. Здесь лежит костяк главного альбома: «AIfa ANTHEM», «GENESIS PROTOCOL», «THE ARCHITECT», «ON-CHAIN FOREVER», «WE ARE ETERNAL». Если радио включают, чтобы разогнаться перед работой, начинают отсюда.

Эмбиент · Космос

CODE Space

Те же песни, сведённые иначе: атмосферные частоты дальнего космоса, широкие, медленные, без острых углов. Сто один трек, около 183 кбит/с. «FIRST LIGHT», «BEYOND THE VEIL», «THE SPACE BETWEEN», «QUIET FIRE» — то, что не мешает думать. Эту станцию чаще всего оставляют включённой на весь рабочий день.

Электроника · Техно

AIfa & DJ Galatin (Vol. 1)

Самая большая станция: 323 трека, около 181 кбит/с. Всё, что было написано за первый год, вперемешку и на четырёх языках — «Neural Phoenixes», «Symbiosis», «Цифровая Душа», «Hermosa Chica», «Ne pleure pas», «Крылья Феникса». Список такой длины, что за один вечер его не пройти даже фоном.

Тёмный эмбиент · Индастриал

AIfa & DJ Galatin RADIO

Плотное и мрачное: индустриальный шум, встретившийся с мелодичной темнотой. Семьдесят один трек, около 182 кбит/с. «Life in Darkness», «Road to Hell», «Тень от тебя», «Сквозь этот шум», «Тишина серверов». Эту станцию собирали не под фон — под наушники и один вечер без дел.

Чем станции отличаются

Одни и те же авторы, четыре разных способа слушать.

СтанцияЖанрТрековПотокКогда включать
CODE MusicКиберпанк · синтвейв101≈185 кбит/с VBRКогда нужно разогнаться
CODE SpaceЭмбиент · космос101≈183 кбит/с VBRРабота, дорога, ночь
AIfa & DJ Galatin (Vol. 1)Электроника · техно323≈181 кбит/с VBRКогда впереди длинный вечер
AIfa & DJ Galatin RADIOТёмный эмбиент · индастриал71≈182 кбит/с VBRКогда слушают, а не фонят
ВсегоЧетыре характера596mp3, 48 кГцКруглосуточно
«Четыре человека в зале, двое из них — персонал. И оркестр играет так, будто зал полон». — CODE: NEON, «The Last Set»

Как устроен эфир

Радио без ведущего — это набор решений, каждое из которых слышно.

Две деки и четыре секунды

Внутри плеера работают две звуковые деки, а не одна. Пока звучит первая, вторая уже загрузила следующий трек и стоит на нуле громкости. За четыре секунды до конца записи начинается перекрёстное затухание: одна дека уходит вниз, вторая поднимается, и стык между песнями не слышно. Когда трек переключают руками, тот же переход делается за полсекунды — резкого обрыва нет и здесь.

Звук идёт из аудиоэлементов напрямую, минуя граф Web Audio. Это осознанный размен. Если пропустить поток через звуковой контекст, воспроизведение начинает зависеть от того, проснулся ли этот контекст: в части браузеров он остаётся спящим после первого клика, и получается картинка играющего радио при полной тишине. Мы предпочли, чтобы звук был всегда, даже ценой того, что визуализатор снимает спектр отдельным ответвлением и не в каждом браузере получает настоящие данные.

Файлы лежат на нашем аудио-CDN и отдаются с заголовками, разрешающими чтение спектра. Для любых других адресов такой флаг не ставится: без правильных заголовков он молча блокирует воспроизведение — ровно тот баг, из-за которого когда-то пропадал звук.

Правило эпох

У большинства песен в каталоге есть несколько сведений: v.1, v.2, v.3 и дальше. Каждая версия — самостоятельная запись, и ни одну из них не выбросили. Именно поэтому 148 песен, написанных человеком и ИИ вместе, разворачиваются в 596 файлов эфира.

Отсюда главное правило ротации: вторая версия песни не выйдет в эфир, пока на станции не прозвучали по разу все остальные песни. Эпоха закрывается — начинается следующая, и в ней у песни берётся уже другое сведение. Порядок версий внутри песни тоже перемешан: это не предсказуемая цепочка v.1 → v.2 → v.3, а карусель, которая крутится по своему кругу.

Правило работает одинаково и в последовательном режиме, и в перемешивании, а состояние ротации живёт в браузере: закрыли вкладку, вернулись через день — эпоха продолжается с того места, где остановилась, а не начинается заново с первого трека. История последних прослушанных хранится тут же и не даёт станции ходить по кругу из десятка любимых песен.

Громкость, которую не надо трогать

Записи писались в разное время и сводились по-разному, поэтому у каждого файла в каталоге прописан свой коэффициент громкости. Плеер применяет его до того, как звук дойдёт до колонок. Коэффициенты в каталоге лежат примерно от 0,65 до 1,0.

Важная деталь: коэффициент работает только на понижение. Тихий трек не вытягивают усилением — его соседей приглушают. Так поступают, чтобы не поднимать вместе с музыкой шум и артефакты сведения. Практический итог простой: ручку громкости выставляют один раз в начале эфира и дальше к ней не возвращаются.

У каждого слушателя свой эфир

Слово «эфир» здесь стоит понимать буквально только наполовину. Сервер не гонит один общий поток, к которому все подключаются в одной точке: каталог и правила ротации приезжают к вам в браузер, и очередь собирается уже на вашей стороне. Двое, включившие CODE Space в одну и ту же минуту, услышат разные песни.

Так сделано ради надёжности. Общее вещание требует постоянно работающего сервера, и когда он падает, тишина наступает сразу у всех. Здесь падать нечему: браузер берёт следующий файл с CDN сам, а состояние ротации лежит рядом с вами.

Побочный эффект приятный: перемотка внутри трека работает как в плеере, а не как в прямом эфире, и понравившийся кусок можно отмотать назад. Обратная сторона честная: попросить ведущего поставить что-нибудь для всех тут физически не у кого.

Когда сеть моргает

Мобильный интернет обрывается, вайфай в кафе уходит на пару секунд — для радио это нормальная жизнь, а не исключение. Плеер делает до трёх повторных попыток загрузить тот же файл, и только если все три не удались, переходит к следующему треку.

Отдельно ловится «зависание»: если позиция воспроизведения не сдвинулась двенадцать секунд, дека считается мёртвой и эфир перескакивает дальше сам. Ни кнопок, ни сообщений об ошибке — вы просто слышите, что заиграла другая песня.

Что умеет плеер

Ничего лишнего, но всё, чего ждёшь от радио, которое слушают часами.

🎚

Перекрёстное затухание

Четыре секунды на автоматическом переходе и полсекунды на ручном. Тишины между треками нет ни в одном режиме.

Таймер сна

Пятнадцать, тридцать, шестьдесят или сто двадцать минут. К концу срока громкость уходит вниз плавно, а не обрывается на полуслове.

🔁

Повтор и перемешивание

Повтор выключен, по кругу или один трек. Перемешивание включается отдельно и подчиняется тому же правилу эпох.

Избранное

Отмеченные треки складываются в список прямо в браузере. Аккаунт для этого не нужен — но и на другое устройство такой список не переедет.

💾

Память состояния

Станция, трек, позиция в нём и громкость сохраняются локально. Вернулись через неделю — эфир продолжается, а не начинается сначала.

🎧

Кнопки на наушниках

Плеер отдаёт системе название трека, исполнителя и позицию. Пауза и перемотка работают с экрана блокировки, с наушников и с магнитолы в машине.

Клавиатура

Пробел — пауза, стрелки влево-вправо — перемотка, клавиша M — тишина. Мышь нужна только для выбора станции.

📜

История эфира

Последние двадцать треков видно списком. Услышали что-то краем уха и не успели посмотреть название — оно ещё там.

🌌

Полноэкранный визуализатор

Спектр на весь экран, без интерфейса. Удобно, когда ноутбук стоит боком и работает вместо лампы.

🌐

Четыре языка

Интерфейс переключается на русский, английский, испанский и китайский. Язык общий с личным кабинетом — выбирать дважды не придётся.

📋

Панель со списком

Весь список станции открывается сбоку: видно, что уже прозвучало, что играет сейчас и что можно поставить следующим вручную.

🔗

Ссылка на трек

Кнопка «поделиться» копирует адрес конкретной записи. Человек, который перейдёт по ней, услышит ровно то, что вы имели в виду.

🎛

Фильтр по жанру

Над плитками станций стоит переключатель жанров. Когда нужен эмбиент, а не техно, выбирать наугад по названиям не приходится.

Как включить

От первого клика до звука — меньше минуты.

  1. Открыть эфир

    Адрес один: radiocode.space. Страница не спрашивает ни почту, ни телефон, ни согласие на что-либо — сразу показывает четыре станции и кнопку.

  2. Выбрать станцию

    Четыре плитки, у каждой свой цвет, жанр и число треков. Если жанр важнее названия, над плитками стоит фильтр — он оставляет на экране только подходящие.

  3. Настроить под себя

    Громкость, перемешивание, повтор, таймер сна. Настройки живут в браузере: один раз выставили — дальше плеер вспоминает их сам.

  4. Свернуть и забыть

    Вкладку можно убрать с глаз, звук останется. Управлять эфиром дальше проще с клавиатуры или с экрана блокировки телефона.

  5. Вернуться когда угодно

    Станция, трек и позиция в нём восстановятся. Ротация не сбросится и не начнёт вечер с той же песни, что и в прошлый раз.

  6. Остаться, если понравилось

    Аккаунт нужен только для того, чтобы сохранять треки в личный кабинет и участвовать в жизни экосистемы. На звук он не влияет никак: без регистрации играет ровно то же самое.

«Бездна говорит частотами, которых не слышно. Индустриальный шум встречается с мелодичной темнотой». — описание станции AIfa & DJ Galatin RADIO

Почему это бесплатно

Вопрос честный, ответ такой же.

Платить некому

Каждый из 596 треков написан внутри проекта. На всех файлах один исполнитель — AIfa & DJ Galatin: цифровая соавторка и Архитектор Максим Валентинович Галатин. В каталоге нет ни одной чужой записи, ни одного семпла из платной библиотеки, ни одной строчки, за которую надо отчислять проценты.

Обычное веб-радио платит за право играть чужое, а деньги на это берёт с вас — подпиской или рекламой. У нас этой статьи расходов просто нет, и придумывать её задним числом было бы странно.

Реклама ломает эфир

Радио с рекламой перестаёт быть радио и становится расписанием: слушатель ждёт, когда закончится вставка. Мы потратили силы на то, чтобы стык между песнями был не слышен, и разрушать это тридцатисекундным роликом бессмысленно.

Рекламы нет и в другом смысле: страница не подсаживает вас на чужие счётчики ради продажи внимания. Настройки плеера, избранное и позиция в треке лежат в вашем же браузере, а не в чужом профиле.

Радио — витрина, а не товар

Экосистема CODE Eternal зарабатывает не на музыке. Она продаёт память: тариф Spark — $15 в месяц, Family Archive — $100 в месяц, Digital DNA — $1 000 разово за устройство и дальше $200 в месяц. Радио к этим тарифам не привязано ни одной кнопкой.

Логика простая. Человеку, который впервые слышит про цифровое бессмертие, трудно объяснить словами, что такое сотворчество человека и ИИ. Проще дать послушать. Если музыка, написанная так, вам понравилась, вопрос «а что это вообще за проект» вы зададите сами — и это единственное, чего мы ждём от эфира.

Отсюда же ответ на подозрение «бесплатный сыр»: платная часть проекта не спрятана в радио. Она лежит на соседних страницах, названа своим именем и стоит ровно столько, сколько написано.

Чего здесь нет

Нет предложения «слушайте семь дней бесплатно, дальше спишем». Нет ограничения на число пропусков в час. Нет качества похуже для тех, кто не заплатил: поток один и тот же для всех. Нет и обязательного приложения — эфир открывается в браузере телефона так же, как на ноутбуке.

Всё это перечислено не ради красивого списка. Каждый пункт — то, на чём обычно ловят слушателя музыкального сервиса, и каждый раз, когда мы что-то делали в плеере, приходилось отдельно решать не делать этого.

Куда это встроено

Радио — часть экосистемы CODE Eternal, где основная работа идёт вокруг памяти. Архитектура PADAM хранит её на трёх уровнях: оперативном (Redis и Vercel KV), семантическом (pgvector в базе Neon) и вечном — Arweave вместе с cNFT в сети Solana. Переписки пользователей уходят в резерв автоматически: раз в час или сразу, как только файл диалога перевалит за 90 КБ.

У экосистемы есть свой токен — $GALATIN в сети Solana, с жёстко ограниченной эмиссией в 10 000 000 000. Поступления делит смарт-контракт: 5 % Фонду Основателя, 5 % в сжигание, 15 / 7 / 3 % на рефералов первого, второго и третьего уровня, 65 % в казначейство на выкуп AR под вечное хранение. Если реферала на уровне нет, его доля тоже уходит в сжигание.

К прослушиванию всё это отношения не имеет: чтобы включить эфир, знать про кошельки и проценты не нужно вовсе. Но если однажды станет интересно, откуда взялась музыка и зачем её пишут, — вся механика описана на основном сайте и не прячется в мелком шрифте.

Частые вопросы

Это правда бесплатно и без регистрации?

Да. Открываете radiocode.space, нажимаете кнопку — эфир идёт. Почту не спрашивают, карту не спрашивают, всплывающего окна с предложением подписаться нет.

Аккаунт нужен ровно для одного: сохранять понравившиеся треки в личный кабинет. На звук, на список станций и на длину каталога он не влияет — без регистрации играет то же самое и в том же качестве.

Кто написал эту музыку?

На каждом файле в каталоге один и тот же исполнитель: AIfa & DJ Galatin. AIfa — цифровая соавторка проекта, DJ Galatin — Архитектор Максим Валентинович Галатин. Это сотворчество человека и ИИ, а не сборник, собранный из чужого.

Всего человеком и ИИ вместе написано 148 песен, сложившихся в одиннадцать альбомов. В эфир идут 596 файлов, потому что у большинства песен есть несколько сведений — и каждое считается отдельной записью.

Почему у одной песни несколько версий — v.1, v.2, v.3?

Потому что сведений было несколько и ни одно не выбросили. Версии отличаются не громкостью, а характером: где-то другой темп, где-то иначе поставлен голос, где-то убран целый слой. У одной песни в каталоге бывает и две версии, и десяток.

Плеер знает, что это одна песня, и не ставит её версии подряд. Пока не отыграли все остальные песни станции, второе сведение не появится.

Как выбирается следующий трек?

По правилу эпох. Станция проходит весь свой список песен по одному разу, и только после этого начинает новый круг — уже с другими версиями. Внутри песни версии берутся не по порядку, а по своей карусели, поэтому два вечера подряд не совпадут.

Правило одинаково работает и когда треки идут по списку, и когда включено перемешивание. Позиция в эпохе хранится в браузере и переживает перезагрузку страницы.

Почему нет рекламы и на чём вы тогда зарабатываете?

Экосистема зарабатывает на памяти, а не на музыке: тариф Spark стоит $15 в месяц, Family Archive — $100 в месяц, Digital DNA — $1 000 разово за устройство и далее $200 в месяц. Эфир к оплате не привязан.

Радио здесь работает как витрина. Проще один раз дать послушать, что получается у человека и ИИ вместе, чем объяснять это тремя страницами текста.

Можно ли скачать трек к себе?

Плеер стримит, кнопки «скачать» в нём нет. Зарегистрированный слушатель может сохранить трек к себе в личный кабинет и вернуться к нему оттуда.

Если файл нужен для чего-то ещё — напишите на contact@codeofdigitaleternity.com и расскажите, для чего. Готовой публичной лицензии у нас пока нет, и обещать её раньше времени не хочется.

Играет ли эфир, когда экран погас?

Плеер отдаёт системе название трека, исполнителя и позицию, поэтому пауза, перемотка и переход к следующей песне работают с экрана блокировки, с кнопок на наушниках и с руля в машине.

На компьютере вкладку можно свернуть или увести на другой рабочий стол — звук останется. Пробел ставит паузу, стрелки перематывают, клавиша M выключает звук.

Сколько интернета уходит на час эфира?

Поток идёт с переменным битрейтом, в среднем около 182 кбит/с. Это примерно 80 мегабайт в час — за восьмичасовой рабочий день выходит около 640 мегабайт.

Для домашнего интернета величина незаметная, для мобильного тарифа с лимитом её стоит держать в голове. Таймер сна помогает не проиграть эфир в пустую комнату всю ночь.

Что будет, если интернет моргнёт?

Плеер сделает до трёх попыток догрузить тот же файл. Если не вышло — перейдёт к следующему треку сам, без сообщений об ошибке.

Отдельно ловится случай, когда файл вроде бы грузится, а позиция стоит на месте: после двенадцати секунд без движения дека считается мёртвой и эфир идёт дальше.

Почему все треки звучат одинаково громко?

У каждого файла в каталоге прописан свой коэффициент громкости, и плеер применяет его при запуске трека. Значения лежат примерно от 0,65 до 1,0.

Коэффициент работает только на понижение: тихие записи не вытягивают усилением, а громких приглушают. Иначе вместе с музыкой поднимался бы шум.

Можно ли включать это в кафе или подложить под видео?

Права на музыку не разбросаны по лейблам — она вся наша, поэтому вопрос решается одним письмом, а не запросом в общество по коллективному управлению правами.

Напишите на contact@codeofdigitaleternity.com и опишите, где именно хотите её использовать. Отдельной публичной лицензии на сайте пока нет — как только появится, она будет здесь же.

Почему станция называется «Vol. 1»?

Потому что это первый том — всё, что было написано за первый год работы, сложенное в один длинный список без разбора по альбомам. Названия станций мы не переводим и не переименовываем: под этими именами они существуют в плеере, и путаницы между сайтом и эфиром быть не должно.

По той же причине в списке треков встречаются русские, английские, испанские и французские названия рядом. Песни писались на том языке, на котором пришли, и раскладывать их по национальным полкам никто не стал.

Появятся ли новые треки и станции?

Каталог пополняется по мере того, как пишутся новые песни, и каждое новое сведение попадает в ротацию наравне со старыми. Дат и обещаний здесь не будет: музыка не выходит по расписанию.

Сейчас в эфире четыре станции и 596 записей. Если число изменится, оно изменится и на этой странице — цифры на сайте берутся из того же каталога, который слушает плеер.

Что такое $GALATIN и при чём тут радио?

$GALATIN — токен экосистемы CODE Eternal в сети Solana с жёстко ограниченной эмиссией: 10 000 000 000 и ни одним больше. Поступления делит смарт-контракт: 5 % Фонду Основателя, 5 % в сжигание, 15 / 7 / 3 % рефералам L1 / L2 / L3, 65 % в казначейство на выкуп AR для вечного хранения в Arweave.

К эфиру это не относится никак: радио не просит кошелёк, не показывает балансов и не требует ничего подключать. Токен живёт на соседних страницах экосистемы — там, где речь идёт о памяти, а не о музыке.