Criando uma versão (realmente) portátil do XBMC.
Eu estive entretido com esse problema nos últimos dois dias. Como player, o XBMC é até fraquinho, mas sua capacidade de exibir uma GUI elaborada com poster, sinopse e fanart (e até ver trailers) enquanto você passeia pelos diretórios é de encher os olhos. É algo muito parecido com o que o MediaPortal faz com o plugin Moving Pictures, com a vantagem de que o XBMC não requer o maldito .NET.
E não requerer o maldito .NET simplifica enormemente a criação de uma versão portátil pois, que eu saiba, ainda não dá para "portar" o maldito .NET (eu adoraria saber como, se alguém souber).
(É… para mim, mencionar ".NET" exige o adjetivo "maldito" :D)
Voltando ao XBMC, este tem uma opção "portable" que é ativada ao se chamar o programa com o comando "-p", assim:
xbmc.exe -p
Porém, por mais estranho que pareça, tudo que essa opção determina é fazer com que o XBMC crie (e procure) todos os seus arquivos de trabalho dentro da própria pasta do XBMC. Lendo isso você poderia até se perguntar: "ué, mas isso não basta?"
Pois é, eu também achei que bastasse. Mas os desenvolvedores do XBMC tem uma idéia própria do que é "portable". Mesmo no modo portátil todas as referências aos filmes são absolutas e não relativas. Assim você pode até mover o XBMC, mas não pode mover os filmes!
O que é preciso para tornar o XBMC10 portátil é (testado em três máquinas XP SP3):
+Instalar o programa em uma máquina XP;
+Copiar o arquivo c:windowssystem32d3dx9_43.dll para o diretório XBMC
+Copiar o diretório XBMC para o HDD externo
+Crie um arquivo .bat no diretório XBMC com o comando "xbmc.exe -p".
+Copie seus filmes para o (mesmo, claro) HDD externo;
+Execute o XBMC pelo .bat criado (de agora em diante você não deve mais executar xbmc.exe diretamente)
Dentro do XBMC rodando em modo portátil, acrescente o diretório dos filmes como source e use a opção SET CONTENT para que o XBMC baixe todas as informações dos filmes da internet (essa parte é um pouco mais complicada que isso, mas foge ao objetivo deste tutorial).
Quando estiver pronto, desde que o HDD externo assuma sempre a mesma letra de unidade, o XBMC rodará em qualquer instalação do XP SP3 (só testei nele até agora). Isso é fácil de garantir com unidades mapeadas via rede, mas não tão simples assim com HDDs externos USB.
Para fazer com que o XBMC seja realmente portátil é necessário editar os seguintes arquivos antes de rodar o XBMC:
XBMCportable_datauserdatasources.xml
XBMCportable_datauserdataDatabaseMyVideos34.db
Fazendo com que todos os caminhos correspondam à letra de unidade atual.
Isso é simples. Tão simples que não entendo como a equipe do XBMC não dá essa opção. Eu criei um programa que faz isso, que deverei tornar público nos próximos dias. O programa serve de "loader" para o XBMC e faz as modificações necessárias antes de executar xbmc.exe.
Atenção: O XBMC 9 também pode ser feito "portable", mas as instruções (nomes e caminhos para arquivos) são diferentes. E ainda assim não consegui fazer o danado funcionar direito (SET CONTENT não funciona e tive que usar um player externo). Eu recomendo não perder tempo com ele e ir direto para a versão 10.
Muito bom! Testei aqui em duas máquinas, meu pc de trabalho e o htpc. Ambos tem Windows 7 x64, no primeiro, Home Premium, e no segundo, Home Basic. Funcionou perfeitamente.
Só que ao invés de editar os arquivos:
XBMCportable_datauserdatasources.xml
XBMCportable_datauserdataDatabaseMyVideos34.db
eu preferi atribuir a mesma letra de unidade para o HD, mas tive que reiniciar a máquina.
O HD externo agora está conectado ao HTPC. Com a unidade mapeada, consigo acessar o XBMC no meu computador de trabalho, exibindo todas as informações dos filmes, inclusive usando o player.
Quanto ao player, ao menos no que diz respeito a qualidade de vídeo e consumo de CPU, como tenho dois monitores idênticos aqui, comparei com o MPC-HC e não consegui detectar nenhuma diferença na qualidade de reprodução, com uso de CPU inferior.
Pesando os prós e os contras, o XBMC está se mostrando a melhor opção no momento.
Jefferson, não sei se é isto que vocês está querendo, mas encontrei um site que já tem a versão portable prontinha, é só baixar:
http://portableup.blogspot.com/2010/12/xbmc-media-center-10.html
Se não for isso que você está procurando, favor avisar!
Jesusleno, como eu não estou usando nem antivirus nem firewall e não conheço o autor daquele blog, tive que montar uma máquina virtual para fazer o teste. O software não chegou a executar completamente (dá erro CApplication::Create() failed – check log file and that it is writable), mas segundo o que pude constatar usando o Process Monitor é bem improvável que atenda meus requisitos (eu já desconfiava disso ao ver que se tratava de um único arquivo EXE). O programa foi criado com o "virtualizador" da Xenocode e ao ser executado "descompacta" UM MONTE de arquivos no perfil do usuário corrente e roda a partir de lá.
Assim, não vejo como seja possível "portar" as configurações do usuário.
Ou seja, sequer atende o conceito de "portable" dos desenvolvedores do XBMC, que ainda está um nível abaixo do meu.
Agora com os avanços no destravamento do PS3, espero que os desenvolvedores do XBMC criem uma versão especifica para o console.
"Eu criei um programa que faz isso, que deverei tornar público nos próximos dias. O programa serve de "loader" para o XBMC e faz as modificações necessárias antes de executar xbmc.exe."
Jefferson, quer dizer que podemos esperar a SUA versão portable?
Sim. Só não saiu ainda porque preciso fazer uma modificação e estou sem tempo.
Quanto ao .Net, pra desenvolver facilita e muito nossa vida. Mas pra distribuir…
É, eu sei. É "maldito" do ponto de vista do usuário e de quem dá manutenção

