___ qstntxt ___

Estou executando um ambiente de servidor Ubuntu com icecast-2.3.2 e ices-0.4.0 para ativar o streaming de rádio pela Internet.

Eu tenho um diretório com arquivos de música, principalmente MP3, vamos chamá-lo de %code% . Eu também tenho diretórios com jingles e podcasts. %code% e %code% .

Até agora, meu servidor está funcionando.

O que funciona:

  • Criando listas de reprodução aleatórias diárias a partir do diretório de músicas usando um script e um cron-job.
  • Execução de um servidor IceCast2 e transmissão do arquivo da lista de reprodução usando o IceS.

A minha pergunta agora é:

  • Como reproduzir podcasts e jingles em horários específicos? Por exemplo, toda hora inteira, um certo jingle, ou toda quinta-feira às 20h. um certo podcast?

Eu tentei pesquisar na Internet sobre este tópico, mas parece que não há "uma solução final" para este problema de automação de rádio e também parece que muitas soluções são bastante hacky, não são?

Tenha em mente que este é um ambiente de servidor, soluções com GUI não ajudam.

Agradeço quaisquer sugestões e experiências sobre este assunto!

    
___ tag123server ___ Questões relacionadas ao Ubuntu Server e pacotes relacionados ao servidor. ___ tag123internetradio ___ O rádio da Internet (também web radio, net radio, streaming radio, e-radio webcasting) é um serviço de áudio transmitido via Internet. Os serviços de rádio na Internet geralmente são acessíveis de qualquer lugar do mundo. ___ tag123ices ___ nos ajuda a editar este wiki ___ answer1001493 ___

AzuraCast: um gerente de rádio da Web auto-hospedado

Fonte: link

O Azuracast é um conjunto de gerenciamento de rádio via Web auto-hospedado, incluindo ferramentas de instalação completas e um aplicativo da Web fácil de usar para gerenciar suas estações. http://azuracast.com/

Recursos

Com o AzuraCast, você pode:

  • Gerenciar sua mídia: faça o upload de músicas da web, organize músicas em pastas e visualize músicas em seu navegador.
  • Criar listas de reprodução: configure listas de reprodução padrão que são reproduzidas o tempo todo, listas de reprodução agendadas para períodos de tempo ou listas de reprodução especiais que são reproduzidas uma vez por x músicas ou uma vez por x minutos.
  • Configurar DJs ao vivo: ative ou desative a transmissão ao vivo de streamers / DJs e crie contas individuais para cada streamer usar.
  • Solicitações de ouvinte: permita que seus ouvintes solicitem músicas específicas de suas listas de reprodução, por meio de uma API e de uma página simples de ouvinte voltada ao público.
  • Analytics and Reports: acompanhe todos os aspectos dos ouvintes da sua estação ao longo do tempo. Veja relatórios do desempenho de cada música.
  • Piloto automático de estação: o AzuraCast pode atribuir músicas automaticamente a uma lista de reprodução com base no impacto da música nos números dos ouvintes.
  • Gerenciamento de delegação: crie e remova contas de administrador separadas para cada gerente de estação.
  • ... e mais.

Software de rádio da Web suportado

  • O AzuraCast usa o LiquidSoap como um "AutoDJ" para reproduzir músicas e listas de reprodução e fornecer um fluxo de rádio sempre online. Você pode se conectar ao LiquidSoap e transmitir seus próprios eventos ao vivo como DJ também.

  • Para transmitir sua estação de rádio ao público, o AzuraCast suporta os dois padrões de ouro na web rádio, IceCast (v2.4) e ShoutCast (v2). Você pode mudar qual destas estações sua estação usa quando quiser.

Você também pode usar o AzuraCast como uma ferramenta para retransmitir ou coletar estatísticas do ouvinte e outros dados sobre estações que o AzuraCast não gerencia.

Sistemas Operacionais Suportados

