Рейтинг@Mail.ru
[Войти] [Зарегистрироваться]

Наши друзья и партнеры

UnixForum
Беспроводные выключатели nooLite купить дешевый 
компьютер родом из Dhgate.com Смотрите описание Вечерние платья больших размеров на нашем сайте.

Lines Club

Ищем достойных соперников.

Библиотека сайта или "Мой Linux Documentation Project"

Создайте в Linux свою собственную музыкальную интернет-радиостанцию с помощью Shoutcast

Оригинал: "Setup your own Internet music radio station using Shoutcast in Linux"
Автор: Daniel T
Дата публикации: 7 December, 2011
Перевод: Н.Ромоданов
Дата перевода: февраль 2012 г.

Помимо веб-сайта сервер, на котором расположен этот блог (блог с оригиналом статьи — прим.пер.), также ведет музыкальное интернет вещание. Вы видите кнопку "Listen Music" в правом верхнем углу главной страницы - http://danasmera.com:8000/listen.pls?sid=1 ? Все это работает на микроприложении веб сервиса AWS ec2, для которого не требуется больших затрат. Так как же превратить ваш общедоступный сервер в интернет-радио, которое будет доступно с персонального компьютера, ноутбука или мобильного телефона? Это очень просто, и самыми популярными решениями являются пакеты Ice cast и shoutcast. Ниже мы расскажем, как вы сможете настроить радиовещание в сети интернет с использованием пакета shoutcast.

1. Добавляем пользователя shoutcast

#useradd shoutcast 

или

#adduser shoutcast

и

cd /home/shoutcast

2. Загружаем пакет shoutcast

Перейдите по ссылке http://www.shoutcast.com/broadcast-tools и загрузите распределенный сетевой аудиосервер SHOUTcast Distributed Network Audio Server (DNAS).

#wget -c http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_x64_07_31_2011.tar.gz (Для linux машин с 64-разрядной архитектурой)

#wget -c http://download.nullsoft.com/shoutcast/tools/sc_serv2_linux_07_31_2011.tar.gz (Для linux машин с 32-разрядной архитектурой)

Если вы планируете передавать в формате mp3, вам потребуется транскодер SHOUTcast Transcoder (SC_TRANS)

#wget -c http://download.nullsoft.com/shoutcast/tools/sc_trans_linux_x64_10_07_2011.tar. (Для linux машин с 64-разрядной архитектурой)

#wget -c http://download.nullsoft.com/shoutcast/tools/sc_trans_linux_10_07_2011.tar.gz (Для linux машин с 32-разрядной архитектурой)

3. Распаковываем архив с программами пакета shoutcast (в моем случае, это 64-разрядная версия)

#tar xzvf sc_serv2_linux_x64_07_31_2011.tar.gz
#tar xzvf http://download.nullsoft.com/shoutcast/tools/sc_trans_linux_x64_10_07_2011.tar.gz

4. Настало время отредактировать два важных конфигурационных файла

a. Файл sc_serv_basic.conf

logfile=logs/sc_serv.log
w3clog=logs/sc_w3c.log
banfile=control/sc_serv.ban
ripfile=control/sc_serv.rip
publicserver=always
password=yourpasswordhere #этот пароль используется в sc_trans, убедитесь, что это тот же самый пароль, что и в sc_trans_basic.conf
adminpassword=yourpasswordhereagain #этот пароль используется для доступа с помощью вашего браузера на административную страницу
streamid=1
streampath=/test.aac
streamauthhash_1=AcMnKLMrYVmK2NlR9W8j #уникальное значение для каждой станиции; необходимо если вы планируете сделать вашу станцию общедоступной.

b. Файл sc_trans_basic.conf

logfile=logs/sc_trans.log
calendarrewrite=0
encoder_1=aacp ## загруженные на сервер музыкальные файлы mp3, которые будут воспроизводиться как AAC
bitrate_1=56000
outprotocol_1=3
serverip_1=127.0.0.1 ## ip адрес локального сервиса
serverport_1=8000
uvoxauth_1=yourpasswordhere ## Этот пароль должен быть точно таким, как ‘password’ в файле sc_serv_basic.conf
uvoxstreamid_1=1
endpointname_1=/Bob
streamtitle=Eritrean and Ethiopian Guayla
streamurl=http://danasmera.com:8000/listen.pls?sid=1
genre=Tigrigna Guayla
playlistfile=playlists/main.lst ## в этом файле указывается путь к музыкальным файлам, которые вы загрузите позже.
adminport=7999
adminuser=administrator
adminpassword=yourdminpasshere

5. Закачиваем на сайт ваши музыкальные файлы

Загрузите все музыкальные файлы в директорий /home/shoutcast/music. Используйте для этой задачи любую клиентскую программу sftp, например, winscp или filezilla. Смотрите пример:

