Bate Papo das Rádios LivresRádios no Rizoma
Rádio Muda Rádio Xibé Rádio Tarrafa Rádio Xiado Rádio Zapote Rádio Capivara Rádio Mangue Rádio Gralha Rádio Grimpa Rádio Pulga Rádio Voz da Ilha Rádio Grilo Rádio Interferência Rádio Várzea Rádio Tróia Rádio Filha da Muda Rádio Mosca Rádio Landell ARLA Radiola Rádio Ralacoco La Blanqueada FM Radiola DF Rádiofônica Rádio Caruncho Recent blog posts
|
Montando um Servidor de WebradioMuito provavelmente você procura por um servidor de webradio para usar na sua transmissão e apesar de fazer uma busca não encontrou muita coisa. Realmente existem muitos servidores desse tipo, quase nenhum deles oferecendo serviço gratuito de transmissão. A solução, no seu caso, é rodar um servidor na sua conexão com a internet ou então rodar vários servidores em várias conexões com a internet diferentes e juntá-los numa mesma rede, possibilitando que mais ouvintes consigam acessar seu sinal. Existem vários softwares de servidor. Aqui cobriremos o Icecast, por ser um software livre e com desenvolvimento avançado, permitindo inclusive o streaming de vídeo. Uma alternativa ao icecast é o SHOUTcast, desenvolvido paralelamente com o Winamp, mas ele não é o objetivo do presente texto. O Icecast permite que se façam transmissões tanto em mp3 quanto em ogg e estas podem ser ouvidas com qualquer tocador. O Icecast roda nas plataforma GNU/Linux, Windows, Solaris, OpenBSD e FreeBSD. Por comodidade, abordaremos a instalação do Icecast no GNU/Linux e no Windows. Há uma explicação teórica do funcionamento do modelo cliente-servidor no guia Transmissão de Áudio pela Internet e Web Rádios, sendo essa leitura um pré-requisito para o entendimento da instalação e uso de um servidor deste tipo. A maioria das informações aqui contidas foram extraídas da documentação do Icecast. O texto foi escrito pensando na instalação e uso do icecast em ambiente unix. Se você é um usuária ou usuário Windowz, as diferenças e procedimentos específicos em relação ao resto deste manual são apontados na seção Icecast no Windows. A versão mais atualizada deste texto você encontra em http://docs.indymedia.org/view/Sysadmin/IceCastPtBr (esta cópia representa a versão 1.17 do tutorial).Índice
Instalando o Icecast no GNU/LinuxA instalação é simples. Se você usa debian, experimente digitarapt-get install icecast2E seu icecast será instalado. Há um melhor detalhamento na instalação do icecast em Debian no Projeto Libertas, de Leonardo Luiz Padovani da Mata e Matheus Ferreira Ribeiro. Se você usa RedHat ou Fedora, é possível experimentar os RPMS na página de download do programa. Em último caso, você pode compilar o icecast. Para isso, efetue os seguintes passos: Certifique-se de ter os seguintes softwares em seu computador. Em caso negativo, instale-os: Em seguida, proceda com a instalação do icecast:
tar zxvf icecast-VERSAO.tar.gz cd icecast-VERSAO ./configure --prefix=/usr/local --with-ogg --with-vorbis --with-curl make su -c "make install"O último comando, usado para instalar o software em seu sistema, perguntará sua senha de administração no caso de você estar como usuário comum. Pronto, o icecast já está instalado :) Configurando o Icecast no GNU/LinuxA configuração do icecast fica num único arquivo, que por convenção é o /etc/icecast.xml. Ele está dividido nas seguintes seções:
<secao>blábláblá</secao>Comentários, isto é, texto utilizado apenas para seres humanos e que é ignorado pelo icecast, são todas as palavras que estiverem entre os delimitadores < e >, como por exemplo em <!-- comentário -->O formato geral de um arquivo de configuração é mais ou menos assim: <icecast> <limits>...</limits> <authentication>...</authentication> <directory>...</directory> <hostname>localhost</hostname> <relay>...</relay> <mount>...</mount> <fileserve>1</fileserve> <paths>...</paths> <logging>...</logging> <security>...</security> </icecast> LimitesA seção limits, como o próprio nome diz, regula os limites do servidor. Ela é composta das seguintes opções (as mais importantes estão em negrito):
<limits> <clients>100</clients> <sources>2</sources> <threadpool>5</threadpool> <queue-size>102400</queue-size> <client-timeout>30</client-timeout> <header-timeout>15</header-timeout> <source-timeout>10</source-timeout> <burst-on-connect>1</burst-on-connect> <burst-size>65536</burst-size> </limits> AutenticaçãoA autenticação lida com usuários e senhas gerais do servidor:<authentication> <source-password>hackme</source-password> <relay-password>hackme</relay-password> <admin-user>admin</admin-user> <admin-password>hackme</admin-password> </authentication>As opções mais importantes estão em negrito:
Listagem de diretórioEsta seção contém os dados de uma ou mais páginas amarelas para webradio - também conhecidas como YP, Yellow Pages. Existem apenas dois campos:
<directory> <yp-url-timeout>15</yp-url-timeout> <yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url> </directory> Configurações geraisSão as configurações genéricas do servidor, como porta, endereço, etc:<hostname>localhost<hostname> <-- You can use these two if you only want a single listener --> <-- <port>8000</port> --> <-- <bind-address>127.0.0.1</bind-address> --> <-- You may have multiple <listen-socket> elements --> <listen-socket> <port>8000</port> <bind-address>127.0.0.1</bind-address> </listen-socket> <listen-socket> <port>8001</port> <bind-address>127.0.0.1</bind-address> <shoutcast-compat>1</shoutcast-compat> </listen-socket> <fileserve>1</fileserve> <shoutcast-mount>/live.nsv</shoutcast-mount>Novamente as opções mais importantes em negrito:
se você escolher 0 para o fileserve, então a transmissão de arquivos estáticos não estará disponível.
<listen-socket> ... </listen-socket>Se as opções dadas acima estiverem fora de um bloco listen-socket, então o Icecast só permitirá um ouvinte no servidor, como por exemplo quando a seção de configurações gerais for assim: <hostname>seu-site.com.br<hostname> <port>8000</port> <fileserve>1</fileserve>O mais provável é que você queira mais de um ouvinte. Então uma configuração possível é: <hostname>localhost<hostname> <listen-socket> <port>8000</port> </listen-socket> <fileserve>1</fileserve>Dessa forma você deixa o servidor esperando conexões na porta 8000. Outras portas podem ser adicionadas, bastando para isso escrever um outro bloco listen-socket: <hostname>localhost<hostname> <listen-socket> <port>8000</port> </listen-socket> <listen-socket> <port>8100</port> </listen-socket> <fileserve>1</fileserve> Opções de relêA seção de relê (ou relay) configura quais transmissões de áudio serão retransmitidas pelo seu servidor de Icecast. A utilidade imediata disso é a possibilidade de distribuição e balanço do uso da conexão com a internet. Um exemplo da parte de relay nas configurações do icecast é o seguinte:<master-server>127.0.0.1</master-server> <master-server-port>8001</master-server-port> <master-update-interval>120</master-update-interval> <master-password>hackme</master-password> <relay> <server>127.0.0.1</server> <port>8001</port> <mount>/example.ogg</mount> <local-mount>/different.ogg</local-mount> <username>joe</username> <password>soap</password> <relay-shoutcast-metadata>0</relay-shoutcast-metadata> </relay>Existe duas maneiras de se fazer relay: retransmitir todos os pontos de montagem de um servidor ou então retransmitir pontos de montagens específicos de vários servidores. A próxima figura mostra o caso de um servidor retransmitindo tudo o que um servidor transmite. |-----| |-----| | | all mountpoints | | /mount1 | | <------------------- | | /mount2.ogg |-----| |-----| /mount3 Icecast 2 Icecast 2 Server 1 Server 2 (RELAY SERVER) (MASTER SERVER) configured with <master-server> settingsPara esse caso, as seguintes configurações são utilizadas:
|-----| |-----| | | /mount3 | | /mount1 | | <------------------- | | /mount2.ogg |-----| |-----| /mount3 Icecast 2 Icecast 2/Shoutcast/Icecast Server 1 Server 2 (RELAY SERVER) (REMOTE SERVER) configured with <relay> settingsNessa condição, utilizaremos um ou mais blocos do tipo <relay> ... </relay>cujas opções são:
<relay> <server>orelha2.radiolivre.org</server> <port>8080</port> <mount>/radiolivre.ogg</mount> <local-mount>/radiolivre.ogg</local-mount> <relay-shoutcast-metadata>0</relay-shoutcast-metadata> </relay>Você ainda pode retransmitir outros streamings de outros servidores. Para cada retransmissão adicione um novo bloco relay. Lembre-se que transmissões em formato ogg precisam ter seus pontos de montagem terminando em .ogg. Pontos de montagemGeralmente é possível fazer transmissões utilizando a senha do servidor, definida na seção geral e escolhendo qualquer nome como ponto de montagem. O bloco<mount> ... <mount>permite que sejam definidos pontos de montagem com senhas e configurações próprias, de modo a contextualizar a segurança do servidor. Você, como administrador de um serviço de webradio, pode disponibilizar para que outras pessoas façam streaming usando apenas determinados pontos de montagem, cada qual definido num bloco mais ou menos assim: <mount> <mount-name>/example-complex.ogg</mount-name> <username>othersource</username> <password>hackmemore</password> <max-listeners>1</max-listeners> <dump-file>/tmp/dump-example1.ogg</dump-file> <fallback-mount>/example2.ogg</fallback-mount> <fallback-override>1</fallback-override> <no-yp>1</no-yp> <hidden>1</hidden> <burst-size>65536</burst-size> <authentication type="htpasswd"> <option name="filename" value="myauth"/> <option name="allow_duplicate_users" value="0"/> </authentication> </mount>
Caminhos de arquivosEsta seção contém informações sobre os caminhos de vários arquivos utilizados no icecast, como a pasta onde residem os registros do servidor, a interface web e a de administração. O formato desse blovo é<paths> <basedir>./</basedir> <logdir>./logs</logdir> <pidfile>./icecast.pid</pidfile> <webroot>./web</webroot> <adminroot>./admin</adminroot> <alias source="/foo" dest="/bar"/> </paths>Novamente temos as opções:
Registros (logging)Como qualquer software de servidor, o icecast mantém registros de acessos, indicando quem e quando ouviu o quê, assim como os erros ocorridos e os alertas emitidos pelo icecast durante seu trabalho.<logging> <accesslog>access.log</accesslog> <errorlog>error.log</errorlog> <playlistlog>playlist.log</playlistlog> <loglevel>4</loglevel> <-- 4 Debug, 3 Info, 2 Warn, 1 Error --> </logging>
SegurançaExistem duas opções de segurança no icecast e o bloco de segurança tem este aspecto:<security> <chroot>0</chroot> <changeowner> <user>nobody</user> <group>nogroup</group> </changeowner> </security>
Exemplo de configuraçãoA melhor coisa na hora de configurar seu servidor é partir de um arquivo de configuração já pronto e personalizar de acordo com sua necessidade. Dependendo de como você instalou seu icecast, ele já vem com um arquivo de configuração padrão em /etc/icecast.xml, e tudo o que você precisa fazer é editá-lo. Em outras ocasiões esse arquivo fica em /usr/share/icecast, /usr/share/icecast/doc ou em algum outro local do tipo /usr/share/icecast-VERSAO (onde VERSAO é a versão do seu icecast) ou /usr/local/share/icecast, e assim por diante. Nesses últimos casos, basta que você copie o icecast.xml.dist pra /etc/icecast.xml e edite. Caso você não encontre esse arquivo, copie este que se segue para se seu /etc/icecast.xml:<icecast> <limits> <clients>100</clients> <sources>2</sources> <threadpool>5</threadpool> <queue-size>102400</queue-size> <client-timeout>30</client-timeout> <header-timeout>15</header-timeout> <source-timeout>10</source-timeout> <!-- If enabled, this will provide a burst of data when a client first connects, thereby significantly reducing the startup time for listeners that do substantial buffering. However, it also significantly increases latency between the source client and listening client. For low-latency setups, you might want to disable this. --> <burst-on-connect>1</burst-on-connect> <!-- same as burst-on-connect, but this allows for being more specific on how much to burst. Most people won't need to change from the default 64k. Applies to all mountpoints --> <burst-size>65535</burst-size> </limits> <authentication> <!-- Sources log in with username 'source' --> <source-password>hackme</source-password> <!-- Relays log in username 'relay' --> <relay-password>hackme</relay-password> <!-- Admin logs in with the username given below --> <admin-user>admin</admin-user> <admin-password>hackme</admin-password> </authentication> <!-- Uncomment this if you want directory listings --> <!-- <directory> <yp-url-timeout>15</yp-url-timeout> <yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url> </directory> <directory> <yp-url-timeout>15</yp-url-timeout> <yp-url>http://www.oddsock.org/cgi-bin/yp-cgi</yp-url> </directory> --> <!-- This is the hostname other people will use to connect to your server. It affects mainly the urls generated by Icecast for playlists and yp listings. --> <hostname>localhost</hostname> <!-- You can use these two if you only want a single listener --> <!--<port>8000</port> --> <!--<bind-address>127.0.0.1</bind-address>--> <!-- You may have multiple <listener> elements --> <listen-socket> <port>8000</port> <!-- <bind-address>127.0.0.1</bind-address> --> </listen-socket> <!-- <listen-socket> <port>8001</port> </listen-socket> --> <!--<master-server>127.0.0.1</master-server>--> <!--<master-server-port>8001</master-server-port>--> <!--<master-update-interval>120</master-update-interval>--> <!--<master-password>hackme</master-password>--> <!-- <relay> <server>127.0.0.1</server> <port>8001</port> <mount>/example.ogg</mount> <local-mount>/different.ogg</local-mount> <relay-shoutcast-metadata>0</relay-shoutcast-metadata> </relay> --> <!-- Only define a <mount> section if you want to use advanced options, like alternative usernames or passwords <mount> <mount-name>/example-complex.ogg</mount-name> <username>othersource</username> <password>hackmemore</password> <max-listeners>1</max-listeners> <dump-file>/tmp/dump-example1.ogg</dump-file> <burst-size>65536</burst-size> <fallback-mount>/example2.ogg</fallback-mount> <authentication type="htpasswd"> <option name="filename" value="myauth"/> <option name="allow_duplicate_users" value="0"/> </authentication> </mount> --> <fileserve>1</fileserve> <paths> <!-- basedir is only used if chroot is enabled --> <basedir>/usr/share/icecast</basedir> <!-- Note that if <chroot> is turned on below, these paths must both be relative to the new root, not the original root --> <logdir>/usr/var/log/icecast</logdir> <webroot>/usr/share/icecast/web</webroot> <adminroot>/usr/share/icecast/admin</adminroot> <!-- <pidfile>/usr/share/icecast/icecast.pid</pidfile> --> <!-- Aliases: treat requests for 'source' path as being for 'dest' path May be made specific to a port or bound address using the "port" and "bind-address" attributes. --> <!-- <alias source="/foo" dest="/bar"/> --> <!-- Aliases: can also be used for simple redirections as well, this example will redirect all requests for http://server:port/ to the status page --> <alias source="/" dest="/status.xsl"/> </paths> <logging> <accesslog>access.log</accesslog> <errorlog>error.log</errorlog> <loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error --> </logging> <security> <chroot>0</chroot> <!-- <changeowner> <user>nobody</user> <group>nogroup</group> </changeowner> --> </security> </icecast> Instalando a interface webO Icecast possui uma interface web onde estão listadas todas as transmissões públicas do servidor, bem como a quantidade de ouvintes, e também onde é possível administrar os pontos de montagem atualmente existentes. Existem duas interfaces web, a de administração e a comum, cada uma delas definidas respectivamente como adminroot e webroot na seção Caminho de arquivos. Se essas duas pastas não existem, crie-as e em cada uma delas copie os arquivos padrões da interface de administração que vem com o icecast. Supondo que seu webroot seja /var/www/icecast e seu adminroot seja /var/www/icecast/admin, dê os seguintes comandos:cp /usr/share/icecast/web/* /var/www/icecast/ cp /usr/share/icecast/admin/* /var/www/icecast/admin/Ambas interfaces não passam de arquivos XSL usados pelo icecast para exibir as informações sobre o servidor em páginas web. Se você quiser é possível editar esses arquivos para personalizar o modo de exibição dessas informações. Rodando o Icecast no GNU/LinuxAgora que editou seu /etc/icecast.xml, basta iniciar o servidor. Existem muitas formas de rodar seu servidor icecast. A melhor delas é utilizar um script de inicialização. Se o seu sistema é Debian, provavelmente você tem um arquivo /etc/init.d/icecast2 e então basta dar o seguinte comando como superusuário:/etc/init.d/icecast2 startCaso você não tenha esse arquivo, aqui vão duas sugestões de script de inicialização, o primeiro pra Debian e outro que deve servir pra qualquer sistema: #! /bin/sh # # darkice # # Written by Miquel van Smoorenburg <miquels@cistron.nl>. # Modified for Debian # by Ian Murdock <imurdock@gnu.ai.mit.edu>. # # Further modified by Keegan Quinn <ice@thebasement.org> # for use with Icecast 2 # # Modified for libertasbr (libertasbr.gov.br) # for use with darkice # by Leonardo L. P. da Mata <barroca@dcc.ufmg.br> PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11 DAEMON=/usr/bin/darkice NAME=darkice DESC=darkice test -x $DAEMON || exit 0 # Defaults CONFIGFILE="/etc/darkice.cfg" USERID=icecast2 GROUPID=icecast # Reads config file (will override defaults above) set -e case "$1" in start) echo -n "Starting $DESC: " start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \ --background --exec $DAEMON -- -c $CONFIGFILE echo "$NAME." ;; stop) echo -n "Stopping $DESC: " start-stop-daemon --stop --oknodo --quiet --exec $DAEMON echo "$NAME." ;; reload|force-reload) echo "Reloading $DESC configuration files." start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON ;; restart) echo -n "Restarting $DESC: " start-stop-daemon --stop --oknodo --quiet --exec $DAEMON sleep 1 start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \ --background --exec $DAEMON -- -c $CONFIGFILE echo "$NAME." ;; *) echo "Usage: $0 {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esacEste aqui é bem mais simples e funciona em qualquer sistema: case "$1" in 'start') /usr/bin/icecast -b -c /etc/icecast.xml ;; 'stop') /bin/killall icecast ;; 'restart') /etc/rc.d/rc.icecast2 stop sleep 5 /etc/rc.d/rc.icecast2 start ;; 'reload') /bin/killall -s HUP icecast ;; *) echo "usage $0 start|stop|restart" ;; esacDepois de criar seu script de inicialização, que dependendo do sistema que você usa ficará em /etc/init.d, em /etc/rc.d/ ou em outro lugar, dê permissão de execução pro mesmo: chown root.root icecast2 chmod 755 icecast2E pra rodar o servidor basta rodá-lo com o parâmetro start. Por exemplo, assumindo que ele está no /etc/rc.d e com o nome rc.icecast2, dê o seguinte comando como superusuário: /etc/rc.d/rc.icecast2 start Rodando o icecast automaticamenteÉ muito conveniente deixar seu sistema configurado para iniciar o icecast automaticamente quando o computador for ligado, sendo isso indispensável caso você esteja montando uma máquina servidora de webradio. No Debian, tudo o que você precisa fazer é dar o comandoln -s /etc/init.d/icecast2 /etc/rc2.d/S21icecast2Para maiores detalhes, consulte a documentação referente ao sistema que você usa. Testando o servidorDepois de iniciado, o icecast deverá responder à conexões na porta em que foi configurado. Ele também deverá ser visto rodando caso você dê um comando do tipops auxCuja resposta deve ser algo assim: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND [snip] nobody 21599 0.0 0.2 22624 2532 ? S Feb11 0:01 icecast -b -c etc/icecast.xml nobody 21600 0.0 0.2 22624 2532 ? S Feb11 0:00 icecast -b -c etc/icecast.xml nobody 21601 0.0 0.2 22624 2532 ? S Feb11 0:00 icecast -b -c etc/icecast.xml nobody 21602 0.0 0.2 22624 2532 ? S Feb11 0:00 icecast -b -c etc/icecast.xml nobody 21603 0.0 0.2 22624 2532 ? S Feb11 0:00 icecast -b -c etc/icecast.xml nobody 21604 0.0 0.2 22624 2532 ? S Feb11 0:02 icecast -b -c etc/icecast.xml nobody 21605 0.0 0.2 22624 2532 ? S Feb11 0:02 icecast -b -c etc/icecast.xml nobody 21606 0.0 0.2 22624 2532 ? S Feb11 0:02 icecast -b -c etc/icecast.xml nobody 21607 0.0 0.2 22624 2532 ? S Feb11 0:02 icecast -b -c etc/icecast.xml nobody 21608 0.0 0.2 22624 2532 ? S Feb11 0:02 icecast -b -c etc/icecast.xmlIsso indica que seu icecast está rodando. Agora você precisa testar se ele está funcionando para conexões vindas do seu próprio computador e para conexões que vem de fora, da internet. Se você utiliza algum tipo de firewall, será preciso configurar para que o ele permita conexões entrantes na porta que você configurou o icecast. Um outro teste é abrir seu navegador web e digitar http://localhost:porta/status.xsl ou então, caso você tenha instalado o icecast num servidor que não é o seu computador pessoal, acesse http://ip-do-servidor:porta/status.xsl, onde ip-do-servidor é o ip do seu servidor e porta é porta configurada para o icecast. Se tudo der certo, você verá uma página com informações do tipo quantas transmissões estão sendo feitas, quais são e quantos ouvintes existem atualmente. Para prosseguir com os testes, experimente conectar-se ao servidor utilizando tanto programas para fazer quanto para receber sua conexão, de acordo com o manual de webradio. As transmissões devem estar disponíveis a partir da página web do icecast. Se as coisas aparentemente não estão funcionando, é hora de checar os arquivos de registro, como será explicado na seção seguinte. Resolvendo problemas (arquivos de log)Caso o seu servidor não esteja funcionando corretamente, é importante checar quais são as mensagens emitidas por ele. Para isso, certifique-se que ele esteja rodando e que o diretório reservado aos seus registros logdir seja passível de escrita por parte do usuário e pelo grupo sob os quais o icecast roda, por exemplo o usuário e o grupo nobody. A seguir, abra dois terminais. No primeiro, dê o comandotail -f /var/log/icecast/access.logNo segundo, dê o comando tail -f /var/log/icecast/error.logDessa forma você verá as mensagens de erro do icecast no momento em que são produzidas. Agora, tudo o que você precisa fazer é tentar interagir com o icecast e observar nesses dois arquivos as mensagens de aviso, de accesso e de erro. Lembre-se que o detalhamento dessas mensagens pode ser regulado com a opção loglevel. Sabendo o tipo de erro produzido, você pode efetuar as alterações necessárias na sua configuração ou buscas por ajuda em listas de discussão especializadas, como a lista oficial do icecast. Domínios para IPs fixos e dinâmicosPode acontecer que você tenha uma conexão com a internet mas não tenha um domínio. Mesmo que o seu IP seja dinâmico, é possível criar um domínio gratuito para ele. Existem alguns serviços gratuitos como o Dynamic Network Services e o FreeDNS, que oferecem subdomínios de alguns domínios específicos, do tipo seusite.homelinux.net. Basta que você crie uma conta nesse site e adicione domínios. Caso seu IP seja fixo, basta apontar esses domínios para seu IP que tudo está resolvido. Caso seu IP seja dinâmico, você ainda terá que baixar um pequeno script e rodá-lo a cada vez que seu computador recebe um novo IP. Para maiores detalhes, consulte o FreeDNS ou o DynDNS.Interface de administraçãoO icecast permite que tarefas administativas sejam efetuadas enquanto o servidor está rodando, através de uma interface de administração. Tais tarefas de modo algum são salvas no arquivo de configuração do icecast e são perdidas quando as transmissões se encerram ou quando o servidor é desligado. O acesso à interface é feito por requisições ao endereço http://ip-do-servidor:porta/admin juntamente com dados da tarefa que se deseja efetuar ou diretamente através da página http://ip-do-servidor:porta/admin/stats.xsl. O acesso é restrito a usuário e senha e as tarefas são: Tarefas específicas a pontos de montagem
Mudança nos metadadosEssa tarefa permite que tanto o programa fonte de webradio quanto um programa auxiliar atualizem os metadados da transmissão. Isso pode ser feito na página de administração, pelo endereçohttp://ip-do-servidor:porta/admin/updatemetadata.xsl?mount=/minharadioonde minharadio é o ponto de montagem de interesse, ou diretamente através de uma requisição por HTTP, como por exemplo http://ip-do-servidor:porta/admin/metadata?mount=/minharadio&mode=updinfo&song=Nova+MusicaNesse caso, a música listada nos metadados do ponto de montagem /minharadio será Nova Musica. Mudança do ponto de fallbackPermite que seja mudada a opção fallback-mount, definida para cada ponto de montagem. A requisição HTTP para mudar o ponto de fallback da transmissão que está acontecendo no ponto de montagem minharadio para meufallback é a seguinte:http://ip-do-servidor:porta/admin/fallbacks?mount=/minharadio&fallback=/meufallback Listagem de clientesRetorna uma listagem em formato XML contendo os ouvintes atualmente conectados no ponto de montagem. Pode ser obtida através da requisição ao endereçohttp://ip-do-servidor:porta/admin/listclients.xsl?mount=/minharadio Mover clientesEsta funcionalidade permite que sejam movidos os ouvintes de um ponto de montagem para outro se que estes sejam desconectados. Isso é possível através do endereçohttp://ip-do-servidor:porta/admin/admin/moveclients.xsl?mount=/minharadioou pela seguinte requisição: http://ip-do-servidor:porta/admin/moveclients?mount=/minharadio&destination=/minhaoutraradio Matar clientesCom essa opção é possível desconectar determinados ouvintes de um ponto de montagem. Para matar um cliente, é necessário saber seu NUMERO, o que pode ser obtido na listagem de clientes daquele ponto de montagem. A requisição para desconectar um dado cliente éhttp://ip-do-servidor:porta/admin/killclient?mount=/minharadio&id=NUMERO Matar ponto de montagemPermite que seja encerrada uma transmissão. A requisição é a seguinte:http://ip-do-servidor:porta/admin/killsource?mount=/minharadio EstatísticasRetorna o máximo de informações disponíveis sobre o servidor icecast, como pontos de montagens, número de ouvintes, etc. A lista retornada está no formato XML e pode ser obtida pela requisiçãohttp://ip-do-servidor:porta/admin/stats Listar pontos de montagemHá uma listagem de todos os pontos de montagem existentes no servidor através do endereçohttp://ip-do-servidor:porta/admin/listmounts Páginas de estatísticasHá uma página de estatísticas padrão no icecast disponível em http://ip-do-servidor/status.xsl e que pode ser personalizada. Esse arquivo XSL fica no diretório definido na opção webroot. Essa pasta ainda pode conter outros arquivos XSL personalizados, cada um deles exibindo as estatísticas de uma forma diferente. O acesso à essa página de estatísticas não requer usuário e senha, e tipicamente ela conterá informações de cada ponto de montagem. Consulte a documentação do icecast para mais informações.Distribuindo o uso da bandaO que fazer quando a sua conexão com a internet não é suficiente para o número de ouvintes que o servidor necessita? Aumentar a largura da banda pode custar muito caro. Uma solução barata pode ser obtida com o auxílio das funcionalidades de relê do icecast. Ë perfeitamente possível utilizar vários icecasts em servidores diferentes, cada um deles usando uma conexão com a internet. Esses servidores fazem um relê da transmissão originária de um servidor mestre. Para distribuir os ouvintes entre os servidores de forma transparente, é possível utilizar algum script, em PHP ou Python, por exemplo, que gere uma playlist contendo o endereço da transmissão que esteja no servidor mais vazio. Para isso, basta que quando o usuário faça a requisição da playlist ao script, o mesmo verifique através da página de estatísticas de cada servidor o número de ouvintes no ponto de montagem requisitado e a partir dessa informação escolha qual será o servidor enviado ao usuário. Com esse esquema você pode juntar facilmente seus amigos e montar uma infra-estrutura barata para montar webradios que aguentem diversos ouvintes, usando para isso algumas conexões de banda larga.Icecast no WindowsEste manual foi escrito para a versão do Icecast para sistemas UNIX. No entanto, muitas das funcionalidades aqui descritas servem para a versão Windows. A principal diferença entre a versão UNIX e a Windows é que esta última possui uma interface gráfica. Essa interface contém principalmente duas abas, uma com estatísticas do servidor e outra com estatísticas de cada ponto de montagem, e um menu onde é possível acessar as configurações do servidor. Nesse menu as configurações só podem ser alteradas se o servidor estiver desligado. Existe uma descrição mais detalhada da interface Windows na documentação do icecast.Outras tecnologiasO Icecast não é a única opção de plataforma para streaming, principalmente se você deseja algo mais parecido com uma rede P2P (ponto a ponto). Aqui estão ótimas alternativas:
Maiores informaçõesSe você está com dúvidas ou dificuldades para fazer sua prórpia rádio, escreva para a lista de discussão do Coletivo Técnico Projeto radiolivre.org, tech@radiolivreSTOPSPAM.org ou pelo email do Coletivo Técnico do CMI Brasil, cmi-brasil-tech@lists.indymediaSTOPSPAM.org.Sobre este manualEste manual foi escrito por Rhatto (rhatto@riseupSTOPSPAM.net).
Copyright (c) Rizoma de Rádios Livres e Silvio Rhatto. É garantida a permissão para copiar, distribuir e/ou modificar este documento sob os termos da Licença de Documentação Livre GNU (GNU Free Documentation License), Versão 1.2 ou qualquer versão posterior publicada pela Free Software Foundation; sem Seções Invariantes, Textos de Capa Frontal, e sem Textos de Quarta Capa. Uma cópia da licença é incluída na seção intitulada "GNU Free Documentation License".
|
User loginNavigationOuça as Rádios |
Comments
IP Dinâmico
Rhato,
Estou me batendo na parte do que fala no IP Dinâmico. Na intranet, a rádio tá rodando legal, agora não consigo acessar de fora. Se tiver um tutorial aí e o script que tem que rodar toda vez, manda fazendao favor (s_ribas@yahoo.com)
Obrigado!
Domínio dinâmico e firewall
Então, você pode também estar com problema de bloquei de portas pelo seu firewall / roteador.
Quanto aos scripts para renovar seu IP no seu "domínio dinâmico", eles dependem de qual serviço você está utilizando o no-ip.com, vá em http://www.no-ip.com/downloads.php. Caso seja o freedns, dê uma olhada em http://freedns.afraid.org/scripts/freedns.clients.php.
Windows - SHOUTcast
Como eu faço pra criar um servidor de webradio utilizando Windows XP e o plugin SHOUTcast para o Winamp???
Aí me add la no msn
Aí me add la no msn sumer_sauron@hotmail.com e nois bate um papo
Montar Radio web duvidas???
Ola rhatto queria saber como colocar uma radio web no ar, eu ja li um monte de vez esse manual que vc manda desse site não compreendi algumas coisas. Primeiramente deixa eu explicar o que eu tenho, um ip valido, um computador de studio, outro de gravaçao, esse de "gravaçao" vem o som do studio e é gravado a programaçao diaria nele vai ser o servidor ok, tenho o programa encoder 7, ele server para codificação para o som que vem do studio certo, ate ai consegui, quero saber que programa que posso usar junto com o encoder para fazer a trasmissao e depois como tenho o IP valido é so colocar na net, ex Http://200.200.200.200:8080 ja fiz pelo winamp junto com SHOUTcast e deu certo na rede local, mais nao consegui fz transmissao em tempo real e sim selecionando algumas musicas e abrindo e o winamp na outra maquina e testando, mas o que preciso e enviar o audio que sai do studio para internet igual a jovem pan ou outra qualquer.
Se voce tiver msn seria melhor pois seria 5 minutos para colocar a radio no ar, pois ja percebi que voce é crack nesse assunto de radioweb. Abraços.
Eu ja fiz de tudo aqui tambem mas não funfa RADIO ONLINE
Não sei mais oq faço ,
porenquanto vou administrando dois sites de com musicas e videos tenho que me contentar
-/ RADIO ONLINE \- http://www.MUSICAS.RG.com.br
-/ TV ONLINE \- http://www.TVONLINE.XPG.com.br
webradio
to precisandu de um profissional que possa desenvolver uma webradio, meu msn eh executt@hotmail.com, 36734307
melq salviano