Existem duas maneiras de instalar o AzuraCast:

  1. Usando o Docker e o Docker Compose (recomendado): este método contém todas as dependências do AzuraCast em imagens de contêiner pré-construídas. A atualização e a instalação são mais rápidas e há muito menos problemas com compatibilidade de software. Este método funciona em qualquer computador que suporte a versão mais recente do Docker Engine e do Docker Compose; ambos podem ser instalados como parte do script do instalador do AzuraCast.

  2. Instalação tradicional (Ubuntu 16.04 apenas): A partir de uma imagem limpa do Ubuntu, você pode instalar o AzuraCast diretamente no seu servidor usando os scripts de instalação incluídos, que usam o Ansible para gerenciar dependências. A instalação e a atualização são mais lentas usando esse método, mas você tem mais controle sobre o software depois de instalado. Se você tiver outro software instalado em seu servidor, ele poderá entrar em conflito com o AzuraCast, portanto, inicie sempre a partir de uma instalação limpa usando este método.

Estamos sempre procurando expandir nossa compatibilidade com os sistemas operacionais host, e damos as boas-vindas a qualquer assistência na criação de novos scripts de implantação para outros ambientes.

O que está incluído no AzuraCast

Se você estiver usando o instalador tradicional ou os contêineres do Docker, o AzuraCast depende da mesma pilha de software para operar:

  • NGINX para veicular páginas da web e o proxy de rádio
  • MariaDB como o banco de dados principal
  • PHP 7.2 alimentando o aplicativo da web
  • InfluxDB para estatísticas baseadas em séries de tempo
  • Redis para sessões, banco de dados e armazenamento em cache geral
  • LiquidSoap como o "AutoDJ" de reprodução contínua
  • IceCast 2 como frontend de transmissão de rádio (Icecast-KH instalado em plataformas compatíveis)
  • ShoutCast 2 DNAS como um frontend de rádio alternativo (apenas x86 / x64) Instalando o AzuraCast

Instalando o AzuraCast

Instalação do Docker (recomendada)

É altamente recomendável instalar e usar o AzuraCast via Docker. Todos os pacotes de software necessários são criados por nossas ferramentas automatizadas, portanto, a instalação é tão fácil quanto simplesmente extrair as imagens pré-compiladas. Não há necessidade de se preocupar com a compatibilidade com o sistema operacional do host, portanto, qualquer host (incluindo Windows e MacOS) funcionará muito bem.

  1. Instalar o Docker e o Docker Compose Seu computador ou servidor deve estar executando a versão mais recente do Docker e do Docker Compose. Você pode usar os scripts fáceis abaixo para instalar os dois se estiver começando do zero:

    %pre%

    Se você não estiver instalando como root, poderá receber instruções para adicionar seu usuário atual ao grupo do Docker (por exemplo, %code% ). Você deve sair ou reiniciar depois de fazer isso antes de continuar abaixo.

  2. Puxar o arquivo Compose do Docker do AzuraCast

    Escolha onde o computador host deseja que o arquivo de configuração do AzuraCast exista em seu servidor.

    Dentro desse diretório, execute este comando para puxar o arquivo de configuração do Docker Compose.

    %pre%
  3. Execute o instalador do Docker do AzuraCast

    No diretório que contém seu arquivo de configuração YML, execute estes comandos:

    %pre%

Configurando o HTTPS com o LetsEncrypt

O AzuraCast agora suporta criptografia completa com o LetsEncrypt. O LetsEncrypt oferece certificados SSL gratuitos com fácil validação e renovação.

Primeiro, verifique se sua instância do AzuraCast está configurada e sendo veiculada no domínio que você deseja usar. Em seguida, execute o seguinte comando para gerar um novo certificado LetsEncrypt:

%pre%

Você será solicitado a especificar seu endereço de e-mail e nome de domínio. A validação acontecerá automaticamente. Depois de concluído, execute este comando para informar ao nginx para usar seu novo certificado LetsEncrypt:

%pre%

Recarregue o nginx usando o comando abaixo:

%pre%

Seu certificado LetsEncrypt é válido por 3 meses. Para renovar os certificados, execute este comando:

%pre%

Atualizando com o Docker

De dentro do diretório base onde o AzuraCast é copiado, execute os seguintes comandos:

%pre%

Backup e restauração de volume do Docker

O AzuraCast tem scripts utilitários para facilitar o backup e a restauração de volumes do Docker.

Você pode usar o docker-backup.sh para fazer backup dos volumes existentes. Você pode especificar um caminho personalizado como o argumento do script. Por padrão, o script criará um arquivo, backup.tar.gz na raiz do aplicativo.