Se fosse ruim também para quem desenvolve, já teria nascido morto
Já que voces estão falando sobre versao portatil do XBMC, vejam esta noticia:
http://xbmc.org/theuni/2011/01/05/xbmc-port-from-sigma/
Ao que parece, breve teremos XBMC rodando em media player da WDTV e similares. Será interessante!.
Só espero que seja "fluido". Um amigo tem um xtreamer (realtek) e diz que o recurso similar dele chamado "jukebox" é muito bonito, mas ele não usa porque é lerdo demais.
Claro que o preço mais alto dos equipamentos baseados em Sigma pressupõe um hardware melhor.
Falando nisso, apesar das limitações, eu acho que para quem tem Windows Seven Ultimate em bom hardware, o Windows Media Center é show de bola. Eu uso ele aqui.
Concordo – o Media Center do Windows 7 é bacana – e alguns plugins deixam ele com uma cara mais profissional sem maiores dificuldades. Basta perder um tempinho nele.
Engraçado, para mim o botão Reply não está funcionando no Chrome. Tenho que clicar em Comentar.
@Ygor Almeida
Inclusive tem o site http://www.hack7mc.com/ que ajuda bastante os usuários mais leigos e para os mais avançados fornece um centro de recursos bem legal. Sem contar as milhares de buscas que fiz no Google. No final, meu WMC ficou bacana. Uma coisa que reparei é que apesar de todas as firulas, o consumo é MUITO próximo ao do WMP12. Então, quase nunca eu uso o WMP12 por aqui (o consumo do processador é muito alto e o de memória também). Winamp + WMC e tá tudo tinindo.
Saiu a primeira versão do meu programa:
https://ryan.com.br/wp/xbmc-loader/
Demorou porque incluir a opção de vocês definirem o próprio diretório de filmes e colocar checagens é uma tarefa bem maçante.
Eu testei apenas com uma instalação. E apenas sob Windows XP.
Não é necessário criar "portable.bat", pois meu programa chama xbmc.exe diretamente. Mas vocês ainda precisam fornecer o resto.
Se ocorrer qualquer problema, me avisem.
Estou querendo vender o meu PS3 que comprei para ser media player e fiquei um pouco decepcionado pelo mesmo não conseguir rodar diversos tipos de arquivos de mídia. Comprei em meados de 2010 e uso ele praticamente apenas para ver blu-ray e ser cliente streming DLNA do meu PC. Fora que ele não é região free para DVDs.
Quero comprar um HTPC e rodar o XBMC.
Jefferson, você conhece os HTPCs da Asrock ?
Asrock ion 330Pro http://www.asrock.com/nettop/overview.asp?Model=ION%20330Pro
Asrock Vision 3d http://www.asrock.com/news/events/2010Vision3D/index.asp
O Vision 3d é um sonho de consumo, tem até drive de blu-ray. Mas a minha opção deve ser o ION 330Pro.
O ION 330Pro aqui no Brasil sai por volta de R$850,00. Sera que se eu retirar o leitor de DVD dele e substituir por um leitor de Blu-ray consigo rodar blu-ray sem problemas ?
Eu usei durante algum tempo o acer aspire como htpc usando um drive externo.. funcionou bem, mas como meu PC morreu eu acabei transformando ele com ele em meu desktop.. parece ser bem menor que esse da asrock..acabei comprando o asus o!play para ser meu media player.. fica a dica.
http://us.acer.com/ac/en/US/content/series/aspirerevo
http://us.acer.com/ac/en/US/content/series/veritonn
Ainda não entendi o termo "htpc"…poderia me ajudar esclarecendo o que seria? eu tenho um acer aspire one ligado na minha TV de 42" e uso pra baixar e assistir filmes que encontro no legendas.tv e no piratebay….funciona bem legal…ele roda windows 7…mas as outras máquinas usam XP….quero compartilhar os arquivos desta máquina com as outras da rede….principalmente para musicas, fotos e videos….alguma dica?
Se você tivesse colocado "htpc" no google veria a resposta logo no sumário da primeira página. E em português. Não posso ajudar nas suas dúvidas.
Eu achei uma notícia até que interessante na própria página do XBMC – segundo eles, está havendo um trabalho já em conjunto do Pessoal da SIGMA / XBMC – para portar esta solução no Hardware deles.
Ai fiquei curioso – porque as interfaces do Indiano que posta lá no forum no NetworkMediaTank ( Sigma ) são bonitas e etc, e eles andaram re-escrevendo uma porrada de coisas ( leia-se tudo ) referente a firmware para o C-200 PopCornHour.
O que será que podemos esperar disso !?