Ir al contenido principal

Oír musica fuera de casa

Oír tu música fuera de casa.
Lo hice por que quería ver si era posible, y lo voy a poner mas como recordatorio que como receta de cocina, al menos que solo un comentario que pida mas detalles así lo haré. También he de advertir que si es un usuario novel, casual y poco entusiasta o no te gusta investigar, favor de abstenerse y mejor contrate iTunes Match que por 300 pesos al año les resolverá la vida.
Dadas la advertencias empecemos.
Hay varias formas de hacerlo, seleccione la que mas le apetezca o pueda serle mas fácil o útil.
Existe un protocolo llamado mt-daap de Apple que permite compartir música en una LAN.
En el caso de Linux basado en debian basta poner en la consola sudo apt-get install mt-daap
En caso de Windows y Mac vean si hay versión para sus sistema operativo, para otros sabores de linux seguramente será fácil de instalar o usar Rhythmbox o Banshee, este último existe versión para Windows y Mac., En los complementos se activa compartir música y tendíamos lo inicial.
En caso de que hayan instalado el servidor mt-daap crea un servicio que se llama firefly, para tener la música en un solo lugar y oírla de forma local con VLC y iTunes. VLC quitó el soporte no se por que una lástima, y iTunes tiene un bug o algo que ya no la accede desde la versión 10.5 pero hay un fix, que googleando se puede resolver. Creo que Winamp al igual xmms tiene soporte, si usan Boxee, o XBMC también lo podrán usar.
Si son usuarios linux sin problema por que podemos acceder por medio de Banshee o Rhythmbox.
Si estamos en la red local solo al conectarnos a la red nos saldrá el nombre del servidor y listo podemos oír la música del servidor.
En el servidor que instalaron el programa entrando en el navagador se puede configurar con localhost:3689
Ahora si queremos acceder desde nuestro iPad, iPhone o iPod Touch, hay que bajarnos una aplicación gratuita que se llama. Simple Daap. Al abrir la aplicación nos muestra los servidores que tenemos y lo podremos usar.
Creo que Apple creo este protocolo con un restricción a 5 equipos la verdad no sé, nunca he conectado tantos de forma simultanea. Si son usuario de Android seguro en el Market de aplicaciones exista esta misma aplicación o una similar que acceda al protocolo daap. Por favor ahí avísenme por que no tengo un Android para poder probarlo.
Bueno y que pasa si estoy fuera de casa como lo puedo oír? que es lo que nos interesa. Una manera muy sencilla es con un VPN, configuramos el servidor o nuestro router si lo permite crear un VPN que iOS y Linux son muy fáciles de configurar los clientes. Conectamos a la VPN y listo con el programas antes expuestos funciona perfectamente, si la calidad de internet es buena sin cortes. Lo he probado en lugares públicos con infínitum movil y funciona, también hay que decir que los 2 MB de subida que me da Axtel, dan buen soporte para el servidor. Y así le sacamos mas provecho lo que pagamos al mes por nuestra conexión.

Bueno y que pasa si mi cliente es una Mac con iTunes, podemos crear y correr el siguiente script, sin necesidad de conectarnos a un VPN y nos saldrá la lista de los servidores dentro en nuestro mac.
Lo que se crea en realidad es un tunel por medio de ssh.
Creamos un archivo con el nombre que queramos por ejemplo script_tunnel.sh con este contenido
#!/bin/bash
dns-sd -P "nombre que queremos en la lista" _daap._tcp local 3690 localhost 127.0.0.1 &
PID=$!
ssh -N usuario@servidor -L 3690:localhost:3689
kill $PID

Le damos permisos de ejecución con chmod +x script_tunnel.sh y listo a oír música de forma remota con iTunes.
A los amigos de Redmond la verdad desconozco si sirva, no tengo un Windows para probar, y como no hay ssh de forma nativa como en el caso de *nix, tal vez puedan intentar con putty.
Si encuentro alguien que me preste una máquina Windows ya les diré si se pudo o no y veré si hay que hacer algún cambio.
Como recomendación verifiquen que en su router tienen abierto el puerto correspondiente para poder entrar en caso de que no sea el default 22 pongan después del ssh -p y el puerto que utilizan. Obviamente tienen que tener un servidor ssh del otro lado que puede ser en Linux o en Mac de forma nativa; en Windows una vez mas tendrán que buscar un servidor para esto.
Una opción mas les comentaba del servidor firefly, encontré un cliente web para este servidor, en este momento esta en beta, por lo que no funciona tan bien, pero sirve. Y a caballo dado pues no se le ve el colmillo y gracias a las personas que lo desarrollaron, en este caso hay que montarlo en el servidor web en el directorio root de donde se accederá, hay un archivo config.xml donde se puede configurar. En Web de computadoras o iPad se ve algo raro y no funciona de lo mejor, pero en pantallas de iPhone funciona bastante mejor y por lo que dice en la página de los desarrolladores lo pensaron inicialmente en esta plataforma pero dicen que le están dando soporte a otras plataformas. Para utilizarlo hay que poner el dominio/nombredelacarpeta donde se instaló la aplicación y por web podemos acceder a nuestra música en casa.

Esta de forma muy genérica como se puede leer y es algo extenso aún así. Si recibo comentarios de que haga mas detalles así lo haré e incluiré imágenes de los contrario se queda como está que me servirá de recordatorio por si necesito utilizarlo en otro lado que no sea mi equipo.

En conexiones como cablevisión no funcionará ya que no dan ip pública y cuesta una buena lana adicional al mes para tener esta salida. Pero servidores Infinitum, Axtel, MVS podrán usarlo, no se TotalPlay por que nunca he probado el servicio. Así amigos de Total Play si me pueden facilitar un par de meses probar su servicio sería para mi un honor.