Para restaurar o estado do aplicativo a partir desse arquivo compactado, use docker-restore.sh e forneça o caminho do arquivo de backup existente.

Observe que o processo de restauração substituirá qualquer banco de dados ou mídia existente do AzuraCast existente nos volumes do Docker.

Instalação Tradicional (Ubuntu 16.04 apenas)

Nota: Alguns anfitriões web oferecem versões personalizadas do Ubuntu que incluem diferentes repositórios de software. Isso pode causar problemas de compatibilidade com o AzuraCast. Muitos provedores de VPS são conhecidos por trabalhar com o AzuraCast (OVH, DigitalOcean, Vultr, etc) e, portanto, são altamente recomendados se você planeja usar o instalador tradicional.

O AzuraCast é otimizado para velocidade e desempenho e pode ser executado em um hardware muito barato, desde o Raspberry Pi 3 até os VPSs de nível mais baixo oferecidos pela maioria dos provedores.

Como o AzuraCast instala suas próprias ferramentas de rádio, bancos de dados e servidores da Web, você deve sempre instalar o AzuraCast em uma instância de servidor "limpa" sem nenhum outro software de rádio ou da Web instalado anteriormente.

Execute esses comandos como usuário root para configurar seu servidor AzuraCast:

%pre%

Se você não puder fazer login diretamente como a conta raiz em seu servidor, tente executar o sudo su antes de executar os comandos acima.

O processo de instalação demora entre 5 e 15 minutos, dependendo da sua conexão com a internet.

Quando a instalação baseada em terminal estiver concluída, você poderá visitar o endereço IP público do seu servidor ( link ) para concluir a Web configuração baseada em.

Atualização

O AzuraCast também inclui um prático script de atualização que extrai a última cópia da base de código do Git, libera os caches do site e faz as atualizações necessárias do banco de dados. Execute estes comandos como qualquer usuário com permissões sudo:

%pre%     
___ tag123automation ___ O uso de sistemas de controle para reduzir a necessidade de trabalho humano. Relacionado a sistemas automáticos. ___ answer245422 ___

A resposta é: liquidsoap.

  

liquidsoap , um canivete suíço para streaming de multimídia, especialmente usado para netradios e webtvs. Tem toneladas de recursos, é grátis e é de código aberto!

Demorei alguns dias para entender como os fluxos são gerados. O liquidsoap consiste em pequenos scripts que descrevem os parâmetros do fluxo. um script simples que carrega e toca uma lista de reprodução de mp3, vamos chamá-lo de %code% , é mostrado abaixo:

%pre%

teste o script com:

%pre%

e inicie o script com:

%pre%

mas o liquidsoap é muito mais poderoso. por exemplo, para tocar um jingle a cada hora, basta adicionar:

%pre%

mas muito mais recursos são descritos na página inicial:

  
  • listas de reprodução estáticas ou dinâmicas
  •   
  • seleção baseada em tempo da fonte de áudio
  •   inserções ou misturas de jingles com base em cotas ou tempo
  •   
  • intervenções de DJ ao vivo
  •   
  • solicitações de usuário interativas
  •   
  • transições totalmente personalizáveis, por exemplo crossfading
  •   
  • síntese de fala dos metadados da faixa
  •   
  • acesso simples a arquivos remotos
  •   
  • e muito mais
  •   

Vale a pena dar uma olhada no guia de início rápido , mais exemplo complexo e o documentação .

    
___ tag123icecast ___ O Icecast é um servidor de mídia de streaming de código aberto gratuito que atualmente suporta streaming de Vorbis, Opus, WebM e Theora. Também conhecido por trabalhar são MP3 e AAC. ___

4

Estou executando um ambiente de servidor Ubuntu com icecast-2.3.2 e ices-0.4.0 para ativar o streaming de rádio pela Internet.

Eu tenho um diretório com arquivos de música, principalmente MP3, vamos chamá-lo de /PATH/TO/MUSIC . Eu também tenho diretórios com jingles e podcasts. /PATH/TO/JINGLES e /PATH/TO/PODCASTS .

Até agora, meu servidor está funcionando.

O que funciona:

  • Criando listas de reprodução aleatórias diárias a partir do diretório de músicas usando um script e um cron-job.
  • Execução de um servidor IceCast2 e transmissão do arquivo da lista de reprodução usando o IceS.

