अपने खुद के रेडियो स्टेशन बनाने की प्रक्रिया में, विचारों का प्रवाह वेब इंटरफेस के माध्यम से प्रसारण तक पहुंच गया। पहले तो मैंने तैयार समाधान खोजने की कोशिश की, लेकिन रनेट में मुझे लगभग कुछ भी नहीं मिला। मैंने कार्यान्वयन विधि पर विचार करना शुरू कर दिया और सोर्सफ़ाइब्रिक से एयरटाइम के बारे में अंग्रेजी विकिपीडिया संस्करण में 18 जनवरी (18 जनवरी, 2011 तक - कैंपकास्टर) के एक लेख पर चमत्कारिक ढंग से ठोकर खाई।
एयरटाइम सुविधाएँ:- वेब इंटरफ़ेस के माध्यम से एक लाइव ग्रिड और प्लेलिस्ट बनाना;
- ब्राउज़र के माध्यम से संगीत डाउनलोड करें (समर्थन को खींचें और छोड़ें);
- मेजबानों का पंजीकरण जिनके पास व्यवस्थापक पैनल तक पहुंच है और वे पंखों का प्रबंधन कर सकते हैं;
- तृतीय-पक्ष साइटों के प्रसारण और पटरियों के शेड्यूल के साथ विजेट बनाना;
- पुनः प्रसारण के लिए प्रसारण रिकॉर्ड करने की क्षमता;
- एक ऑडियो स्ट्रीम प्रसारित करने के लिए कई विकल्प।
आधिकारिक निर्देशों में वर्णित न्यूनतम सिस्टम आवश्यकताएँ: 1Ghz प्रोसेसर और 512Mb RAM।
सर्वर विकल्प चुनें
पहला परीक्षण सर्वर:- OS: उबंटू-10.10-x86_64;
- सीपीयू: 500Mhz;
- मेमोरी: 256Mb;
- डिस्क स्थान: 5000Mb।
श्रोताओं के बिना बेकार का भार 90% तक पहुंच गया। सामान्य मोड में, सर्वर रेडियो सुनने के लिए आरामदायक समर्थन नहीं कर सकता था। और सभी प्रोग्राम मॉड्यूल लगभग 1GB पर कब्जा कर लेते हैं, जो कुल डिस्क स्थान का 20% है।
दूसरा सर्वर:- OS: उबंटू-10.10-x86_64;
- सीपीयू: 750Mhz;
- मेमोरी: 512Mb;
- डिस्क स्थान: 20Gb।
इस सर्वर ने बेहतर प्रदर्शन किया। निष्क्रिय होने पर, प्रोसेसर लोड औसतन 25% होता है, इसे कम संख्या में श्रोताओं के लिए सर्वर के रूप में उपयोग किया जा सकता है।
सर्वर सेटअप
सभी आवश्यक पैकेजों के साथ एयरटाइम मैन्युअल या स्वचालित रूप से स्थापित किया जा सकता है। किसी भी मामले में, आपको तैयार करने की आवश्यकता है, अर्थात्, रिपॉजिटरी की सूची में Surcefabric जोड़ें, क्योंकि उनके पास सभी आवश्यक पैकेज हैं।
$ nano /etc/apt/sources.list
उबंटू के लिए, लाइन जोड़ें:
deb apt.sourcefabric.org lucid main
#
deb apt.sourcefabric.org maverick main
डेबियन के लिए:
deb apt.sourcefabric.org squeeze main
रिपॉजिटरी की सूची अपडेट करना:
$ apt-get update
हस्ताक्षर कुंजी सेट करें:
$ apt-get install sourcefabric-keyring
प्लेलिस्ट, ट्रैक और उपयोगकर्ता जानकारी संग्रहीत करने के लिए Airtime PostgreSQL डेटाबेस का उपयोग करता है। इसलिए, हम इसे स्थापित करते हैं:
$ apt-get install postgresql
उपयोगकर्ताओं को प्रसारण सुनने के लिए, आपको एक स्ट्रीमिंग सर्वर स्थापित करना होगा। मैं इन उद्देश्यों के लिए Icecast2 का उपयोग करता हूं, क्योंकि यह कुछ सिस्टम संसाधनों को कॉन्फ़िगर करने और उपयोग करने के लिए बहुत सुविधाजनक है।
$ apt-get install icecast2
यदि ध्वनि कार्ड के ऑडियो आउटपुट के लिए प्रसारण की योजना बनाई गई है, तो आपको पल्सएडियो ऑडियो सर्वर को हटाने की आवश्यकता है, और इसके बजाय ALSA मिक्सर डालें।
$ apt-get purge pulseaudio
जीयूआई के लिए:
$ apt-get install gnome-alsamixer
कंसोल के लिए:
$ apt-get install alsa-utils
मैनुअल एयरटाइम इंस्टॉलेशन
सभी आवश्यक पैकेजों की स्थापना:
$ apt-get install apache2 curl daemontools daemontools-run ecasound \
gzip libao-ocaml libapache2-mod-php5 libcamomile-ocaml-dev libesd0 \
libmad-ocaml libmp3lame0 libmp3lame-dev libportaudio2 libsamplerate0 \
libsoundtouch-ocaml libtaglib-ocaml libvorbis-ocaml-dev mpg123 multitail \
odbc-postgresql oggvideotools openssl php-pear php5-curl php5-gd \
php5-pgsql poc-streamer pwgen python python-configobj python-mutagen \
python-pip python-setuptools rabbitmq-server tar unzip
इसके बाद, एयरटीमा के साथ काम करने के लिए पायथन के लिए आवश्यक मॉड्यूल स्थापित करें:
$ pip install kombu
$ pip install poster
फिंग स्थापित करें:
$ mkdir -p /tmp/pear/cache
$ pear channel-discover pear.phing.info
$ pear install phing/phing-2.4.2
डाउनलोड करें, अनपैक करें और एयरटाइम इंस्टॉल करें:
$ wget downloads.sourceforge.net/project/Airtime/1.8.1/Airtime-1.8.1.tar.gz
$ tar -xvzf Airtime-1.8.1.tar.gz -C /var/lib/
$ chown -R root.root /var/lib/Airtime/
$ cd /var/lib/Airtime/install/
$ php Airtime-install.php
हम अपाचे के साथ काम करते हैं। हम आवश्यक मॉड्यूल कॉन्फ़िगर करते हैं और वर्चुअल होस्ट कॉन्फ़िगरेशन बनाते हैं:
$ a2enmod php5 rewrite
$ nano /etc/apache2/sites-available/Airtime
खुली फ़ाइल में, लिखें:
<VirtualHost *:80> ServerName example.com ServerAdmin admin@example.com DocumentRoot /var/www/Airtime/public SetEnv APPLICATION_ENV "development" <Directory /var/www/Airtime/public> DirectoryIndex index.php AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
Apache को सेव और रीस्टार्ट करें
$ /etc/init.d/apache2 reload
हम PHP को Airtime के लिए कॉन्फ़िगर करते हैं, इसके लिए,
/etc/php5/apache2/php.ini फ़ाइल में,
आपको निम्न पैरामीटर खोजने और बदलने की आवश्यकता है:
memory_limit = 256M
magic_quotes_gpc = Off
file_uploads = On
upload_tmp_dir = /tmp
phar.readonly = Off
इसके अलावा हमें Icecast2 को कॉन्फ़िगर करने की आवश्यकता है, इसके लिए हम कॉन्फ़िगरेशन फ़ाइल
/etc/icecast2/icecast.xml को संपादित करने के लिए
जाएंगे । तीसरे पक्ष के अनुप्रयोगों से प्रसारण के लिए पासवर्ड दर्ज करना सबसे महत्वपूर्ण है, इसे अन्य कॉन्फ़िगरेशन फ़ाइलों में भी पंजीकृत करने की आवश्यकता होगी। हम <स्रोत-पासवर्ड>, <रिले-पासवर्ड> और <व्यवस्थापक-पासवर्ड> टैग के बीच पासवर्ड सेट करते हैं
<authentication> <source-password>somepassword</source-password> <relay-password>somepassword</relay-password> <admin-user>admin</admin-user> <admin-password>adminpassword</admin-password> </authentication>
उसके बाद, हमें icecast2 के लॉन्च को सक्षम करने की आवश्यकता है:
$ nano /etc/default/icecast2
स्ट्रिंग को बदलें
सक्षम = असत्य के साथ
गलत = सही , सहेजें और पुनः आरंभ करें IceCast2:
$ service icecast2 start
अगला, हमें लिक्विडस को कॉन्फ़िगर करने की आवश्यकता है, जो एयरटाइम से आइसकैस्ट 2 तक प्रवाह को निर्देशित करेगा:
$ nano /etc/Airtime/liquidsoap.cfg
"स्ट्रीम सेटिंग्स" अनुभाग में
, हम icecast2 के लिए एक्सेस पैरामीटर लिखते हैं।
# , icecast.xml
Icecast_pass = “somepassword”
# , .
# Ogg Vorbis MP3. MP3,
# .
output_sound_device = false
output_icecast_vorbis = false
output_icecast_mp3 = true
हम सर्वर को पुनरारंभ करते हैं और हम प्रसारण शुरू कर सकते हैं।
मौन स्थापना
$ mkdir -p /tmp/pear/cache
$ apt-get install Airtime
स्थापना के दौरान, आपको Apache2 और RabbitMQ के कॉन्फ़िगरेशन के बारे में प्रश्न पूछे जाएंगे।
स्थापना के बाद, आपको PHP, IceCast2, Liquidsoap और Airtime को कॉन्फ़िगर करने की आवश्यकता है। हम सर्वर को पुनरारंभ करते हैं और हम प्रसारण शुरू कर सकते हैं।
वेब पैनल के माध्यम से हवा की स्थापना
हम वर्चुअल होस्ट पर जाते हैं, जो
/ etc / apache2 / sites-available / Airtime (हमारे मामले में,
example.com ) में पंजीकृत है, हमें प्राधिकरण फ़ॉर्म द्वारा स्वागत किया जाता है। शुरुआत से ही, उपयोगकर्ता नाम और पासवर्ड "व्यवस्थापक" हैं।
लॉग इन करने के बाद, मेनू में "CONFIGURE -> मैनेज यूजर्स" को सेलेक्ट करें और एडमिनिस्ट्रेटर पासवर्ड बदलें, आप तुरंत नए यूजर्स को विभिन्न प्रकार के एक्सेस के साथ बना सकते हैं।
"ADD मीडिया" टैब में, हमारे पास उस संगीत को डाउनलोड करने का अवसर है जिसे हम रेडियो पर उपयोग करने की योजना बनाते हैं। यह मल्टीबूट और ड्रैग एंड ड्रॉप को सपोर्ट करता है।
PLAYLIST निर्माता टैब आपको नई प्लेलिस्ट बनाने की अनुमति देता है। यह प्लेलिस्ट में भरी गई सूची से पटरियों को खींचने और छोड़ने के द्वारा किया जाता है।
"कैलेंडर" टैब में, हम ईथर ग्रिड बनाते और संपादित करते हैं।
जैसे ही हम पंख लगाते हैं, संगीत और प्लेलिस्ट जोड़ते हैं, आवश्यक संगीत अनुसूची पर स्पष्ट रूप से खेलेंगे।
हम
example.com:8000 पर जाते हैं और अपने रेडियो को सुन सकते हैं।
निष्कर्ष
एयरटाइम के लाभ:- आसान स्थापना
- सहज ज्ञान युक्त ग्राफिकल इंटरफ़ेस;
- अनुकूलन की लचीलापन;
- एक साउंड कार्ड पर लाइव प्रसारण की क्षमता।
नुकसान:- भारी प्रणाली लोड करता है;
- गरीब सिरिलिक समर्थन करते हैं।
यदि आप अपने रेडियो स्टेशन को बड़ी संख्या में श्रोताओं को प्रसारित करने की योजना बनाते हैं, तो कई सर्वरों का उपयोग करना बेहतर होगा:
- एयरटाइम और उस पर सभी संबंधित उपयोगिताओं को स्थापित करने के लिए मध्यम आकार का सर्वर;
- उस पर Icescast2 स्थापित करने के लिए एक शक्तिशाली सर्वर, जो पहले सर्वर से स्ट्रीम को रिले करेगा।
Airtime और इसके विन्यास के बारे में अधिक जानकारी डेवलपर की वेबसाइट पर देखी जा सकती है:
www.sourcefabric.org/en/products/Airtime_overview