Arquivo de janeiro \02\UTC 2009

Gostaria de Instalar Servidor de Multimedia para PlayStation 3 no seu Ubuntu ?

Aqueles que possuem um Playstation 3 e dispuserem de um micro com um Ubuntu/Linux na mesma rede podem transforma-lo num servidor de multimédia para o Playstation 3. Isso não dá nenhuma dor de cabeça, alias, baseado no protocolo UPnP, o processo é muito simples de usar o playstation como central de entretenimento buscando arquivos multimédia que houver no seu Ubuntu/Linux. Para tal façanha precisamos instalar um programa chamado ‘PS3 Media Server’ ou apenas ‘PMS’ daqui em diante.

PMS é um DLNA compliant UPnP Media Server para o Playstation, escrito em Java, com o proposito de streamming de qualquer tipo de arquivo multimédia que seja suportado pela dobradinha Mplayer/FFmpeg e o melhor de tudo : com o minimo de configuração. Infelizmente, não há pacotes disponíveis para instalação desse programa via repositório, nem oficial, nem extra-oficial, o que nos fará descarregar e fazer a instalação por nossa própria conta.

Como já é de costume, vamos a um passo a passo.

Descarreguemos o PMS, isso poderá ser feito visitando a seguinte página :

http://code.google.com/p/ps3mediaserver/

Então clique no link downloads e descarregue a versão ‘PS3 Media Server for Linux v1.00’ como é exibido na figura abaixo :
ps3mediaserver-download

Após ter descarregado o arquivo acima, abra o terminal Linux e estando então na linha de comando, crie um diretório que absorverá a instalação :

sudo mkdir -p /usr/share/pms-linux

Estou assumindo que para executar esse programa seja requerido permissão de administrador.
Depois precisaremos descompactar o PMS no diretório recém criado, vá até a pasta onde você fez o download do PMS e descompacte-o assim :

cd /local/onde/descarreguei/o/arquivo
sudo unzip -o pms-linux-1.00.zip -d /usr/share/pms-linux
sudo chmod a+x /usr/share/pms-linux/PMS.sh

Pronto ! O programa foi instalado, no entanto, ele não possui nenhum atalho no menu do GNOME para carrega-lo, vamos resolver essa situação dando um ALT+F2 e executando “gksu gedit /usr/share/applications/pms-linux.desktop”. Isso abrirá um editor de texto no qual você deverá colar as linhas abaixo :

[Desktop Entry]
Name=Servidor Multimedia para Playstation 3
GenericName=Servidor Multimedia para Playstation 3
Comment=Transforma este Linux num servidor de multimedia para Playstation 3
Exec=gksu /usr/bin/pms-linux.sh
Icon=gtk-multimedia
Terminal=false
MultipleArgs=true
Type=Application
Encoding=UTF-8
Categories=System;Settings;

Salve o arquivo e saia do editor.
Repare que no menu do GNOME há um novo item em Sistema->Administração->Servidor Multimedia para Playstation 3, pois bem, este é o nosso PMS, mas aguarde, não execute-o ainda, pois ainda há uma ultima operação.
O PMS precisa ser executado diretamente da pasta onde ele foi descompactado, assim, precisamos criar um pequeno script que vá até a pasta descompactada, a saber /usr/share/pms-linux, e execute de lá o programa ‘PMS.sh’. Foi por essa razão que o atalho /usr/share/applications/pms-linux.desktop recém criado não aponta diretamente para ‘/usr/share/pms/PMS.sh’, mas para ‘/usr/bin/pms-linux.sh’ que iremos criar agora. Dê um ALT+F2 e execute ‘gksu gedit /usr/bin/pms-linux.sh’ e cole as linhas abaixo :

#!/bin/bash
cd /usr/share/pms-linux/
/usr/share/pms-linux/PMS.sh

Salve o arquivo e saia do editor.
Agora damos a permissão necessária ao script recém criado :

chmod a+x /usr/share/pms-linux/PMS.sh

Agora sim, finalmente poderemos executa-lo a partir do menu do GNOME em Sistema->Administração->Servidor Multimedia para Playstation 3. No entanto, assim que executa-lo ele passará a procurar o Playstation 3 em sua rede e a seguir você verá uma tela como esta :
ps3mediaserver-search-ok.jpg

Vamos agora identificar as pastas que desejamos compartilhar entre o PS3 e seu servidor, selecione a guia [Folder Sharing] e adicione as pastas a serem compartilhadas :
ps3mediaserver-sharing

Então clique no botão [Save] e feche o programa PMS.
Agora vá até o seu Playstation3 e peça-o para procurar por servidores multimédia ao mesmo tempo em que executa novamente o PMS. Dessa forma, você verá a conexão em ambos os lados.

Se você ainda não consegue conectar o seu playstation, recebendo essa mensagem de erro :
ps3mediaserver-startup.jpg