A minha pergunta agora é:

  • Como reproduzir podcasts e jingles em horários específicos? Por exemplo, toda hora inteira, um certo jingle, ou toda quinta-feira às 20h. um certo podcast?

Eu tentei pesquisar na Internet sobre este tópico, mas parece que não há "uma solução final" para este problema de automação de rádio e também parece que muitas soluções são bastante hacky, não são?

Tenha em mente que este é um ambiente de servidor, soluções com GUI não ajudam.

Agradeço quaisquer sugestões e experiências sobre este assunto!

    
por Afri 21.12.2012 / 12:35

2 respostas

1

A resposta é: liquidsoap.

  

liquidsoap , um canivete suíço para streaming de multimídia, especialmente usado para netradios e webtvs. Tem toneladas de recursos, é grátis e é de código aberto!

Demorei alguns dias para entender como os fluxos são gerados. O liquidsoap consiste em pequenos scripts que descrevem os parâmetros do fluxo. um script simples que carrega e toca uma lista de reprodução de mp3, vamos chamá-lo de basic.liq , é mostrado abaixo:

#!/usr/bin/liquidsoap

# load a playlist file
stream = playlist("/path/to/playlist.pls")

# output the playlist to icecast
source = output.icecast(%mp3, host="localhost", port="8000",
         mount="listen.m3u", password="hackme")
source(stream)

teste o script com:

$ liquidsoap --check ./basic.liq

e inicie o script com:

$ liquidsoap ./basic.liq &

mas o liquidsoap é muito mais poderoso. por exemplo, para tocar um jingle a cada hora, basta adicionar:

# add a jingle every full hour
jingle = single("/path/to/jingle.mp3")
add([stream,switch([({0m0s},jingle)])])

mas muito mais recursos são descritos na página inicial:

  
  • listas de reprodução estáticas ou dinâmicas
  •   
  • seleção baseada em tempo da fonte de áudio
  •   inserções ou misturas de jingles com base em cotas ou tempo
  •   
  • intervenções de DJ ao vivo
  •   
  • solicitações de usuário interativas
  •   
  • transições totalmente personalizáveis, por exemplo crossfading
  •   
  • síntese de fala dos metadados da faixa
  •   
  • acesso simples a arquivos remotos
  •   
  • e muito mais
  •   

Vale a pena dar uma olhada no guia de início rápido , mais exemplo complexo e o documentação .

    
por Afri 20.01.2013 / 18:55
1

AzuraCast: um gerente de rádio da Web auto-hospedado

Fonte: link

O Azuracast é um conjunto de gerenciamento de rádio via Web auto-hospedado, incluindo ferramentas de instalação completas e um aplicativo da Web fácil de usar para gerenciar suas estações. http://azuracast.com/

Recursos

Com o AzuraCast, você pode:

  • Gerenciar sua mídia: faça o upload de músicas da web, organize músicas em pastas e visualize músicas em seu navegador.
  • Criar listas de reprodução: configure listas de reprodução padrão que são reproduzidas o tempo todo, listas de reprodução agendadas para períodos de tempo ou listas de reprodução especiais que são reproduzidas uma vez por x músicas ou uma vez por x minutos.
  • Configurar DJs ao vivo: ative ou desative a transmissão ao vivo de streamers / DJs e crie contas individuais para cada streamer usar.
  • Solicitações de ouvinte: permita que seus ouvintes solicitem músicas específicas de suas listas de reprodução, por meio de uma API e de uma página simples de ouvinte voltada ao público.
  • Analytics and Reports: acompanhe todos os aspectos dos ouvintes da sua estação ao longo do tempo. Veja relatórios do desempenho de cada música.
  • Piloto automático de estação: o AzuraCast pode atribuir músicas automaticamente a uma lista de reprodução com base no impacto da música nos números dos ouvintes.
  • Gerenciamento de delegação: crie e remova contas de administrador separadas para cada gerente de estação.
  • ... e mais.

