An rèidio eadar-lìon agad fhèin

Is toil le mòran againn a bhith ag èisteachd ris an rèidio sa mhadainn. Agus an uairsin aon mhadainn mhath thuig mi nach robh mi airson a bhith ag èisteachd ri stèiseanan rèidio FM ionadail. Gun ùidh. Ach thionndaidh an cleachdadh gu bhith cronail. Agus chuir mi romham inneal-glacaidh eadar-lìn a chuir an àite a’ ghlacadair FM. Cheannaich mi pàirtean gu sgiobalta air Aliexpress agus chruinnich mi cuidhteas eadar-lìn.

Mu dheidhinn an eadar-lìon ghlacadair. Is e cridhe a’ ghlacadair am microcontroller ESP32. Firmware bho KA radio. Chosg na pàirtean $12 dhomh. Thug cho furasta ‘s a bha e co-chruinneachadh dhomh a chruinneachadh ann an latha no dhà. Ag obair gu math agus gu seasmhach. Ann an 10 mìosan de dh'obair, cha do reothadh e ach dà uair, agus an uairsin a-mhàin air sgàth mo dheuchainnean. Tha eadar-aghaidh goireasach agus air a dheagh smaoineachadh a’ toirt cothrom dhut smachd a chumail bho fòn cliste agus coimpiutair. Ann am facal, tha seo na ghlacadair eadar-lìn iongantach.

Tha a h-uile rud ceart gu leòr. Ach aon mhadainn tràth thàinig mi chun cho-dhùnadh, a dh’ aindeoin cothrom fhaighinn air deichean de mhìltean de stèiseanan rèidio, nach robh stèiseanan inntinneach ann. Bha mi air mo bhuaireadh leis an t-sanasachd agus na fealla-dhà gòrach aig na preasantairean. An-còmhnaidh a 'leum bho aon stèisean gu fear eile. Is toil leam Spotify agus Yandex.Music. Ach is e an rud duilich nach eil iad ag obair anns an dùthaich agam. Agus bu mhath leam èisteachd riutha tron ​​​​ghlacadair eadar-lìn.

Chuimhnich mi m' òige. Bha inneal-teip agam agus dà dhusan cassettes. Rinn mi iomlaid air cassettes le caraidean. Agus bha e mìorbhaileach. Cho-dhùin mi gum feumadh mi na tasglannan claisneachd agam a shruthladh a-mhàin gu inneal-glacaidh eadar-lìn. Gu dearbh, tha roghainn ann cluicheadair claisneachd no iPod a cheangal ris an luchd-labhairt agus na gabh dragh. Ach chan e seo an dòigh againn! Is fuath leam a bhith a’ ceangal luchd-ceangail)

Thòisich mi a 'coimhead airson fuasglaidhean deiseil. Tha tairgse air a’ mhargaidh airson do rèidio eadar-lìn fhèin a chruthachadh bho Radio-Tochka.com. Rinn mi deuchainn air airson 5 latha. Dh ’obraich a h-uile dad gu math leis a’ ghlacadair eadar-lìn agam. Ach cha robh a’ phrìs tarraingeach dhomh. Dhiùlt mi an roghainn seo.

Tha mi air aoigheachd 10 GB a phàigheadh. Cho-dhùin mi sgriobt a sgrìobhadh air rudeigin a shruthadh sruth claisneachd nam faidhlichean mp3 agam. Cho-dhùin mi a sgrìobhadh ann am PHP. Sgrìobh mi gu sgiobalta e agus chuir mi air bhog e. Dh’obraich a h-uile càil. Bha e fionnar! Ach latha no dhà às deidh sin fhuair mi litir bhon rianachd aoigheachd. Thuirt iad gun deach a’ chrìoch de gheàrr-chunntasan pròiseasar a dhol thairis air agus gum feumadh àrdachadh gu ìre nas àirde. Dh'fheumadh an sgriobt a bhith air a sguabadh às agus an roghainn seo a thrèigsinn.

Ciamar a thachair e? Chan urrainn dhomh a bhith beò gun radio. Mura leig iad leat an sgriobt a ruith air aoigheachd cuideigin eile, feumaidh tu an t-seirbheisiche agad fhèin. Far an dean mi na tha m'anam ag iarraidh.

Tha seann leabhar-lìn agam gun bataraidh (CPU - 900 MHz, RAM - 512 Mb). Tha am bodach mu thràth 11 bliadhna a dh'aois. Freagarrach airson frithealaiche. Bidh mi a’ stàladh Ubuntu 12.04. An uairsin bidh mi a’ stàladh Apache2 agus php 5.3, samba. Tha am frithealaiche agam deiseil.

Cho-dhùin mi feuchainn air Icecast. Leugh mi tòrr mana air. Ach bha e duilich dhomh. Agus chuir mi romhpa tilleadh chun roghainn le sgriobt PHP. Chaidh latha no dhà seachad a' deasbaireachd an sgriobt seo. Agus dh'obraich a h-uile càil gu math. An uairsin sgrìobh mi sgriobt cuideachd airson podcasts a chluich. Agus chòrd e rium cho mòr is gun do chuir mi romhpa pròiseact beag a dhèanamh. Canar IWScast ris. Air a phostadh air github.

An rèidio eadar-lìon agad fhèin

Tha a h-uile dad gu math sìmplidh. Bidh mi a’ dèanamh lethbhreac de na faidhlichean mp3 agus am faidhle index.php a-steach don phasgan freumh Apache /var/www/ agus thèid an cluich air thuaiream. Tha timcheall air 300 òran gu leòr airson timcheall air an latha gu lèir.
Is e am faidhle index.php an sgriobt fhèin. Bidh an sgriobt a’ leughadh ainmean nam faidhlichean MP3 gu lèir ann an eòlaire ann an sreath. A’ cruthachadh sruth-èisteachd agus a’ cur ainmean fhaidhlichean MP3 na àite. Bidh amannan ann nuair a bhios tu ag èisteachd ri òran agus is toil leat e. Cò tha nad bheachd-sa a tha a’ seinn? Airson a leithid de chùis, tha clàradh de dh'ainmean nan slighean èisteachd anns an log log.txt
Còd sgriobt coileanta

<?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);
}
?>

Ma tha feum agad air na slighean a chluich ann an òrdugh, feumaidh tu beachd a thoirt a-mach air an loidhne ann an index.php

shuffle($files); //Random on

Airson podcasts bidh mi a’ cleachdadh /var/www/podcast/ Tha sgriobt eile ann index.php. Tha cuimhneachan slighe podcast aige. An ath thuras a thionndaidheas tu an inneal-glacaidh eadar-lìn, thèid an ath shlighe podcast a chluich. Tha clàr de shlighean cluich ann cuideachd.
Anns an fhaidhle counter.dat, faodaidh tu àireamh na slighe a shònrachadh agus tòisichidh ath-chluich podcast bhuaithe.

Sgrìobh parsairean airson luchdachadh sìos podcastan gu fèin-ghluasadach. Bheir e na 4 slighean as ùire bho RSS agus luchdaich sìos iad. Bidh seo uile ag obair gu math air fòn cliste, bogsa mullach seata IPTV, no ann am brobhsair.

A’ mhadainn eile thachair e rium gum biodh e math cuimhneachadh air suidheachadh ath-chluich air slighe. Ach chan eil fios agam fhathast ciamar a nì mi seo ann am PHP.

Faodar an sgriobt a luchdachadh sìos github.com/iwsys/IWScast

Source: www.habr.com

Cuir beachd ann