root@danasmera:/home/shoutcast# ls -al /home/shoutcast/music/
-rw-r–r– 1 shoutcast shoutcast 6418432 2011-09-07 02:13 abrahamAF.mp3
-rw-r–r– 1 shoutcast shoutcast 7345261 2011-11-22 23:41 Abreham-vol2.mp3
-rw-r–r– 1 shoutcast shoutcast 6222993 2011-11-22 23:41 asmera.mp3
-rw-r–r– 1 shoutcast shoutcast 3197056 2011-09-13 02:56 Bebizelenayo.mp3
-rw-r–r– 1 shoutcast shoutcast 5890765 2011-11-22 23:41 Bereket1.mp3

6. Заполните ваш файл плейлистов — укажите в нем полный путь к музыкальным файлам, расположенным на сервере

a. Все музыкальные файлы, расположенные в определенном директории, например, /home/shoutcast/music; предполагается, что формат файлов - mp3

#find /home/shoutcast/music/ -type f -name "*.mp3" -exec ls -1 {} \; > /home/shoutcast/playlists/playlist.lst

b. Музыкальные файлы, расположенные в других директориях на сервере; предполагается, что формат файлов - mp3

#find / -type f -name "*.mp3" -exec ls -1 {} \; > /home/shoutcast/playlists/playlist.lst

7. Задаем права доступа к файлам и настраиваем брендмауэр

a. Права доступа к файлам

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

#chown -R shoutcast:shoutcast /home/shoutcast

b. Откройте порт 8000 и 8001

#iptables -A INPUT -p tcp -i eth0 --dport 8000 -m state --state NEW -j ACCEPT (-i: может быть другим в зависимости от того, какая у вас используется интерфейсная сетевая карта, например, eth1, eth2 …)
#iptables -A INPUT -p tcp -i eth0 --dport 8001 -m state --state NEW -j ACCEPT

В случае, если используются сервера Amazon ec2, вам потребуется для определенной группы безопасности, в которой работает сервер, открыть порт 8000. Доступ к этой настройке есть в консоли веб управления AWS.

8. Запускаем сервис shoutcast

#cd /home/shoutcast
#./sc_serv sc_serv_basic.conf > /dev/null 2>&1 &
#./sc_trans sc_trans_basic.conf > /dev/null 2>&1 &

С помощью netstat проверяем, прослушиваются ли указанные порты

root@danasmera:/home/shoutcast# netstat -talpn |grep sc_
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 1075/sc_serv
tcp 0 0 0.0.0.0:8001 0.0.0.0:* LISTEN 1075/sc_serv 

9. Чтобы сделать ваше shoutcast-радио общедоступным, зарегистрируйте его на сайте yp.shoucast.com

Чтобы это сделать, следуйте инструкциям, изложенным на этой wiki-странице — смотрите http://wiki.winamp.com/wiki/SHOUTcast_Authhash_Management. Одним словом, перейдите на свою административную страницу, например, http://yourip-or-domain:8000/admin.cgi.

Щелкните по ссылке "Create Authhash" ("Создать учетную запись") и после того, как вы заполните форму, удостоверьтесь, что в ваш файл sc_serv_basic.conf была добавлена запись с параметром streamauthhash_1.

10. Наслажлаждайтесь музыкой!

Один из способов прослушать музыку — это самым обычным образом перейти в браузере по ссылке, например, http://danasmera.com:8000/listen.pls?sid=1 или http://yourip-or-hostname:8000/listen.pls?sid = 1. Но наиболее удобный способ, это использовать на вашем мобильном телефоне приложение, позволяющее найти на желтых страницах shoutcast вашу станцию и добавить ее в список любимых станций. В мобильных телефонах с системой Android скачайте из электронного магазина Market приложение "A Online Radio" ("Интернет Радио"), откройте его и выполните поиск по ключевому слову. В моем случае это может быть слово "tigrigna" или "guayla", то есть то ключевое слово, которое я добавил, когда регистрировал свою станцию на желтых страницах. Станция появится в результатах поиска и чтобы ее воспроизвести, просто щелкните мышкой по ссылке. Для iphone вы можете воспользоваться приложением "shoutcast".

Наконец, просматривайте ваши журнальные файлы, находящиеся в директории /home/shoutcast/logs, в них вы найдете некоторую информацию, в том числе то, какие музыкальные файлы воспроизводились, ip адреса ваших слушателей и т.д. Например, вы можете с помощью следующей команды отсортировать ip адреса слушателей:

#less sc_serv* | grep -i client | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr

И, последнее, но не менее важное - прежде чем начать вещание произведений, созданных другими, изучите законы об авторском праве, действующие в вашей стране!


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

Комментарии отсутствуют