αα½αααΎαααΆα αααΎαα αΌαα α·αααααααΆαααα·αααα»αα αααααααΉαα α αΎααα αααααααΉαααααα’αα½α αααα»αααΉαααΆαααα»ααα·αα ααααααΆαααα·αααα» FM αααα»ααααα»αααα αα·αβα αΆααα’αΆααααααα ααα»ααααβαααααΆααβαααβααΆαβααααΆαβααΆβαααααααααΆααα α αΎααααα»αααΆααααααα α α·ααααααα½αα’αααααα½α FM ααΆαα½αα’αααααα½αα’ααΈαααΊαα·αα αααα»αααΆααα·αααααΏααααααΆαααα ααΎ Aliexpress αααΆαααΆαααα αα α αΎααααααΌααααα»αα’αααααα½αα’ααΈαααΊαα·αα
α’αααΈα’αααααα½αα’ααΈαααΊαα·αα αααααΌαααααα’αααααα½αααΊ microcontroller ESP32 α αααααα·ααΈααααααααΈ KA-radio α ααααΏααααααΆααααΆαααααα 12 αα»ααααΆαα ααΆαααΆααααα½αααααΆααααααΌααααα»αααΆαα’αα»ααααΆαα±αααααα»ααααααΌααααα»αααΆαααα»αααααααααΈαααΈααααα ααααΎαααΆαααΆαααα’αα·αααΆααααααααΆαα αααα»ααααααα 10 ααααααΆαααΆαααΆαααααααααΈαααΈααααα»αααααα αΎααααααΆααααααααΆαααααααααΆαααααΆααα·ααααααααααααα»αα α ααα»α αααααΆααααΆααααα½α αα·ααα·αααΆαααα’α’αα»ααααΆαα±ααα’ααααααααααααααΈααααΆαα αααΌα αα·ααα»αααααΌαααα αα αααα»αααΆααααα½ααααααΊααΆα’αααααα½αα’ααΈαααΊαα·αααα’ααα αΆαααα
α’αααΈααα·αα’αΈααα ααα»ααααααααΉααααααΉααα½α αααα»αααΆαααααα·ααααΆαααΆ αααααΈααΆααΆαααααΆααΈααα·αααα»ααΆαααααΊαααααα ααααααΆαααααΆααΈααααααα½αα±ααα
αΆααα’αΆαααααααααα αααα»αβααΉαβααΉαβααΆαβααααΆαβααΆαα·ααααααα αα·αβααΆαβαα·ααΆαβαααβααΎα
βααααβα’αααβααααΎβααβαααα αΆαα αααα₯ααααααααΈααααΆααΈαααα½ααα
ααααΆααΈααα½ααααα αααα»αα
αΌαα
α·ααα Spotify αα·α Yandex.Music α ααα»ααααβα’αααΈβαααβαα½αβα²ααβαααααααΆαβααΊβααβαα·αβααααΎβααΆαβαα
βααααααβαααα»αα α αΎααααα»αα
ααααααΆαααα½αααααΆααααα’αααααα½αα’ααΈαααΊαα·αα
αααα»αβααΉαβααΎαβααΈβαα»ααΆαααΆαβααααβαααα»αα αααα»αααΆααααΆαααΈαααααα‘αααα½α αα·αααΆαααααΈααααα αααα»αααΆαααααΆααααααΌαααΆαααααΆαα½ααα·αααααααα·α α αΎαααΆα’ααα
αΆαααααΆααα αααα»αααΆααααααα
α
α·αααααΆαααα»αααααΌαααΆαα
αΆααααααΆαα―αααΆαα’αΌααΈαααΌαααααααα»ααα
ααΆααα’αααααα½αα’ααΈαααΊαα·αααααα»αααααα ααΆβααΆαβαα·αβααΆαα ααΆαβαααααΎαβαα½αβαααα»αβααΆαβααααΆααβα§αααααβα
αΆααβα’αΌααΈαααΌ α¬ iPod αα
βααΉαβα§αααααβααααβααα‘αα α αΎαβαα·αβααΆααααβα‘αΎαα ααα»ααααααααα·ααααααΆααααΌαααααααΎααα! αααα»αααα’ααα§αααααααααΆαα)
αααα»αα αΆααααααΎαααααααααααααααααΆααααααααααα½α ααΆααααα α ααΆαααΆααααααααΌααα ααΎααΈααααΆαααΎααααΈαααααΎααα·αααα»α’ααΈαααΊαα·αααααΆαααααα½αααααα’αααααΈ Radio-Tochka.com α αααα»αααΆαααΆαααααααΆα’αααααααα 5 ααααα α’αααΈαααααΎαααΆαααα’ααΆαα½αα’αααααα½αα’ααΈαααΊαα·ααααααααα»αα ααα»ααααβαααααβαα·αβααΆααααΆαβαααα»αβααα αααα»αααΆαααα·ααααααααΎααααα
αααα»αααΆααααααααΆαααααα αα 10 GB α αααα»αααΆααααααα α α·ααααααααααααααΈαααΎα’αααΈαα½ααααααΉαα αΆααααααΆαα’αΌααΈαααΌααα―αααΆα mp3 αααααααα»αα αααα»αααΆααααααα α α·ααααααααααΆαα αααα»α PHP α αααα»αβααΆαβαααααβααΆβαααΆαβααΏα α αΎαβααΎαβααααΎαααΆαβααΆβα α’αααΈααααααααΆαααΆαααααΎαααΆαα α‘αΌαααΆαα! ααα»ααααααΈαααΈααααααααααα αααα»αααΆαααα½ααααα»αααααΈααααααΆααααα ααα ααΆααΆααα·ααΆαααΆααααααααααααΆααΈααααΎαααΆαααααΌαααΆαααΎαα αΎααααααΌαααΆααααα»αααΆαααααΎα±αααααααΎαα‘αΎααα αααααααααααΆααααα ααααααΈαααααΌαααααααΌαααΆααα»α α αΎααααααΎααααααααΌαααΆαααααααα ααα
ααΎααΆααΎαα‘αΎααααααααααΆ? αααα»ααα·αα’αΆα ααααα αααααααΆααα·αααα»ααΆαααα ααααα·αααΎαα½ααααα·αα’αα»ααααΆαα±ααα’αααααααΎαααΆαααααααΈααα ααΎααΆααααα ααααααα’αααααααααα αααα’αααααααΌαααΆααααΆαααΈαααααααΆαααααα½αααααα’αααα ααααααααααααα»αααΉαααααΎα’αααΈααααααααΉααααα»αααααΆααααΆα
αααα»αααΆα netbook αα»ααΆααααααααΆαααα (αααΈααΈααΌ - 900 MHz, RAM - 512 Mb) α αα»ααα αααΆααααΆαα’αΆαα» α‘α‘ ααααΆαα αΎαα ααΆααααααααΆαααααΆαααΈαααα αααα»αααα‘αΎα Ubuntu 11 α αααααΆαααααααα»αααα‘αΎα Apache12.04 αα·α php 2, samba α αααΆαααΈααααααααααα»ααα½α ααΆααα αΎαα
αααα»αααΆααααααα
α
α·αααααΆααααα Icecast α αααα»αααΆαα’αΆααααΆααΆααΆα
αααΎααα
ααΎααΆα ααα»ααααβαααα»αβαααβααΆβααΆβαα·ααΆαα α αΎααααα»αααΆααααααα
α
α·ααααααααααα
αααααΎααααααααΎααααααΈα PHP α ααΈαααΈααααααααΌαααΆαα
αααΆαααΎααααΈααααΆααααα α»αααααααΈααααα α αΎαα’αααΈαααααΎαααΆαααΆαααα’ααΆααα αααααΆααβαα αααα»αβααβααΆαβαααααβααααααΈαβααΎααααΈβαααβααααΆαα α αΎααααα»αα
αΌαα
α·αααααΆααααΆααααΆαα ααΎααααα»ααααααα
α
α·αααααααΎααααααααΌα
αα½αα α α
ααΆααΆ IWScast α
α’αααΈααααααααΆαααΊααΆααααααΆααα αααα»αα
ααααα―αααΆα mp3 αα·αα―αααΆα index.php αα
αααα»ααα Apache root /var/www/ α αΎααα½αααΆααααΌαααΆαααααααα
αααααα αααα αα 300 ααααΊαααααααααΆαααααααΆαααααα ααααααα½αααααα
α―αααΆα index.php ααΊααΆααααααΈααααα½αα―αα ααααααΈαα’αΆααααααα―αααΆα MP3 ααΆααα’αααα
αααα»ααααα½ααα
αααα»αα’αΆαααα½αα αααααΎαααααααΈαα’αΌααΈαααΌ αα·ααααα½ααααααα―αααΆα MP3 α ααΆαβαααβααααβαααβα’αααβααααΆααβα
αααααβαα½αβααβα αΎαβα’αααβα
αΌαβα
α·αααβααΆα ααΎα’ααααα·αααΆααααΆααΆα’αααα
αααα? α
ααααααααΈαααααα ααΆαααΆααααααααΆααααααααααααΆαααααΆαααα
αααα»α log.txt
αααααααΌαααααααΈα
<?php
set_time_limit(0);
header('Content-type: audio/mpeg');
header("Content-Transfer-Encoding: binary");
header("Pragma: no-cache");
header("icy-br: 128 ");
header("icy-name: your name");
header("icy-description: your description");
$files = glob("*.mp3");
shuffle($files); //Random on
for ($x=0; $x < count($files);) {
$filePath = $files[$x++];
$bitrate = 128;
$strContext=stream_context_create(
array(
'http'=>array(
'method' =>'GET',
'header' => 'Icy-MetaData: 1',
'header' =>"Accept-language: enrn"
)
)
);
//Save to log
$fl = $filePath;
$log = date('Y-m-d H:i:s') . ' Song - ' . $fl;
file_put_contents('log.txt', $log . PHP_EOL, FILE_APPEND);
$fpOrigin=fopen($filePath, 'rb', false, $strContext);
while(!feof($fpOrigin)){
$buffer=fread($fpOrigin, 4096);
echo $buffer;
flush();
}
fclose($fpOrigin);
}
?>
ααααα·αααΎα’αααααααΌαααΆααααααααααΌαα αΆααααΆαααααΆααααααα αααα’αααααααΌααααα ααααα·ααΎαααααΆαααααα»α index.php
shuffle($files); //Random on
αααααΆααααααΆα αααα»αααααΎ /var/www/podcast/ ααΆαααααααΈααα½αααα index.php α ααΆααΆαααΆαα
αα
αΆααααααααααα αα
ααααααα’αααααΎααααααα·ααΈααα½αα’ααΈαααΊαα·αααΎαααααα ααααααΆααααααΆααααααΌαααΆαα
αΆααα ααααΆααααααα ααα»αααααααααΆαα
αΆαααααααα
αα
αααα»αα―αααΆα counter.dat α’αααα’αΆα
αααααΆααααααα α αΎαααΆαα
αΆααααααΆαααΉαα
αΆααααααΎαααΈααΆα
ααΆααααααα§αααααααααααααΆααααΆαααΆαααααααΆααααααααααααααααα·α ααΆααααΌαα αααΆαααα 4 ααα α»ααααααααΈ RSS α αΎαααΆααααα½αααα ααΆααα’αααααααααΎαααΆαααα’αα ααΎααααΆαα αααΌα αααα’ααααα‘αΎα IPTV α¬αα αααα»ααααααα·ααΈαα»αααα
αα ααααΉαααααααααααΆααΆαααΎαα‘αΎαα αααααααα»αααΆ ααΆαα·αααΆααα’ααΆαααααα»αααΆαα αα αΆαααΈααΆααα αΆααααΆαααααΈαα ααΎαααα½αα ααα»αααααααα»ααα·αααΆααααΉαααΈααααααααΎααΆαα αααα»α PHP αα α‘αΎαααα
ααααααΈαα’αΆα
ααΆαααααΆαα
ααααα: www.habr.com