Software de rádio da Web suportado

  • O AzuraCast usa o LiquidSoap como um "AutoDJ" para reproduzir músicas e listas de reprodução e fornecer um fluxo de rádio sempre online. Você pode se conectar ao LiquidSoap e transmitir seus próprios eventos ao vivo como DJ também.

  • Para transmitir sua estação de rádio ao público, o AzuraCast suporta os dois padrões de ouro na web rádio, IceCast (v2.4) e ShoutCast (v2). Você pode mudar qual destas estações sua estação usa quando quiser.

Você também pode usar o AzuraCast como uma ferramenta para retransmitir ou coletar estatísticas do ouvinte e outros dados sobre estações que o AzuraCast não gerencia.

Sistemas Operacionais Suportados

Existem duas maneiras de instalar o AzuraCast:

  1. Usando o Docker e o Docker Compose (recomendado): este método contém todas as dependências do AzuraCast em imagens de contêiner pré-construídas. A atualização e a instalação são mais rápidas e há muito menos problemas com compatibilidade de software. Este método funciona em qualquer computador que suporte a versão mais recente do Docker Engine e do Docker Compose; ambos podem ser instalados como parte do script do instalador do AzuraCast.

  2. Instalação tradicional (Ubuntu 16.04 apenas): A partir de uma imagem limpa do Ubuntu, você pode instalar o AzuraCast diretamente no seu servidor usando os scripts de instalação incluídos, que usam o Ansible para gerenciar dependências. A instalação e a atualização são mais lentas usando esse método, mas você tem mais controle sobre o software depois de instalado. Se você tiver outro software instalado em seu servidor, ele poderá entrar em conflito com o AzuraCast, portanto, inicie sempre a partir de uma instalação limpa usando este método.

Estamos sempre procurando expandir nossa compatibilidade com os sistemas operacionais host, e damos as boas-vindas a qualquer assistência na criação de novos scripts de implantação para outros ambientes.

O que está incluído no AzuraCast

Se você estiver usando o instalador tradicional ou os contêineres do Docker, o AzuraCast depende da mesma pilha de software para operar:

  • NGINX para veicular páginas da web e o proxy de rádio
  • MariaDB como o banco de dados principal
  • PHP 7.2 alimentando o aplicativo da web
  • InfluxDB para estatísticas baseadas em séries de tempo
  • Redis para sessões, banco de dados e armazenamento em cache geral
  • LiquidSoap como o "AutoDJ" de reprodução contínua
  • IceCast 2 como frontend de transmissão de rádio (Icecast-KH instalado em plataformas compatíveis)
  • ShoutCast 2 DNAS como um frontend de rádio alternativo (apenas x86 / x64) Instalando o AzuraCast

Instalando o AzuraCast

Instalação do Docker (recomendada)

É altamente recomendável instalar e usar o AzuraCast via Docker. Todos os pacotes de software necessários são criados por nossas ferramentas automatizadas, portanto, a instalação é tão fácil quanto simplesmente extrair as imagens pré-compiladas. Não há necessidade de se preocupar com a compatibilidade com o sistema operacional do host, portanto, qualquer host (incluindo Windows e MacOS) funcionará muito bem.

  1. Instalar o Docker e o Docker Compose Seu computador ou servidor deve estar executando a versão mais recente do Docker e do Docker Compose. Você pode usar os scripts fáceis abaixo para instalar os dois se estiver começando do zero:

    wget -qO- https://get.docker.com/ | sh
    COMPOSE_VERSION='git ls-remote https://github.com/docker/compose | grep refs/tags | grep -oP "[0-9]+\.[0-9][0-9]+\.[0-9]+$" | tail -n 1'
    sudo sh -c "curl -L https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-'uname -s'-'uname -m' > /usr/local/bin/docker-compose"
    sudo chmod +x /usr/local/bin/docker-compose
    sudo sh -c "curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VERSION}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose"
    

    Se você não estiver instalando como root, poderá receber instruções para adicionar seu usuário atual ao grupo do Docker (por exemplo, usermod -aG docker $user ). Você deve sair ou reiniciar depois de fazer isso antes de continuar abaixo.

  2. Puxar o arquivo Compose do Docker do AzuraCast

    Escolha onde o computador host deseja que o arquivo de configuração do AzuraCast exista em seu servidor.

    Dentro desse diretório, execute este comando para puxar o arquivo de configuração do Docker Compose.

    curl -L https://raw.githubusercontent.com/AzuraCast/AzuraCast/master/docker-compose.yml > docker-compose.yml
    
  3. Execute o instalador do Docker do AzuraCast

    No diretório que contém seu arquivo de configuração YML, execute estes comandos:

    docker-compose pull  
    docker-compose run --rm cli azuracast_install
    docker-compose up -d
    

