Nahmd ،
أنا في حاجة إلى حل لتيار قانون المواد الحربية "على الطاير لجعله تيار أغ.
البرنامج النصي في المسار القابل للتنفيذ لبرامج مكان لانتزاع بى النصي في ملقم الويب وجبل في Icecast2 أضف تكوين. ويجب تكييف ومسارات مختلفة ربما.
للأسف ، حاليا فقط الاستماع إلى واحد Internerradio ان تيار. في الواقع ، يمكن أن تخلق الكثير ، ولكن لسوء الحظ انتهت المرحلة الأولى ، الذي لم يعد يتلقى تيار ، وتحويل 
ما هو مطلوب هو ما يلي :
- إمبلاير
- icecast2
- oggenc
- oggfwd
- فب
البرنامج النصي لتحويل
# / بن / ش
$PATH :/usr/ local /bin طريق التصدير = $ باث : / البيرة / المحلية / بن
تيار = "رسائل الوسائط المتعددة : / / your.radio.fm / stream.wma"
مجموعة الإلكتروني
الزبون = 0
"$2" != "" ] ; then إذا ["2" $! = ""] ثم
الزبون = 2 دولار
فاي
"$3" != "" ] إذا ["3" $! = ""]
ثم
تيار = 3 $
فاي
echo $STREAM | md5sum | cut -d ' ' -f1 ) MD5 = $ ($ صدى دفق | md5sum | قص د «- F1)
درجة الحرارة = / tmp / chumbybridge / $ MD5
] || mkdir -p $TEMP [مد $ مؤقت] | | mkdir ف $ مؤقت
/mplayer.fifo FIFO_MPLAYER = $ مؤقت / mplayer.fifo
# FIFO_OGGENC = $ مؤقت / oggenc.fifo
/mplayer.log LOG_MPLAYER = $ مؤقت / mplayer.log
/oggenc.log LOG_OGGENC = $ مؤقت / oggenc.log
/oggfwd.log LOG_OGGFWD = $ مؤقت / oggfwd.log
/mplayer.pid PID_MPLAYER = $ مؤقت / mplayer.pid
/oggfwd.pid PID_OGGFWD = $ مؤقت / oggfwd.pid
"$1" = "start" ] إذا $ "([1" = "بدء"]
ثم
>> $LOG_MPLAYER صدى "$ متصل العميل"> $ LOG_MPLAYER
] && echo "Run $0 stop first!" && exit [الإلكتروني $ FIFO_MPLAYER] & & صدى "تشغيل $ 0 المحطة الأولى!" & & خروج
|| exit 1 mkfifo $ FIFO_MPLAYER خروج | | 1
"$FIFO_MPLAYER" >> $LOG_MPLAYER 2 >& 1 < /dev/null & مبلايير nocache - $ - هادئة أدولف أوغي حدة جمع الأسعار الدفق : ملف = "$ FIFO_MPLAYER">> $ LOG_MPLAYER 2> & 1 </ ديف / لاغية و
صدى دولار! > $ PID_MPLAYER
النوم 0.3
-o – 2 >> $LOG_OGGENC | oggfwd localhost 8000 hackme /radio1.ogg >> $LOG_OGGFWD 2 >& 1 & oggenc ، س ، ف 1 دولار FIFO_MPLAYER ، س -- 2> $ LOG_OGGENC | oggfwd وكلهوست 8000 hackme / radio1.ogg> LOG_OGGFWD دولار 2> & 1 &
صدى دولار! > $ PID_OGGFWD
النوم 0.2
"$1" = "stop" ] أليف ["$ 1" = "وقف"]
ثم
صدى ">> إيقاف لاعب chumstream <<"
cat $PID_MPLAYER ) 2 > /dev/null && \ قتل $ (القط PID_MPLAYER $) 2> / ديف / لاغية & & \
cat $PID_OGGFWD ) 2 > /dev/null && \ قتل $ (القط PID_OGGFWD $) 2> / ديف / لاغية & & \
|| \ جمهورية مقدونيا ، الترددات اللاسلكية مؤقت $ | | \
صدى "لا يمكن وقف جميع العمليات ، يرجى النظر في $ درجة الحرارة واصلاحها يدويا"
آخر
صدى "الاستخدام :"
صدى "بدء [client_id 0 $] [العنوان]"
صدى "0 وقف $"
فاي
وicecast التكوين
<mount>
<mount-name>/ <radio.ogg / جبل اسم>
<max-listeners>10 <ماكس المستمعين /
<burst-size>65 536 </ انفجار الحجم>
<hidden>0 </ المخفية
> نوع <authentication= "url">
value = "http://localhost/radio.php" /> اسم <option= = قيمة /> "mount_add"" http://localhost/radio.php "
value = "http://localhost/radio.php" /> اسم <option= = قيمة /> "mount_remove"" http://localhost/radio.php "
value = "http://localhost/radio.php" /> اسم <option= = قيمة /> "listener_add"" http://localhost/radio.php "
value = "http://localhost/radio.php" /> اسم <option= = قيمة /> "listener_remove"" http://localhost/radio.php "
/> مصادقة <
<Mount/>
بى لبدء / إيقاف الجزء
فب
$_POST [ "action" ] == 'listener_add' ) { إذا ($ _POST ["العمل"] == 'listener_add') (
( "/usr/local/bin/chumstream.sh start " . $_POST [ "client" ] , $result ) ; $ Tmp =
إكسيك ("/ البيرة / المحلية / بن / chumstream.sh البداية. $ _POST [" العميل "] ، $ نتيجة) ؛ ( $_POST [ "action" ] == 'listener_remove' ) { (إذا كان آخر ($ _POST ["العمل"] == 'listener_remove') (
( "/usr/local/bin/chumstream.sh stop " . $_POST [ "client" ] , $result ) ; $ Tmp =
إكسيك ("/ البيرة / المحلية / بن / وقف chumstream.sh". $ _POST ["العميل"] ، $ نتيجة) ؛ )
'icecast-auth-user: 1′ ) ; رأس ('icecast - مصادقة المستخدم : 1') ؛ 'icecast-auth-message: OK' ) ; رأس ('icecast - المصادقة ، الرسالة : موافق') ؛ ؟>