Raspberry Pi – Television y futbol en un click

por:

 

Raspberry Pi television y futbol en un click

 

Raspberry Pi – Television y futbol en un click

Hola, bienvenidos a mi primera guía sobre Raspberry Pi, soy un estudiante de ingeniería informática en la USAL. Como usuario de Raspberry Pi siempre he pensado que este aparato, tiene múltiples posibilidades, así que después de aprender a manejarme con la Shell de Linux, he creado un Shell Script que para poder reproducir cualquier enlace del programa SopCast, sin necesitar ningún PC adicional, únicamente con nuestra Raspberry Pi. Ha sido probado en XBian satisfactoriamente, pero no debería dar problemas con otra distribución.

Algunas funcionalidades que tiene el script son:

  • Reproducción de cualquier link de SopCast (cualquiera del tipo sop://broker.sopcast.com:3912/146690 )
  • Canales preestablecidos (únicamente dos de momento, pero según comentéis iré añadiendo otros).
  • Opción de listar los canales.

Lo mejor de todo, es que el uso es muy sencillo.

Instalación –> ver nueva versión

Lo más importante como siempre es poder probarlo así que estos son los pasos:

  1. Entrar a tu Raspberry Pi vía SSH con la terminal de Linux ( $ ssh usuario@ip_de_tu_RP ) o Putty para Windows (Introduces la IP de tu Raspberry Pi y luego tu usuario y contraseña).
  2. Bajas el fichero comprimido desde aquí.
  3. Lo mandas a tu Raspberry Pi o lo bajas directamente desde este
  4. Lo descomprimes con: $
  5. Entras en el directorio con $ cd sopcast
  6. Ejecutas el programa con ./tv.sh y la opción que quieras usar.
  7. Creamos el archivo a visualizar en XBMC u otro reproductor.  Para ello podemos hacer:  $ cd ~/.xbmc/userdata/playlists/video/
  8. Ahora creamos el archivo: $ nano sopcast.strm (el nombre da igual cual usar)
  9. Ahora escribimos: http://127.0.0.1:12345 y cerramos el archivo con Control+x
  10. Ya tenemos la instalación lista y podemos usarlo entrando en XBMC, lista de reproducción de videos y el nombre que le hayamos puesto.
  11. Para cortar la emisión debemos invocarlo con la opción –stop

 

Modos de uso

El programa soporta los siguientes modos de uso:

  • $ ./tv.sh  y $ ./tv.sh –help que muestra el modo de funcionamiento
  • $ ./tv.sh –chanel  que muestra la lista de los canales que hay actualmente
Opcion --chanel
Canales guardados en nuestro programa de televisión para Raspberry Pi
  • $ ./tv.sh –stop que nos permite cerrar SopCast
  • $ ./tv.sh numero indicando un número de nuestra lista de canales
  • $ ./tv.sh sop://broker.sopcast.com:3912/146690 para reproducir un enlace de SopCast

 

Errores

Debido a que es una versión no soportada oficialmente (ver Agradecimientos), hay veces que se escucha el audio pero no se ve la imagen, la solución es bien sencilla, darle al stop en nuestro XBMC y volverle a darle a play. Así de simple, hay veces que se necesita hasta 4 intentos, pero es un proceso que solo necesita 1 minuto.

 

Agradecimientos

Este programa no habría sido posible sin el trabajo de tayoken en el foro de raspberry pi, ya que SopCast no tiene versión para nuestro aparato y el ha conseguido portarlo. Podéis ver su trabajo aquí.

Nueva versión:

La versión actual del sistema es la 2.0 la podéis descargar desde aquí.

30 comentarios en “Raspberry Pi – Television y futbol en un click”

  1. Imanol

    Buenas,

    antes de nada, agradecer tu trabajo.

    Da igual que modo intente ejecutar, ya sea con el canal o con el enlace de sopcast. Me dan los siguientes errores:

    pi@raspbmc:~/Sopcast$ ./tv.sh 1 –omx
    : No such file or directory
    ./tv.sh: line 2: $’\r’: command not found
    ./tv.sh: line 4: $’\r’: command not found
    ./tv.sh: line 8: $’\r’: command not found
    ./tv.sh: line 12: $’\r’: command not found
    ./tv.sh: line 13: syntax error near unexpected token `$’\r”
    ‘/tv.sh: line 13: `if ( test $# == “2”)

    ¿Alguna solucion?

    Gracias.

    Responder
    • MiRoot

      Para ejecutar la opción de omx hay que poner ./tv.sh 1 — omx (2 guiones – ) creo que por eso sale el fallo

      Responder
  2. Bogdan

    Found a working x-sopcast addon for raspberry at this link http://www.xbmchub.com/forums/maxmustermanns-add-ons/13536-sportsdevil-unofficial-update-16.html
    It is working for raspbmc .
    Hope this helps.

    Responder
    • MiRoot

      Hi Bogdan, I knew that XBMC had an addon named SportDevil but I didn’t know that we could send message from our Sopcast to SportDevil. I’m going to try this and then I will write a guide, with the instalation and configuration.

      Thank you

      Responder
  3. Urko

    Hola buenas primero de todo dar las gracias a takoyen por portarlo y despues a vosotros por ponerlo wpo y mas funcional.

    Lo primero de todo como pediais un link de AceStream aqui os dejo uno al azar de un partido belga: acestream://9e4914630f4f9055ffbfb77e70714ce835c1d321

    Luego haceros tambien una sugerencia. He estado viendo el programa tv.sh por dentro pero no adivino alguna cosa y no la quiero fastidiar, ya que soy mas de java…

    Mi recomendacion es que se pueda meter solo el canal de sopcast en vez de todo el url tipo sop://broker.sopcast.com:3912/146690, lo digo desde la ignorancia si puede haber algo diferente que no empiece por sop://broker.sopcast.com:3912/

    Pudiendo hacer eso quedaria tal que asi, si metes un numero de canal que esta guardado en el tv.sh lo ejecuta como hasta ahora, sino al numero de canal que haya metido el usuario se le añade delante sop://broker.sopcast.com:3912/ y listo, se ejecuta como url. Asi yo creo que se hace mas dinamico el programa y mas facil de cambiar de canales.

    Si al igual de arenavision hay mas canales tanto deportivos como no deportivos que siempre utilizan el mismo canal, incluso se puede crear un un archivo con todos los canales interesantes y coger de alli la informacion pero quiza eso ya es meterse en otra dimension.

    Y por ultimo una pregunta para los que anden mas con sopcast. Conoceis canales con buena calidad que transmitan canales de pago tanto españoles como estado unidenses como puede ser AXN, FOX HD… es decir que no sea de deportes?

    Responder
    • MiRoot

      Muchas gracias por el comentario.

      Lo primero, es que hay enlaces de SopCast que no tienen el sop://broker.sopcast.com:3912/ por lo tanto queremos que funcione en todos.
      Lo que tu dices es sencillo de implementar, mañana en un rato intento añadirlo.
      La cuestión es que por ejemplo Arenavisión no emite siempre desde el mismo link y por ello el script “saca” el link de su página, para saber cual es con el que están emitiendo actualmente. La cuestión es que es un proceso complejo, pero si nos decís de otras páginas, podemos añadirlas.

      En cuanto a canales, la verdad no tengo ni idea, imagino que habrá links pero que emitan un canal 24h lo veo raro.

      Responder
      • Urko

        No sabia que arena vision emitia desde diferentes canales, entonces es logico lo que haceis. Si tambien los enlaces no siempre empiezan por sop://broker.sopcast.com:3912/ entonces tambien me callo y por ultimo si lo de arena vision ocurre con otros canales pues es logico no hacer una lista interesantes.

        Si lo explicado en el anterior post te sirve para coger ideas bienvenidas sean.
        Lo de AceStream al final se podra hacer algo? Quiza hablando con takoyen podriamos portarla para los procesadores que utiliza la raspberry pi.

        Saludos y para cualquier ayuda puedes contar conmigo.

        Responder
        • MiRoot

          Creo que según he leido hay una versión para linux de AceStream que también decodifica la información y lo “vuelca” a un archivo, no se si con eso se podría sacar algo

          Responder
          • Urko

            Una cosa que he encontrado es que muchas veces cuando ejecutas ./tv.sh 1 por ejemplo no te sale el shell despues. Creo que lo tienes implementado para que salga por hay veces que si que sale. puede ser que necesite o mas tiempo o menos tiempo.

            Luego quiero mapear los botones del teletexto y hago lo siguiente. Hago un xbmc.runscript(ejemplo.py)

            y despues en ejemplo.py

            import os
            os.system(“/home/pi/sopcast/./tv.sh 1”)

            Si alguien sabe que hago mal que no me inicia el servicio que me lo diga.

            Tambien por si alguien quisiera ahorrar recursos apagando xbmc para que le vaya mas fluido el video puede hacer lo siguiente si tiene el omxplayer instalado.

            ./tv.sh 1 (por ejemplo)
            sudo initctl stop xbmc
            omxplayer -r http://127.0.0.1:12345
            y una vez terminado
            sudo initctl start xbmc

            Todo esto no se si podria automatizar un poco en la capa que has puesto tu.

        • MiRoot

          Gracias a tus comentarios tenemos la nueva versión ya disponible
          http://www.somosbinarios.es/raspberry-pi-television-y-futbol-en-un-click-v1-1/

          Responder
  4. dan

    pero se puede ver futbol noooo ???
    va con openelec ????
    y con raspbian???

    Responder
    • MiRoot

      En los canales que he dejado en la lista, principalmente emiten futbol y otros deportes.

      Va con OpenElec, Raspbian, XBian y cualquier otra distribución ya que el programa solo necesita Linux para que funcione y todas ellas está basadas en Linux

      Responder
    • Víctor

      Es una pasada lo bien que se ve. Si el canal emite en HD, tú lo vas a ver con esa calidad. Ayer puse un par de partidos y salvo dos o tres parones de 10-12 segundos, el resto de maravilla.
      Yo lo tengo con xbian.
      Lo probé primero con Openelec y no iba tan bien.

      Responder
      • MiRoot

        Si en OpenElec va peor, no es por el programa es sí (ya que es un script), el problema será que XBian está mas optimizado que OpenElec y por ello va mejor.

        Los 2 canales que vienen guardados son en HD y suelen emitir con 2000kb/s eso significa que necesitas casi 20mb de conexión para poder verlos fluidos.

        Fuera de estos canales, siempre puedes meter cualquier link de SopCast que encuentres en la red y disfrutar de ello.

        Responder
  5. Jowitriviani

    Hola MiRoot

    no se como realizar el paso 3, soy neofito en esto, a ver si me puedes poner exactamente lo que tengo que poner en ssh con el putty

    Muchas gracias

    Responder
    • MiRoot

      Lo puedes hacer de varias maneras:
      la primera, bajándolo en tu pc y mediante un USB se lo conectas a tu Raspberry Pi
      la segunda, si tienes samba instalado, puedes acceder a las carpetas de tu RP desde el propio PC
      la tercera con $ wget link_archivo. EJ $ wget http://www.mu.com/archivo.zip

      Espero que con esto lo consigas arreglar

      Responder
  6. pacobar

    Al hacer tar xvf sopcast.tar me da error de invalid tar magic.
    Alguna solución?
    Tengo openelec 3.2.4 y ejecuto el tar xvf en el directorio storage o bien en el storage/.update y en ambos me sale el mismo error
    Gracias de antemano

    Responder
    • MiRoot

      Pues la verdad eso parece un problema de tar, tar es un programa que viene preinstalado y permite comprimir y descomprimir paquetes .tar. No uso OpenElec pero parece un bug de esa versión (se lo haría saber en el foro), pero para “ir tirando” lo que puedes hacer es:
      $ mkdir sopcast (para crear una carpeta)
      y luego descomprimir el paquete en tu pc y pasar cada uno de los archivos a mano mediante Samba (si lo tienes instalado) o conectándote en remoto por ftp.
      La verdad es un error raro y no es del paquete, sino del Sistema Operativo que usas.
      También intentaría desinstalar tar y volverlo a instalar. Si mal no recuerdo:
      $ sudo apt-get reinstall tar
      Debería de funcionar.

      Responder
      • pacobar

        He hecho lo que sugieres (extraer en pc y pasar por ssh) y al ejecutar ./tv.sh me dice error 126 y -sh ./tv.sh permission denied
        ¿Alguna sugerencia más?
        Soy bastante pobre en linux
        La otra posibilidad (reinstalar tar con el comando sudo tampoco fucnionó poruqe openelec no deja ejecutar sudo)
        Agradecería alguna ayuda adicional

        Responder
        • MiRoot

          ejecuta en la terminal:
          $ ls -l
          para ver los permisos de cada archivo en tv.sh te tiene que poner rwx (lectura escritura y ejecución). Si no te pone rwx escribe:
          $ chmod 700 tv.sh

          Prueba con esto y nos comentas, si has logrado que funcione

          Responder
  7. Victor

    Muchas gracias por el tutorial. Lo he seguido y funciona perfectamente.
    Lo que no sé es como cambiar de canal. Solo lo consigo si desenchufo la Raspberry.

    Responder
    • MiRoot

      Para cambiar de canal, en esta versión del programa tiene que hacer:
      conectarse por ssh y poner ./tv.sh –stop para que deje de emitir
      y después poner el siguiente canal con ./tv.sh num_canal

      Pero en la siguiente versión podría añadir, que cuando quieras reproducir otro canal, mate al anterior y lo vuelva a lanzar con los nuevos datos.

      Responder
      • Víctor

        Cuando ejecuto un canal por ssh, en la pantalla de putty, no me permite poner ningún nuevo comando. No me sale xbian@xbian. Aún así pongo ./tv.sh -stop, pero no parece que haga nada.
        La unica manera es apagar la Raspberry, volver a conectarme por ssh y volver a dar la orden con otro número de canal.
        Muchas gracias y perdona las molestias

        Responder
        • MiRoot

          Uno de los problemas que he visto, es claramente el que mencionas, que no te “vuelve” la consola, pero antes de apagar la Raspberry Pi, puedes volver a abrir Putty y con el segundo Putty abierto poner ./tv.sh –stop (desde la carpeta donde lo tengas)

          En la siguiente versión intentaremos arreglar este problema y la posibilidad de cambiar de canal

          Responder
          • Víctor

            No se me habia ocurrido, y es mucho mejor que tener que reiniciar la Raspberry. La he probado y funciona perfectamente.
            Hoy he estado viendo el fútbol con este sistema y la calidad es espectacular. Los canales de 2000 kbps no tienen parones y la nitidez es inmejorable.

          • MiRoot

            La verdad es que la calidad, es muy alta y se disfruta mucho. Nos alegramos que te guste y que lo comentes, ya que estos comentarios nos animan a seguir trabajando en esta línea.

  8. juan

    Muchas gracias! Soy nuevo en raspberry con la version de raspbmc instalada. Una pregunta, se podría hacer lo mismo con el programa acestream?

    Responder
    • MiRoot

      La verdad nosotros no hemos portado el programa a Raspberry Pi, nuestro Script es como una “piel” que trabaja por encima del programa y luego realiza las llamdas necesarias al programa. Habría que ver como lo ha hecho el usuario e investigar, pero podría ser posible. Intentaremos mirarlo y ver que conseguimos.

      Responder
    • MiRoot

      Después de estar investigando un poco, parece que si sería factible, ya que tienen cliente para linux funcional y un sistema de decodificación de un link al archivo (al igual que usamos nosotros para SopCast). Pero el problema es que no doy con ningun tipo de link para AceStream.

      Podrías indicarnos algun link o como es su formato. Por ejemplo los de sopcast empiezan por sop://

      Responder

Deja una Respuesta