Лийся пісня, або сервер потокового аудіо своїми руками

Лийся пісня, або сервер потокового аудіо своїми руками

Сьогодні розберемося як створити сервер, який буде транслювати аудіопотоки.

Єдиний конфігураційний файл icecast.xml має однакову структуру як для Linux, так і для Windows. Складається з декількох секцій, в яких згруповані параметри, схожі за призначенням. Значення всіх параметрів описувати навряд чи доцільно, тому що назва говорить сама за себе, зупинюся лише на короткій характеристиці і тих параметрах, на які слід звернути увагу. Перша секція файлу називається limits, в ній описуються параметри підключення клієнтів, таких як максимальне їх число, тайм-аут, після якого клієнт відключається, якщо зв'язок з ним перервався, розмір черги, тощо. Змінювати їх варто тільки при великій кількості користувачів і поганих каналах (в перевантажених мережах). Наступна секція authentication містить паролі і користувачів, що мають доступ до сервера для тих чи інших цілей. В поле source-password прописується незашифрований пароль для source client, ім'я користувача, яке використовується джерелами «source», поле relay-password на даний момент не використовується, поля admin-user і admin-password містять ім'я користувача і пароль для адміністрування сервера.

Налаштовуємо джерело інформації

В принципі можна приєднатися до будь-якого сервера трансляцій, прописавши параметри в секції relay, і більше ні про що не турбуватися. Але будемо розбиратися, як організувати трансляцію самому.

До речі, джерело інформації не обов'язково повинен знаходитися на одному і тому ж комп'ютері. Для прикладу займемося налаштуванням IceS. На даний момент є дві версії IceS. Версія 0.3, розвиток якої призупинено, призначена для створення mp3-потоків, і версія 2.0, яка вміє транслювати тільки OggVorbis, через малий попит підтримка mp3 була прибрана. Якщо є необхідність роботи як з mp3, так і OggVorbis, то можливе використання цих двох програм паралельно.

Інший варіант, взяти ezstream, що підтримує два формати (як розумієте, одне джерело - одна точка монтування) і до того ж дуже простий в налаштуваннях. Для установки, крім перерахованих вище бібліотек, знадобиться libshout 2.0, посилання на яку знайдете на сайті IceCast. Далі встановлюємо бібліотеку і IceS звичайним чином, ніяких особливостей тут немає. Джерелом даних для IceS може служити компакт-диск, файли на жорсткому диску і будь-який пристрій, з якого можна зняти інформацію.

Тут варто зазначити, що майже всі source clients дозволяють взяти інформацію зі свого стандартного входу, обробити і видати на стрімсервер. Для налаштування параметрів IceS використовується файл у форматі XML, зразки якого після установки ви знайдете в / usr / local / share / ices. Тут їх два: ices-live.xml містить базові настройки для Live-трансляції (мікрофон, СD-ROM і ін.), А в ices-playlist.xml ви знайдете шаблон, який використовується при трансляції з файлів, записаних в плейлист. Відрізняються вони лише розділом input, в якому описується джерело інформації. Все описувати теж не буду, зупинюся лише на параметрах, які потребують пояснення.

Для запуску в якості демона встановлюємо back ground в 1.

Далі описуються параметри виведення логів, при первісної налагодженні встановіть consolelog в 1, при цьому всі помилки будуть виводитися на консоль.

Секція stream описує переданий потік.

Тут впишіть назву потоку, воно буде видно в програвачі

Жанр мелодій

Короткий опис потоку