Recepção de streams de rádio
Os streams de rádio geralmente usam o protocolo ICY - um protocolo de streaming criado para transmissão de rádio pela internet. Muitas estações de rádio usam servidores Icecast ou Shoutcast para entregar o seu conteúdo. Embora o ICY seja parecido com o HTTP, ele tem algumas diferenças importantes na forma de tratar metadados e informações do stream.
Como encontrar a URL de um stream de rádio
Seção intitulada “Como encontrar a URL de um stream de rádio”Se você só conhece o endereço do site da estação de rádio, pode encontrar a URL do stream usando as ferramentas de desenvolvedor do seu navegador:
- Abra o site da estação de rádio no seu navegador
- Abra o Web Inspector (Ferramentas de desenvolvedor) e vá para a aba Network
- Comece a tocar o rádio no site
- Na aba Network, procure uma linha do tipo media cujo tamanho não para de crescer
- Clique com o botão direito nessa linha e selecione Copy → Copy URL

A URL copiada é o endereço direto do stream que você pode usar com o FFmpeg.
Recebendo rádio com o FFmpeg
Seção intitulada “Recebendo rádio com o FFmpeg”O Astra não suporta o protocolo ICY diretamente. Mas você pode receber streams de rádio usando o FFmpeg para convertê-los em um formato com o qual o Astra consegue trabalhar.
Use o FFmpeg para receber um stream ICY e enviá-lo como UDP para o Astra receber:
ffmpeg -i http://radio.example.com:8000/stream -c copy -f mpegts 'udp://127.0.0.1:15001?pkt_size=1316'Depois configure o Astra para receber desse endereço UDP:
udp://127.0.0.1:15001Executando o FFmpeg como serviço
Seção intitulada “Executando o FFmpeg como serviço”Para manter o FFmpeg rodando o tempo todo, você pode configurar ele como um serviço do systemd.
Crie o arquivo /etc/systemd/system/radio-name.service com o seguinte conteúdo:
[Unit]Description=Forward Radio Name to AstraAfter=network-online.targetWants=network-online.target
[Service]Type=simpleExecStart=/usr/bin/ffmpeg \ -hide_banner -loglevel warning -nostats \ -timeout 5000000 \ -reconnect 1 -reconnect_streamed 1 -reconnect_delay_max 5 \ -re \ -i https://radio-stream:7378 \ -c:a copy \ -f mpegts 'udp://127.0.0.1:15001?pkt_size=1316'
Restart=alwaysRestartSec=5
StandardOutput=nullStandardError=journal
[Install]WantedBy=multi-user.targetSubstitua neste arquivo:
- Nome do arquivo: use no lugar de
radio-name.serviceum nome relacionado à estação de rádio (se você tiver vários serviços) - Description: troque
Radio Namepelo nome da estação de rádio - URL do stream: troque
https://radio-stream:7378pela URL real do stream da estação de rádio - Porta UDP: troque
15001pela porta UDP que você quer usar
Depois de criar o arquivo do serviço, ative e inicie o serviço com:
systemctl enable radio-namesystemctl start radio-namePara parar o serviço, use:
systemctl stop radio-namePara desativar o início automático no boot, use:
systemctl disable radio-nameConfigure o Astra
Seção intitulada “Configure o Astra”Por fim, configure o Astra para receber o stream UDP adicionando uma nova entrada com o endereço:
udp://127.0.0.1:15001