Как создать своё интернет-радио | GeekBrains
С автодиджеем, прямыми трансляциями и доступом с любого аудиопроигрывателя
https://d2xzmw6cctk25h.cloudfront.net/post/2103/og_image/142681ae6834115761f3b06efc16b5ac.jpg
Привет, я Антон Чигарёв, системный администратор. В этом посте я расскажу, как создать свою радиостанцию и вещать через интернет. Вы сможете организовать офисное, студенческое или просто частное радио, доступное по всему миру — в любом медиапроигрывателе. Статья рассчитана на новичков, которым нужно доходчивое руководство с нуля.
Небольшая предыстория. У меня есть проект Blind.games, посвящённый компьютерным играм для слепых людей. Это не только сайт, но и голосовой портал на базе TeamTalk, где собирается сообщество. Я, как и многие пользователи моего проекта, тотально слепой, но это не мешает мне интересоваться музыкой и системным администрированием. Периодически мы стримим игры, рассказываем о настройке программ, проводим встречи с интересными людьми. И нам нужно было своё радио, чтобы по расписанию транслировать записи передач, а в остальное время — музыку в случайном порядке, но без повторов. Так я получил опыт, которым сейчас хочу поделиться.
В этой статье я решил систематизировать и доступно изложить информацию, которую собрал из множества источников, проверил на практике и немного дополнил. Рассмотрим весь процесс создания радио: от первых шагов до прослушивания результата.
Что нужно для старта
Всё, что нам понадобится, — это сервер под управлением Debian 9 и две бесплатные программы:
- Icecast — с её помощью организуем вещание, будем управлять аккаунтами диджеев и настройками;
- Liquidsoap — автоматический диджей, который заполнит свободную часть эфира записями из нашей базы. Он будет играть по расписанию или случайным образом.
Грабли, которые мы обойдём
Когда хочешь чередовать живое и автоматическое вещание, сведений из документации вдруг оказывается маловато. Например, сначала я не понимал, как запланировать регулярный выход передачи по определённым дням недели — допустим, по вторникам.
Потребовалось время, чтобы разобраться, как работают компрессоры и эквалайзеры. Думаю, этой теме можно посвятить отдельный пост.
Сначала я не знал, что Liquidsoap поддерживает работу с переменными. Примеры кода вы не раз увидите ниже.
Но главная проблема, которая никак не хотела решаться, — это невозможность автоматически выключить музыку с началом запланированной передачи. По умолчанию музыка становилась тише, но продолжала играть. Решение мне позже подсказал знакомый, а я пишу уже с учётом того, чтобы подобной ситуации не возникло.
Выбираем сервер
Не буду рекламировать хостинг-провайдеров, но хочу обратить ваше внимание на параметры, важные для работы интернет-радио.
- Поддержка аппаратной виртуализации. Советую брать сервер с KVM, потому что при контейнерной виртуализации (на Open VZ) могут возникать проблемы с Liquidsoap. Я с этим сталкивался.
- Оперативная память и процессор. Если вы планируете изредка вещать вживую, а остальное поручить программе, для стабильной работы понадобятся минимум 2 ГБ оперативки и двухъядерный процессор. Обычно Liquidsoap и Icecast не жадны до ресурсов, но когда надо запустить несколько станций или потоков с разным битрейтом, стоит брать сервер помощнее.
Готовимся к работе
Если вы только приобрели сервер и ещё не настроили Debian, нужно убедиться, что система дружит с кириллицей. Мы ведь хотим, чтобы русские названия композиций отображались корректно.
Подключаемся к серверу и быстренько наводим порядок. Для начала устанавливаем обновления. В терминале пишем:
apt-get update apt dist-upgrade
Дальше смотрим доступные в системе локали:
locale -a
Получаем что-то вроде этого:
C C.UTF-8 en_US.utf8 POSIX ru_RU.utf8
Это значит, что система локализована. Если у вас нет, можете перенастроить локаль командой:
dpkg-reconfigure locales
Дальше, чтобы включить поддержку кириллицы, выберите ru_RU.UTF-8.
И тот же вариант задайте по умолчанию.
Сервер настроен!
Устанавливаем софт
Начнём с Icecast:
apt-get install icecast2
Вас спросят, хотите ли вы сконфигурировать программу. Отвечайте как угодно — окно с настройками всё равно не появится. По крайней мере, я ни разу не дождался его в Debian 9. Но это не критично.
Переходим к следующему шагу — обеспечиваем программе автозапуск. Для этого в любом текстовом редакторе (я использую nano) открываем файл:
nano /etc/default/icecast2
Это именно файл, просто разрешение не указано.
В самом конце находим параметр ENABLE. Важно, чтобы он имел значение true. Если видите false — меняйте. Дальше сохраняем файл нажатием CTRL+O и выходим из редактора (CTRL+X).
Настраиваем Icecast
Если у вас, как и у меня, не было возможности сконфигурировать программу в процессе установки, пора лезть в настройки. Все они хранятся в файле icecast.xml в директории /etc/icecast2/.
Многие параметры в этом файле прокомментированы — расскажу лишь о тех, без которых не обойтись на старте. За подробностями не грех заглянуть в официальную документацию, а если у вас появятся вопросы, я готов детально разобрать функции Icecast в отдельной статье.
Сначала проверим максимально допустимое число одновременно подключённых слушателей:
<clients>100</clients>
По умолчанию — сто, но ориентируйтесь на ширину канала вашего сервера.
В блоке authentication меняем все данные на свои. Параметру bind-address в качестве значения присваиваем IP-адрес нашего сервера.
Теперь внимательно смотрим на блок mount. Здесь мы пропишем точки монтирования для источников вещания. Это важный момент, без которого не смогут выйти в эфир наши диджеи, в том числе и AutoDJ.
В коде ниже я создаю несколько точек монтирования с индивидуальными параметрами:
<mount> <mount-name>/autodj</mount-name> <password>ваш_пароль</password> <max-listeners>500</max-listeners> <max-listener-duration>3600</max-listener-duration> <dump-file>/tmp/dump-live.mp3</dump-file> <intro></intro> <charset>ISO8859-1</charset> <public>1</public> <stream-name>BestRadio</stream-name> <stream-description>Лучшее радио галактики.</stream-description> <stream-url>http://Ваш.IP:8000/autodj.mp3.m3u</stream-url> <genre>Other</genre> <bitrate>128</bitrate> <type>application/mp3</type> <subtype>mp3</subtype> <burst-size>65536</burst-size> <mp3-metadata-interval>4096</mp3-metadata-interval> </mount> <mount> <mount-name>/live</mount-name> <password>ваш_пароль</password> <max-listeners>500</max-listeners> <max-listener-duration>3600</max-listener-duration> <dump-file>/tmp/dump-live.mp3</dump-file> <intro></intro> <fallback-mount>/autodj</fallback-mount> <fallback-override>1</fallback-override> <fallback-when-full>1</fallback-when-full> <charset>ISO8859-1</charset> <public>1</public> <stream-name>MyRadio</stream-name> <stream-description>Прямая трансляция.</stream-description> <stream-url>http://Ваш.IP:8000/autodj.mp3.m3u</stream-url> <genre>Other</genre> <bitrate>128</bitrate> <type>application/mp3</type> <subtype>mp3</subtype> <burst-size>65536</burst-size> <mp3-metadata-interval>4096</mp3-metadata-interval> </mount>
Как вы могли догадаться, точка autodj подключена, когда в эфире никого нет. Если в это время кто-нибудь у себя в проигрывателе откроет ссылку типа http://ваш-ip:8000/live, он услышит автоматическое вещание. Но стоит вам выйти в эфир с точки live — autodj отключится.
Если вы хотите ограничить доступ к настройкам Icecast, обратите внимание на блок
Осталось сохранить результат. С Icecast для первого раза достаточно. Теперь давайте позаботимся об автоматическом диджее.
AutoDJ
Устанавливаем Liquidsoap из репозитория Debian — это легко, проблем возникнуть не должно:
apt-get install liquidsoap
Теперь создадим каталоги для хранения музыки, заставок (джинглов) и передач. У себя я завёл папку Content, а в ней предусмотрел следующие субдиректории:
- Music — сюда я скидываю все музыкальные треки;
- Programs — здесь лежат записи передач;
- Jingles — папка с «рекламными» объявлениями, которых у нас от силы штук пять, чисто для ознакомительных целей;
- Jokes — сюда гружу отрывки из разных стендапов для проигрывания в определённое время.
Давайте реализуем это в терминале:
mkdir /home/Content/Jingles mkdir /home/Content/Programs mkdir /home/Content/Music
Чтобы ускорить и упростить заливку файлов, можете настроить FTP, но это отдельная тема. А пока займёмся настройками программы.
Конфигурационные файлы имеют расширение .liq и хранятся в директории /etc/liquidsoap. Для вашего удобства там лежит пример — файлик radio.liq.example. Его можно редактировать прямо на сервере или загрузить на свой компьютер.
Пересохраняем файл с любым новым именем, допустим, my-dj.liq. Вот как может выглядеть содержимое:
#!/usr/bin/liquidsoap -d #set("init.daemon",true) #set("init.daemon.pidfile",false) set("log.file",false)
Чтобы вести лог работы программы, раскомментируйте эти строки:
#set("log.file.path","/var/log/liquidsoap/basic.log") #set("log.stdout",true) #set("log.level",4)
Блок ниже — для тех, кому нужен telnet.
#set("server.telnet.bind_addr","127.0.0.1") #set("server.telnet",true) #set("server.telnet.port",1234)
Я включаю поддержку OGG и MP3. OGG удобен, когда места мало, а качество некритично.
set("decoder.file_decoders",["META","MAD","OGG"]) set("decoder.file_extensions.mad",["mp3","mp2","mp1"]) set("decoder.file_extensions.ogg",["ogv","oga","ogx","ogg","opus"]) set("decoder.mime_types.ogg",["application/ogg","application/x-ogg","audio/x-ogg","audio/ogg","video/ogg"]) set("decoder.mime_types.mp3",["audio/mpeg","audio/MPA"])
Настраиваем отображение данных о записи: берём инфу из метатегов.
def update_title(m) = title = m["title"] if title == "" or title == "Unknown" then content = m["filename"] content = basename(content) content = get_process_output("STR=\""^content^"\"; echo ${STR%.*}") content = string.recode(out_enc="UTF-8", content) [("title", content)] else sArtist = string.recode(out_enc="UTF-8", m["artist"]) sTitle = string.recode(out_enc="UTF-8", m["title"]) [("title", sTitle), ("artist", sArtist)] end end set("tag.encodings",["UTF-8"])
Указываем путь до папки с музыкой и параметры воспроизведения.
music = nrj(playlist(mode='randomize', reload_mode='rounds=1', '/home/Content/Music'))
Когда все треки отыграют, рандомайзер перемешает их и снова запустит. Теперь укажем путь к джинглам.
jingle = mksafe(playlist("/home/Content/Jingles"))
Чтобы проигрывать записи по расписанию, свяжем их с переменными. Можно использовать одно и то же имя файла для контента одного типа. Например, когда я хочу добавить в расписание аудиокнигу, я загружаю файл в папку Programs и переименовываю его в book.mp3.
book = single("/home/Content/Programs/book.mp3") jokes = single("/home/Content/Programs/jokes.mp3") repeat = single("/home/Content/Programs/archive_recording.mp3")
Дальше укажем, с какими интервалами играть заставки. Например, я ставлю один джингл на каждые пять треков.
radio = rotate(weights = [1, 5],[jingle, music]) radio = crossfade(fade_out = 2.0, fade_in = 1.0, start_next = 0.5, radio) radio = mksafe(radio) radio = map_metadata(update_title, radio) default = fallback(track_sensitive=false,[
Настроим программу передач. Тематические блоки разделим запятыми. В понедельник поставим книгу (путь к файлу уже привязан). Во вторник — шутки. В воскресенье — повтор ранее записанной передачи.
switch([ ({1w13h00m00s}, book), ({2w15h00m00s}, jokes), ({7w18h00m00s}, archive_recording) #Xw — это день недели, где 1 — понедельник. #Xh — час, Xm — минуты, Xs — секунды. ]), radio ]) output.icecast(%mp3(bitrate=128, samplerate=44100, stereo=true),
Внесём данные, уже прописанные в конфигурации Icecast.
mount = "autodj", encoding = "ISO-8859-1", default, host = "ваш_домен", port = 8000, password = "ваш_пароль", genre="other", name="My radio", fallible = true, icy_metadata="true", public=true, url="http://ваш-url", description="Вы слушаете BestRadio.")
Всё сохраняем. Ура! Мы готовы тестировать радио.
Любуемся результатами
Запускаем сначала Icecast:
/etc/init.d/icecast2 start
Теперь Liquidsoap:
service liquidsoap start
Создаём у себя на компьютере текстовый файл и вносим туда строку вида:
http://ваш-ip:8000/autodj
Сохраняем файл с расширением .m3u и открываем его в аудиопроигрывателе. Если в папке Music лежат треки, радио должно играть.
На этом пока всё. Надеюсь, материал был вам полезен. Если хотите, чтобы я раскрыл какие-то темы подробнее, оставьте комментарий. А пока — успеха в запуске вашего радио!
Хотите свободно работать с Debian и другими дистрибутивами Linux? Приходите учиться на профессию «системный администратор», и через 9 месяцев вы не только освоите Linux, но и сможете обеспечивать бесперебойную работу компьютерной техники и ПО в любой организации!
Как самому начать онлайн вещание ? — Радио в Интернете
? LiveJournal- Find more
- Communities
- RSS Reader
- Shop
- Help
- Login
- CREATE BLOG Join
- English
(en)
- English (en)
- Русский (ru)
- Українська (uk)
- Français (fr)
- Português (pt)
- español (es)
- Deutsch (de)
- Italiano (it)
- Беларуская (be)
Как работает радио через Интернет, как его создать, что значит битрейт, настройка сайта для радио. Реклама и правовые аспекты радио вещания в сети Интернет.
Создать свое радио в Интернете очень просто!
Знаете ли вы что: практически каждый пользователь ПК может создать Интернет-вещание!
В этой статье описаны базовые принципы работы Интернет-радио и первые шаги, которые позволят Вам создать успешный проект по вещанию в Сети:
- Как работает Интернет-Радио
- Настройка Web-сайта
- Реклама своего радио
- Правовые аспекты
Как работает Интернет-Радио
В Сети вы можете легко транслировать аудио-потоки, которые могут состоять из хранимого контента (MP3 файлы), или живого эфира (Ваш голос через микрофон). Основные компоненты Интернет-вещания:
- Источник (Вы)
Ваш компьютер (подключенный к Интернет) используется для микширования всех аудио источников, проходящих через Вашу звуковую карту — это может быть проигрываемый музыкальный файл, живой голос с микрофона или другой источник — CD плеер и так далее. Компьютер превращает звуковую информацию со звуковой карты в «поток» и отправляет на наш сервер «налету». Если вы по каким-то причинам не можете вести вещание со своего компьютера, то возможен вариант вещания с сервера, при котором аудио-контент закачивается на наш сервер и воспроизводится непосредственно с него. - Сервер
Интернет-Радио сервер под управлением нашей радио-платформы принимает поток с Вашего компьютера и переадресует слушателям. Настройки сервера позволяют управлять мета-данными потока (жанр, название, другие параметры), качеством вещания и массой других параметров. - Слушатели (Пользователи Интернет)
Любой пользователь Интернет по всему миру может подключиться к нашему серверу и начать прослушивать Ваше вещание!
Что значит «Bitrate» (Качество, kbps)?
Звуковые потоки в сети Интернет кодируются (сжимаются) к определенному bitrate (битрейт), по сути этот термин
обозначает качество вещания потока, также как этот термин обозначает качество мп3 файла. Этот параметр
измеряется в kbps — kilo bits per second (килобайт в секунду) и практически значит, сколько килобит информации
отправляется слушателю, чем этот параметр выше — тем лучше качество, скажем, 128 kbps — уже близко к звучанию компакт-диска,
а самое низкое качество 24 kbps — больше всего похоже на звук из телефонной линии. Чем выше битрейт Вашего канала,
тем выше требования к каналу выхода в Интернет Ваших слушателей. Пользователи с модемным доступом не смогут
комфортно прослушивать вещание в более чем 24-32 kbps.
Большинство Интернет радио станций предлагают слушателю 2-3 канала в разном качестве, 24 или 32 kbps для Dialup пользователей
и 128 kbps для пользователей с высокоскоростным доступом в Сеть.
Как вещать?
Для вещания Вам необходимы специальные программы. Пример настройки самого простого клиента — Shoutcast DSP плагина для популярного плеера Winamp (эта программа и сам плагин распространяются бесплатно) описан здесь.
Настройка Web-сайта
Качественно изготовленный сайт — лучшее средство представления Вашего радио слушателям. Очень важно привлечь внимание к его главной особенности — Интернет-радио, и сделать не просто возможность прослушивания вещания, но и добавить обратную связь, дополнительную информацию о эфире (что сейчас в эфире, история последних песен), возможность просматривать плей-лист и голосовать за композиции и так далее. В осуществлении всех этих дополнительных возможностей мы Вам обязательно поможем, тем более что многие дополнительные услуги могут быть подключены бесплатно и моментально из вашей панели управления, благодаря нашей гибкой и открытой архитектуре.
Мы рекомендуем создать на сайте следующие основные компоненты:
- Страница прослушивания.
Этой странице стоит уделить самое большое внимание, следует предоставить возможность слушать Ваше вещание несколькими способами — встроенный в страницу Media плеер, ссылки на прослушивание различными плеерами (Winamp/iTunes/XMMS, Windows Media, Realplayer). Следует иметь в виду, что не все слушатели используют Windows с Winamp плеером, не стоит забывать о слушателях на платформах Mac, Linux. Radio-tochka.com предоставляет полный набор настроек из контрольной панели бесплатно, чтобы Ваше вещание устраивало как можно больше слушателей. - Контакты и/или обратная связь.
Самым ценным руководством и помощником Вашей радио станции являются отклики пользователей — их голоса, мнения и сообщения. Если слушателям нравится Ваш эфир, и они имеют возможность влиять на него или высказывать свое мнение — это заставит их возвращаться к Вам еще и еще. Следует включить форму обратной связи, которая позволит слушателям быстро и без проблем отправлять заявки ди-джею в эфир, или влиять на вещание программы ди-джея. - Страница плей-листа.
Полезной для посетителя будет возможность просмотреть новинки, песни, которые были в эфире чаще всего, рейтинг песен по результатам голосования, и просто полный плей-лист Вашего радио, чтобы слушатели имели представление о вещании. Если посетителям понравится то, что содержит Ваш плей-лист — то, скорее всего, они станут вашими слушателями. - Страница DJ.
Создайте страницу про Ди-джеев Вашего радио, список шоу, которые они ведут, расписание времени их передач. Слушатели, которые предпочитают конкретного Ди-джея, или радио-шоу будут возвращаться на Ваш сайт и слушать эфир.
Реклама своего радио
Раскрутка и реклама своей радио станции является самым сложным шагов в создании радио,
практически рекламу своего радио
нельзя прекращать, иначе угаснет приток новых слушателей.
На сайте shoutcast.com в разделе «directory listing» вы можете найти огромное количество различных радио станций,
среди которых большое количество станций с сотнями и тысячами активных слушателей, и еще больший список «аутсайдеров» с
количеством слушателей не более 10.
Нет ничего страшного в том, что Ваше радио слушает небольшое количество слушателей, более того — не следует ожидать тысяч
слушателей в первые же недели вещания, конечно, если вы не тратите колоссальные средства на рекламу.
Многие радио начинались с того, что просто транслировали радио друзьям, и в итоге доросли до огромных проектов. Яркий пример —
Интернет-радио radioparadise.com, которое полностью финансируется слушателями (бюджет —
примерно 50-70 тысяч долларов в месяц), при этом не содержит рекламы и включает в себя Интернет-магазин сувениров с символикой радио.
Некоторые способы раскрутки радио:
- Зарегистритуйте своё радио в нашем Каталоге Интернет Радио.
- Рекламируйте, рекламируйте, рекламируйте! Всеми возможными и доступными способами!
- Баннерная реклама.
- Прекрасной возможностью рекламы является организация чата, совмещенного с радио трансляцией. Также оставляйте рекламу в других чатах.
- Контекстная реклама в поисковых системах.
- Реклама радио непосредственно в эфире.
- Email (ни в коем случае не Spam).
- Новостные группы.
- Хорошее качество и контент обязательно привлекут слушателей!
Правовые аспекты
Наш проект не является ни в коей форме юридическим или консультационным органом по правовым и лицензионным вопросам, поэтому
всё указанное далее является только общей рекомендацией, и мы настоятельно рекомендуем получить консультацию в соответствующих
службах. Пожалуйста, не связывайтесь с нами по правовым вопросам, это не входит в сферу нашей деятельности.
Более подробно читайте в нашем Соглашении.
Трансляция в сети Интернет является ЛЕГАЛЬНОЙ в том смысле, что нет необходимости получать лицензию на обладание частотой в FM/AM диапазоне. В этом заключается преимущество Сети Интернет, так как она никому не принадлежит, и Вы можете использовать ее как Вам угодно, нет ограничений на количество потоков вещания и т.п.
ОДНАКО, если содержимое ваших потоков вещания содержит материалы, защищенные авторскими правами и у вас нет права на воспроизведение данного контента — вы рискуете и можете нарушить закон! Соответствующие права для частных лиц и организаций могут быть предоставлены соответствующими компаниями и организациями. Обычно необходимо оплатить взнос за объект права и далее вы сможете использовать его абсолютно легально. Более подробно Вы можете узнать на сайте РФА (Равноправный Фонографический Альянс) — fonogram.ru. Наша платформа предоставляет способ генерации отчетов в формате Excel для ведения отчетности по использованным произведениям.
Speaker – сервис для создания собственного радио
Хотите верьте, хотите нет, радиостанций, вещающих в эфир со всех концов земли намного больше, чем вы могли себе представить. Помимо известных каналов существует множество маленьких частных радиостанций, созданных группами энтузиастов и любителями одиночками.
Если хотите, вы тоже можете создать свое собственное радио. Как? Да очень просто. Для этих целей существуют специальные онлайн сервисы. Одним из них является Speaker. Этот бесплатный буржуйский сервис позволяет создавать, обрабатывать и распространять в эфир аудио любого содержимого.
Спикер обладает массой инструментов, предназначенных для микширования аудио, а также неплохой библиотекой звуковых эффектов, которые можно использовать при создании собственного радио-шоу. А еще Speaker предлагает небольшой виджет, который также можно будет встраивать в сайты и странички социальных сетей. Для создания своей радиостанции вам понадобятся только стабильное подключение к Интернету, хорошие наушники с микрофоном и, конечно же, учетная запись в сервисе.
Для создания аккаунта Speaker можно использовать учетную запись социальной сети Facebook. Вам нужно будет подтвердить соглашение использования, а затем нажать кнопку “Create account” после чего появится приветствие, за которым последует предложение выбрать основное направление вещания.
Музыка, спорт, наука – каждый найдет здесь, что ему по вкусу, хотя в принципе этот шаг можно пропустить. Да, также вам придется указать рабочий почтовый адрес и пароль к своему личному кабинету в Speaker.
Работа с сервисом начинается с создания плейлиста. После регистрации и входа в аккаунт, нажмите на расположенную в правом верхнем углу кнопку “Create”. При этом вам будет предложено два варианта – либо загрузить готовое аудио с компьютера, либо начать трансляцию прямо с консоли спикера. К загруженным аудио можно добавлять теги, описания, сортировать их по жанрам и так далее.
Несколько иначе дело обстоит с трансляцию с консоли спикера. Вначале вас попросят дать название вашему треку, после чего загрузится вот такая диджейская установка. Тут собственно и ведется вся работа.
Чтобы разобраться со всеми настройками, скорее всего вам придется повозиться, русский язык как-никак отсутствует, внятных инструкций тоже нет, так что придется до всего доходить самому.
Итог
В общем, вы можете проигрывать треки, производить микширование, одновременно что-то говорить в эфир, словом, все как в настоящем радио. Разумеется, при этом вы получите на свой канал ссылку, которой можете поделиться с вашими друзьями как в социальной сети Facebook, так и за ее пределами.
Официальный сайт сервиса: http://www.spreaker.com/