Talvez seja porque o seu servidor Linux possui múltiplos adaptadores de rede e isso está atrapalhando-o no momento da localização do PS3. Isso ocorreu comigo, pois em meu sistema, um notebook, possuo eth0 que fica desligado quando estou em casa (em casa minha conexão é wireless), vmnet1, vmnet8, wmlan0. Acontece que na falta do eth0, o PMS pega outra conexão que haja um IP válido atribuido, mas no meu caso apanhou o vmnet8/172.16.128.1 que é um IP fictício apenas para as exigências do software de virtualização, e dessa forma ele nunca encontrará o Playstation porque o PS3 tá no barramento 192.168.0. Uma maneira de você diagnosticar esse tipo de problema é por observar a guia [Traces] :
ps3mediaserver-search-fail

Note as linhas :

[main] TRACE 17:46:11.600 Using address /172.16.128.1 found on network interface: name:vmnet8 (vmnet8) index: 6 addresses: /fe80:0:0:0:250:56ff:fec0:8%6; /172.16.128.1;
[main] TRACE 17:46:11.601 Created socket: /172.16.128.1:5001

Através da interface 172.16.128.1 é impossível achar o meu playstation, assim vou até o terminal e descubro qual é o IP da minha interface wifi ou a interface de meu servidor que esteja no mesmo barramento do Playstation :
ps3mediaserver-wlan0

Agora que sei que o IP do meu servidor que está no mesmo barramento do Playstation é o IP 192.168.0.188 vou até o PMS, na guia [General Configuration] e vou até o campo “Force IP of the Server” com o IP 192.168.0.188 :
ps3mediaserver-apply-ip
Clico então no botão [Save] e reinicio o PMS. A seguir o PMS encontra nosso querido Playstation.
Mas essa estripulia toda de atribuição de IP só ocorreu porque minha eth0 estava desligada e o PMS assumiu uma interface que não estava no mesmo barramento de minha rede doméstica. Em 99% das casas, isso nunca ocorreria, no entanto, se você estiver nesse 1% já sabe agora como resolver.

Usar um servidor de multimédia traz diversas vantagens, por exemplo, não gastar o canhão laser do seu BluRay com coisas corriqueiras que possam acessadas através de seu servidor Linux. Também, o HD do Playstation não é lá grandes coisas para você armazenar os seus dados e você poderá usar o Linux em sua casa para prover um biblioteca quase infinita de mídias de audio e vídeo. Por fim, assistir filmes que estão no computador em minha sala de estar é muito, mas muito confortável. Segundo a página do PMS, ele oferece os seguintes recursos :

* Pronto para exibir e tocar. Sem necessidades de codecs para instalar. Sem configuração de pastas ou edição de arquivos de configuração de qualquer tipo. Todas as suas pastas são navegadas diretamente pelo PS3 com refresh persistente automático.
* Codificação de video em tempo real via MEncoder, tsMuxer ou Avisynth
* Imagens de DVD ISOs / codificador de pastas VIDEO_TS
* Codificacao de audio OGG/FLAC/MPC/APE
* Gerador de amostras Thumbnail generation para vídeos
* Voce pode escolher pastas virtuais para audio/legendas no PS3!
* Todos os formatos PS3 nativamente suportados: MP3/WMA, JPG/PNG/GIF/TIFF, e vários tipos de vídeos (AVI, MP4, TS, M2TS, MPEG)
* Arquivos ZIP/RAR são exibidos como pastas de fotos/audios.
* Suporte preliminar para fotos baseadas em feeds, como Flickr e Picasaweb
* Suporte preliminar para Internet TV / Web Radio que seja suportado pelo VLC, MEncoder ou MPlayer

Como pode notar, há várias vantagens associadas a este programa.
Mas esteja atento as dependências como MPlayer, mencoder e FFMpeg que devem estar instalados pois eles são a base do programa. Além disso há o Java, eu recomendo o sun-java, embora tenha funcionando perfeitamente com o OpenJDK, notei que com o OpenJDK, o ícone do PMS não aparece na bandeja do Sistema dando a presunção de que não esteja carregado, esse problema foi resolvido quando instalei também o sun-java.

O passo a passo acima usa uma conta de administrador para permitir a execução, no entanto, experimentei-o usando uma conta comum e também funciona, claro que no segundo caso, o PMS só terá acesso aos dados que o usuário em questão também tiver acesso. Assim, se você em casa não tem um sistema multiusuário poderá optar por instalar o PMS no seu $HOME e ajuste as instruções de passo a passo para não requererem nenhum gksu ou sudo ao carregar qualquer tipo de programa.

Quem não quer fazer essa instalação manual poderá optar pelo Script Ubuntu Perfeito, ele faz essa instalação desde o dia 28/12/2008 que foi sua ultima atualização.

Bom divertimento.

18 Comentários