Lista de Requerimientos generales.
Salida a Internet
Router Configurado
Servidor Linux, o Mac Se usará VPN (para algunos casos) WEB y SSH
En caso de Windows, instalar un servidor WEB(Apache, ISS), SSH y VPN
Clientes de música. Banshee, Rhythmbox, XBMC, BOXEE, XMMS, Winap, SoundTrack
Clientes SSH
Aplicación Simple Daap.

Creo que es todo lo que se necesita.

Ahora fuera de casa, he querido oír música, pero se me ocurrió bajar a Snow Leopard en un MacBook Air, con esta combinación no me funcionó el script para hacer el tunnel. Así que buscando me encontré con este que funciona perfectamente, así es que si no les funciona el anterior aquí tienen otro.
#!/bin/sh
dns-sd -P "Home iTunes" _daap._tcp local 3689 localhost.local. \
  127.0.0.1 "Arbitrary text record" &
trap "kill $!" 0 1 2 15
ssh -C -N -L 3689:localhost:3689 myusername@blahblahblah.dyndns.org
 
Sólo hay que modificar la parte de myusername@etc para que se adecué a sus necesidades.
  
 

Actualizado.
Me faltaba buscar en Windows como utilizarlo, a como costó trabajo, pero ya esta resuelto. iTunes definitivamente no funciona con el VPN, encontré que se podía hacer un tunnel con Putty, pero nada mas no pude hacerlo funcionar.
La forma como lo logré fué con Tomahawk, que por cierto hay versión para Windows, Linux y Mac, y la verdad que esta muy bueno el programa. Pero para que funcione hay que hacer lo siguiente.
Hay que instalar Python, en las variables de entorno agregué el Path para python27
Bajar este script https://github.com/Tito1337/daap-resolver/tarball/master
Y dentro del programa en configuración Resolvers se agrega el archivo daap-resolver.py, antes a este paso hay que editar este archivo y en Host ponemos la URL del servidor DAAP. Y ya lo que busquemos dentro de nuestro servidor DAAP ya lo podremos resolver, funciona con el VPN y en Local también.

iTunes solo Local, por que me parece que Bounjour no sirve por VPN solo de forma local.
Escribiré pronto sobre Tomahawk, por que me agradaron muchos detalles geniales que tiene y lo mejor que es multiplataforma.

Comentarios

  1. Me acabo de enterar que con el Tunnel ssh, permite ver también los videos que tenemos en la biblioteca de iTunes. Esta genial. Eso si el internet esta muy bueno desde donde estoy probando. A pesar de ser público y mucha gente conectado sigue a 8 Mbps de bajada

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Código Radio Polo 2005

El otro día se acabo la batería varios años de uso, y o sorpresa cuando cambio la batería el radio me pide un código para poder prender el radio, me recordaba que algo me comentaron cuando compré el auto, así que fui a sacar el expediente del auto y efectiamente ahí tenía mi código, como no sabía como meterlo, a buscar en el manual el procedimiento, y como sucede en estos casos el manual esta incorrecto en la forma de como hay que hacerlo. En el manual explica que hay que dejar el switch encendido, presionar el boton de power del radio poner los 4 dígitos con los números del 1 al 4 de la memoria hasta ahí todo bien, el paso final es el problema, dice que se deje presionado el boton 6 para grabar el código, cosa que puedes quedarte una hora pegado al botón y no pasa nada, después de probar cualquier número de combinaciones encontre que es con la flecha de seek hacía la derecha. Tambíen investigando en internet de como hacerlo que por desgracia nunca encontré como,( y esto motiv...

rc.local Debian 9 Stretch / Ubuntu 20.04 Actualizado

Hola, se que tiene siglos que no escribo nada. NOTA: Me dice Google que tengo que poner una nota de las cookies por disposición Europea, yo no cree las cookies y no se que contengan, si las hay son de Google, Así que supongo ustedes sabrán si siguen leyendo o no este artículo. Con los cambios a Stretch noto unos cambios y se ve que cada vez se impone más systemd en la configuración del sistema. Yo uso mucho el rc.local para ejecutar cosas en el arranque por ejemplo máquinas virtuales con virtualbox. Que si quiere alguien una explicación de esto, escriban pidiéndolo y con gusto explico como. Pero en Stretch veo que ni archivo /etc/rc.local existe, hay forma de activarlo y explico a continuación como. Tal cual se explica aquí me ha funcionado en 4 sistemas 1 de ellos físico y 3 virtuales corriendo Debian 9 Stretch. Primero copiemos el archivo ejemplo de la siguiente manera (todo lo hago como root) cp /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.servic...

AAO 110 + Skype

Para los que tengan uno de estos equipitos maravilla, notaron o notaran que en Ubuntu 12.04 no sirve el micrófono con Skype, después de pasar unas horas viendo como hacer la funcionar encontré esta solución. En la ruta /etc/pulse/default.pa Editamos y agregamos como root esta línea module-alsa-source device=hw:1,0,0 ANTES de module-udev-detect.so Reiniciamos el sistema y con alsamixer presionan F4 para ver la parte de captura y micrófono estén el mas alto nivel de sonido. Y ya se puede usar el micrófono. Al parecer es un problema con el pulse. Así que con esto ya no funciona pulse. Y se controla el sonido por aplicación, o bien por el mismo alsamixer desde la consola, una lástima pero ya funciona el Skype. Si alguien encuentra una mejor solución mucho se agradecerá compartan el como.