Infra - Linux

Servidor Web de MP3 com Amarok

Imagine usar o Amarok para compartilhar músicas com seus amigos ou num pequeno escritório através de uma interface Web simples e fácil, onde as pessoas podem ouvir, fazer downloads ou baixar albúns para seus desktops. Isso é possível através de uma ferramenta chamada “ObsidianMusic” e é isso que veremos nesse artigo.

por Professor David



Que o Amarok é o melhor player mp3 do mundo, isso quase todo mundo que já o conheceu tem idéia. E esse é mais um motivo para continuar sendo. Imagine usar o Amarok para compartilhar músicas com seus amigos ou num pequeno escritório através de uma interface Web simples e fácil, onde as pessoas podem ouvir, fazer downloads ou baixar albúns para seus desktops. Isso é possível através de uma ferramenta chamada “ObsidianMusic” e é isso que veremos nesse artigo.

Inspirado na análise do linux.com

1- Como funciona.

O processo de funcionamento do Amarok é simples em partes: A lista de músicas é gerada a partir de uma base de dados externa, o que garante a performance rápida e organização de albúns e playlist. Geralmente, essa base de dados roda em cima do SqlLite, mas o Amarok também tem suporte à MySQL e PostGre que podem ser facilmente acessados por um site PHP por exemplo. É justamente aí que entra o ObsidianMusic. Ele pega a base de dados MySQL das playlist do Amarok, organiza numa página Web, compacta e distribui os arquivos então entre os clientes, fazendo assim um excelente compartilhador Web de arquivos de musica.

Bem, chega de lenga lenga e vamos fazer tudo isso funcionar.

2- Baixando os programas necessários.

O primeiro passo será baixar o famoso pacote LAMP que inclui Apache, MySQL e PHP. É o primeiro passo para fazer tudo funcionar. Então vamos lá. Depois do já famoso e conhecido apt-get update, digite em seu terminal, tudo como root.

apt-get install apache2 php5 mysql-server-5.0 php5-mysql

Isso sobe os serviços de Servidor Web em sua máquina. O segundo passo será baixar e descompactar o ObsidianMusic. Baixe ele e descompacteo com o seguinte comando:

mkdir obsidian
cd obsidian
wget http://ufpr.dl.sourceforge.net/sourceforge/amarokwebfront/obsidianmusic-2.0.5.3.tar.bz2 tar -xjvf obsidianmusic-2.0.5.3.tar.bz2

Esses comandos vão baixar o obsidianmusic e, em seguida descompactá-lo, criando assim uma pasta chamada obsidianmusic. O conteúdo dessa pasta nada mais é do que o frontend Web do Amarok. Vamos pegar essa pasta agora e movê-la para o diretório /var/www e chamá-la de amarok , assim, ela será acessível via Web, já que /var/www é a pasta padrão onde o apache guarda seus sites.

mv obsidianmusic /var/www/amarok/

Pronto! Meio caminho andado.

3- Configurando tudo.

Vamos botar tudo pra funcionar agora. o primeiro passo agora é configurar o MySQL para receber as conexões vindas do Obsidian e do Amarok. Para isso, vamos começar criando um banco de dados no mysql chamado amarok.
Acesse o banco de dados do Mysql.

mysql -u root -p
digite sua senha de root.

Será exibido o prompt do MySQL. Agora crie o banco de dados. Não se esqueça que todos os comando no MySQL terminam sempre com ponto e virgula.

create database amarok;

Você vai receber um Ok em seu prompt. Agora vamos criar um usuário para acessar o banco de dados chamado amarokuser, com senha amarok123 e, em seguida vamos dar acesso total à ele ao banco de dados que acabamos de criar:

grant all on amarok.* to amarokuser identified by 'amarok123';
grant all on amarok.* to amarokuser identified by 'amarok123' with grant option;

Saia do banco de dados digitando:

quit

O banco de dados está ok. Agora vamos configurar o Obsidian para usar esse banco de dados.
Vá até a pasta /var/www/amarok/inc e edite o arquivo config.php de forma que ele fique com essas opções:

<?php 
if(eregi("config.php", $_SERVER["PHP_SELF"])){
 die("Cannot access directly.");
}
$db = array(
"user" => "amarokuser",
"pass" => "amarok123",
"name" => "amarok",
"host" => "localhost");
$dbtype = 0;
$locked = false;
$authtype = 1;
$cookielen = 60;
$playlist = 2;
$gzip = true;
$cache = true;
$paginate = true;
$ressize = 200;
$language = "en_us";
$sitename = "Minhas músicas do Amarok";
$theme = "default";
$allowchoose = false;
$extrainfo = true;
$errorreporting = false;
$enabled = true;
?>
	

Traduzindo algumas linhas importantes:

Logo abaixo de $db, as 4 linhas identificam os dados para acesso ao MySQL. Nome de usário, senha, nome do banco de dados e computador onde o MySQL está (em quase todos os casos é localhost).
$playlist identifica como o obsidian vai disponibilizar as faixas para o usuário. 1 é em formato .pls, para playslist, 2 é em formato m3u de streaming e 3 não toca nada, só baixa as músicas em seu computador.
$sitename corresponde ao nome do site que você vai dar ao seu servidor.
$extrainfo: quando true, permite mais informações sobre as faixas tocadas, se você achar muito poluído, use false.

Existem ainda várias outras opções a se fazer como entrar com nome de usuário e senha, e melhorar a performance do cache. Vale a pena dar uma fuçada nos Readme.

4- Configurando o Amarok e aumentando a performance.

Agora vamos configurar o Amarok para se comunicar com o banco de dados MySQL e organizar suas listas de musicas a partir dele, para isso faça o seguinte:
Clique em Configurações e Escolha Configurar Amarok.

Em seguida, na janela que se abre, vá em Coleção, escolha como banco de dados MySQL e na configuração do MySQL preencha os dados conforme já criamos anteriormente.

Vale lembrar que a performance do Amarok aumenta consideravelmente quando usado com o banco de dados MySQL. Você vai notar essa performance já no passo seguinte.

Agora falta apenas reescanear a coleção de músicas novamente para que o Amarok construa seu novo banco de dados, porém agora a partir do MySQL. Cliquem em Ferramentas e em seguida, Re-Escanear Coleção.

Aguarde alguns segundos e pronto! Tudo está ok para o Servidor Subir. Só vai faltar reiniciar os serviços MySQL e Apache2 com os comando abaixo:

/etc/init.d/mysql restart /etc/init.d/apache2 restart

5- Testando.

Para testar, basta abrir o seu navegador de qualquer computador (inclusive este) e digitar na barra de endereços:

http://ip.do.servidor.mp3/amarok

Onde o Ip do servidor é o endereço de rede do computador onde voce instalou o Amarok. Se você não souber qual é o ip do seu computador, use o comando abaixo para descobrir:

ifconfig |grep inet

O valor InetEnd corresponde ao seu ip, logo, em um computador cujo ip fosse 192.168.0.1, para acessar, bastava colocar em qualquer navegador de qualquer computador http://192.168.0.1/amarok

A tela abaixo aparece:

Quando o usuário clica em alguma música para ouvir, aparecerá a opção de fazer donwnload dela ou ouvir com o seu Player favorito.

Atenção!!

Usuários do Windows devem ter instalados em seus computadores os pacotes de codecs para o Windows Media Player, que podem ser encontrados em qualquer baixaki da vida.
Usuários Linux resolvem seus problemas de codecs com um apt-get:

apt-get install w32codecs

6- Conclusão.

Este é mais um recurso simples que pode ser usado para um Player de músicas excelente, aumentando ainda mais as suas funcionalidades. É claro que ainda há alguns Bugs como algumas páginas que não abrem direito ainda e a falta ao suporte do Idioma Português, mas, com certeza não deixa de ser uma grande ferramenta de compartilhamento de músicas, evitando assim os passeios de pendrive e banda de redes, ao arrastar enormes álbuns para lá e para cá, além de oferecer uma organização e uma base centralizada para o gerenciamento de músicas.
Sem dúvidas, não deixa de ser útil e interessante. ;-)

Até!!

Professor David

Professor David - Professor de Tecnologias e Informática a mais de 7 anos. Profissional de Infra estrutura de redes, domina ambientes corporativos Microsoft e OpenSource, sendo sua especialidade a plataforma Linux.
Atualmente, ministra palestras e treinamentos em soluções open source pelo estado de São Paulo e presta assessoria e gerenciamento de soluções em Infra estrutura de empresas que utilizam Sistemas Linux.