Configurando o HTTPS com o LetsEncrypt

O AzuraCast agora suporta criptografia completa com o LetsEncrypt. O LetsEncrypt oferece certificados SSL gratuitos com fácil validação e renovação.

Primeiro, verifique se sua instância do AzuraCast está configurada e sendo veiculada no domínio que você deseja usar. Em seguida, execute o seguinte comando para gerar um novo certificado LetsEncrypt:

docker-compose run --rm letsencrypt certonly --webroot -w /var/www/letsencrypt  

Você será solicitado a especificar seu endereço de e-mail e nome de domínio. A validação acontecerá automaticamente. Depois de concluído, execute este comando para informar ao nginx para usar seu novo certificado LetsEncrypt:

docker-compose run --rm nginx letsencrypt_connect YOURDOMAIN.example.com

Recarregue o nginx usando o comando abaixo:

docker-compose kill -s SIGHUP nginx

Seu certificado LetsEncrypt é válido por 3 meses. Para renovar os certificados, execute este comando:

docker-compose run --rm letsencrypt renew --webroot -w /var/www/letsencrypt  

Atualizando com o Docker

De dentro do diretório base onde o AzuraCast é copiado, execute os seguintes comandos:

docker-compose down
docker-compose pull
docker-compose run --rm cli azuracast_update  
docker-compose up -d  

Backup e restauração de volume do Docker

O AzuraCast tem scripts utilitários para facilitar o backup e a restauração de volumes do Docker.

Você pode usar o docker-backup.sh para fazer backup dos volumes existentes. Você pode especificar um caminho personalizado como o argumento do script. Por padrão, o script criará um arquivo, backup.tar.gz na raiz do aplicativo.

Para restaurar o estado do aplicativo a partir desse arquivo compactado, use docker-restore.sh e forneça o caminho do arquivo de backup existente.

Observe que o processo de restauração substituirá qualquer banco de dados ou mídia existente do AzuraCast existente nos volumes do Docker.

Instalação Tradicional (Ubuntu 16.04 apenas)

Nota: Alguns anfitriões web oferecem versões personalizadas do Ubuntu que incluem diferentes repositórios de software. Isso pode causar problemas de compatibilidade com o AzuraCast. Muitos provedores de VPS são conhecidos por trabalhar com o AzuraCast (OVH, DigitalOcean, Vultr, etc) e, portanto, são altamente recomendados se você planeja usar o instalador tradicional.

O AzuraCast é otimizado para velocidade e desempenho e pode ser executado em um hardware muito barato, desde o Raspberry Pi 3 até os VPSs de nível mais baixo oferecidos pela maioria dos provedores.

Como o AzuraCast instala suas próprias ferramentas de rádio, bancos de dados e servidores da Web, você deve sempre instalar o AzuraCast em uma instância de servidor "limpa" sem nenhum outro software de rádio ou da Web instalado anteriormente.

Execute esses comandos como usuário root para configurar seu servidor AzuraCast:

apt-get update
apt-get install -q -y git
mkdir -p /var/azuracast/www
cd /var/azuracast/www
git clone https://github.com/AzuraCast/AzuraCast.git .
chmod a+x install.sh
./install.sh

Se você não puder fazer login diretamente como a conta raiz em seu servidor, tente executar o sudo su antes de executar os comandos acima.

O processo de instalação demora entre 5 e 15 minutos, dependendo da sua conexão com a internet.

Quando a instalação baseada em terminal estiver concluída, você poderá visitar o endereço IP público do seu servidor ( link ) para concluir a Web configuração baseada em.

Atualização

O AzuraCast também inclui um prático script de atualização que extrai a última cópia da base de código do Git, libera os caches do site e faz as atualizações necessárias do banco de dados. Execute estes comandos como qualquer usuário com permissões sudo:

cd /var/azuracast/www
sudo chmod a+x update.sh
sudo ./update.sh
    
por Spiros R Karasavvas 30.01.2018 / 21:43