El sáb, 23-01-2016 a las 13:06 +0100, Jorge Chaves escribió: > ALTERNATIVA A SONGR - PYMAXE > > Bueno, a ver si al fin consigo refundir todo sin necesidad de añadir más > parches. Este mensaje pretende refundir todo lo dicho en el hilo de la > lista de correo. He puesto una pequeña introducción con índice, espero > que os guste y que os sea útil: > > Cuando un usuario novato (como en mi caso) pasa de Windows a Linux, una > de las cosas que puede intentar hacer es buscar para Linux los mismos > programas que usaba habitualmente en Windows. En este caso se trata de > buscar Songr, que es un programa que sirve para buscar y bajarse > canciones. > > Lamentablemente para Linux Debian no existe Songr, al menos no > directamente, pero también hay otras alternativas que pueden servir. > Para este caso concreto utilizaremos Pymaxe. Otras opciones disponibles > se pueden encontrar mirando por internet, algunos ejemplos serían éstos: > > http://alternativeto.net/software/songr/?platform=linux > http://de-todo-un-poco-computacion-e-ideas.blogspot.com.es/2015/08/como-instalar-songr-en-ubuntu-para.html > http://blog.desdelinux.net/aironux-una-nueva-alternativa-para-descargar-musica/ > https://www.youtube.com/watch?v=-Qh_S3Ozn4s > > El hecho de tener un programa tipo Songr, en el que en principio te > permite buscar canciones con comodidad, puede tener la desventaja de > acabar con los buscadores que tiene integrados obsoletos, haciendo que > la búsqueda ofrezca menos resultados que los que debería dar, por lo que > otra posible vía puede consistir en ponerse a buscar la canción que sea > manualmente vía google. > > Como he dicho en este mensaje voy a explicar cómo instalar pymaxe para > Debian, y como creo que el contenido de este mensaje es bastante > extenso, voy a poner aquí un pequeño índice: > > Índice: > > - Instalación de Pymaxe en Debian 8 estable usando el paquete fuente > - Instalación de Pymaxe en Debian 8 usando el paquete.deb > - Cómo añadir el repositorio multimedia de Debian > - Cómo editar un paquete .deb, cambiando su archivo de control > - Instalación de Pymaxe en Debian 7 estable > - Instalación en Debian 7 sid > - Apunte de la instalación de paquetes con Debian testing > - Configuración de pymaxe > - Convertir formato de vídeo a formato de música > > Antes de comenzar a explicar cada parte en detalle, decir que sobre todo > he usado como editor de texto "gedit", pero uno puede usar el editor de > texto que quiera (nano, vim, vi...). Una vez explicado esto, paso a > desarrollar el contenido: > > > ---Instalación de Pymaxe en Debian 8 estable usando el paquete fuente--- > > 1) Ir a la web donde está pymaxe: > www.pymaxe.com > > 2) Darle al botón "Download" > 3) Elegir la opción "Sources". > 4) Una vez descargado escribe lo siguiente en el terminal: > > $ cd /home/user/Descargas > ~/Descargas$ tar -xvf pymaxe.tar.gz > > ~/Descargas$ sudo ln -s /usr/local/bin/pymaxe /usr/bin/pymaxe > > - Con este comando (ln) creamos un enlace simbólico, blando (o acceso > directo) en el directorio /usr/bin. ¿Por qué? Para que pymaxe se pueda > abrir al ejecutar alt + f2 y escribir el comando "pymaxe" sin comillas. > > 5) Sin embargo, al hacerlo no funcionará, porque hay que modificar > también el propio archivo de texto que hay en /usr/local/bin/pymaxe. > Para eso escribimos en el terminal lo siguiente: > > ~/Descargas$ sudo gedit /usr/local/bin/pymaxe > > Donde el contenido del archivo es tal que así: > > ------------------------------------------- > #!/bin/sh > if which python2 >/dev/null; then > cd /usr/share/pymaxe/ > python2 launcher.py > else > cd /usr/share/pymaxe/ > python launcher.py > fi > ------------------------------------------- > > Para que pymaxe funcione como es debido, hay que meter los directorios > correctamente, de tal forma que habría que poner /usr/local/share, en > vez de /usr/share. De esta forma, con gedit el archivo debería quedar > así: > > ------------------------------------------- > #!/bin/sh > if which python2 >/dev/null; then > cd /usr/local/share/pymaxe/ > python2 launcher.py > else > cd /usr/local/share/pymaxe/ > python launcher.py > fi > ------------------------------------------- > > 6) Se guarda el archivo de texto con "control + s" y se cierra. > > 7) A continuación, nos vamos al programa del Menú principal (o alacarte, > usando alt + f2). Buscamos pymaxe (que está en el apartado de sonido y > vídeo), una vez seleccionado le damos al botón de Propiedades y pulsamos > donde debería estar su icono. Lo buscamos (que está > en /usr/local/share/icons/pymaxe.png). > > 8) Si uno quiere tener la carpeta de Descargas limpia tras instalar el > programa, es aconsejable hacer un "rm -r" en el terminal sobre los > archivos que nos hemos bajado y descomprimido o directamente irse con el > explorador de archivos y hacer eso mismo gráficamente. > > Aquí en concreto el comando sería: > > ~/Descargas$ sudo rm -r usr pymaxe.tar.gz > > > ----Instalación de Pymaxe en Debian 8 usando el paquete.deb---- > > 1) Ir a la web donde está pymaxe: > www.pymaxe.com > > 2) Darle al botón "Download" > 3) Elegir la opción "Debian / Ubuntu-compatible". > > 4) Una vez bajado el paquete, antes de instalarlo, hay que instalar una > serie de paquetes (dependencias), de lo contrario nuestro paquete se > romperá. Para la gente novata como yo, es casi más cómodo usar Synaptic, > que va mostrando lo que vas instalando de forma gráfica, aunque me > imagino que también se puede hacer igual desde la consola o terminal. > > Las dependencias del paquete pymaxe.deb son: > > - python2.6 o python2.7 > - python-gtk2 > - python-glade2 > - ffmpeg > - gstreamer0.10-ffmpeg > - libavcodec52 o libavcodec53 > - gstreamer0.10-plugins-ugly o bien vlc o bien mp > > Las únicas dependencias (o paquetes necesarios para que pymaxe funcione) > que no se pueden encontrar en los repositorios de Debian 8 oficiales > son: > - gstreamer0.10-ffmpeg > - libavcodec52 o libavcodec53 > > Para el paquete gstreamer0.10-ffmpeg se puede bajar en el repositorio de > Debian Multimedia. Si no tienes el repositorio instalado, para > instalarlo debes hacer lo siguiente: > > A) Ir a la consola y escribir lo siguiente: > > $ sudo gedit /etc/apt/sources.list > > B) Una vez abierto el archivo sources.list escribir lo > siguiente: > > deb http://www.deb-multimedia.org jessie main non-free > > Guardar y cerrar el archivo. > > C) Ir al terminal y escribir esto: > > $ sudo apt-get update > $ sudo apt-get install deb-multimedia-keyring > $ sudo apt-get update > > El paquete libavcodec52 o libavcodec53 no existe para Debian Jessie, sin > embargo existe el paquete libavcodec56. > > Posiblemente con el paquete libavcodec56, al ser una edición posterior > sea retrocompatible con las versiones 52 y 53 y que los que hicieron > pymaxe en su día no tuvieron en cuenta el paquete en la versión 56 > porque aún no existía y no se han molestado en actualizarlo. > > Basándonos en esta posibilidad, vamos a modificar el paquete .deb > (pymaxe.deb) para que sea compatible también con el paquete > libavcodec56, para eso, cambiaremos el archivo de control del > paquete .deb siguiendo estos pasos: > > A) Ir al terminal y escribir esto: > > ~$ cd /home/usuario/Descargas > > B) Desempaquetar el paquete .deb > > ~/Descargas$ mkdir temporal > ~/Descargas$ sudo dpkg-deb --extract pymaxe.deb temporal > > Lo que hace la primera línea es crear una carpeta temporal donde > se descomprime el archivo, y la segunda línea descomprime el > archivo en sí. > > C) Ahora extraer la parte de control del paquete .deb: > > ~/Descargas$ sudo dpkg-deb --control paquete.deb temporal/DEBIAN > > D) Editar el archivo de control, para eso hacer lo siguiente en > el terminal: > > ~/Descargas$ gedit temporal/DEBIAN/control > > El archivo de texto es tal que así: > > ------------------------------------------------------------------------ > > Package: pymaxe > Version: 0.60 > Architecture: all > Maintainer: Mamut R. Ghiunhan <vene...@blug.ro> > Installed-Size: 82 > Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg, > gstreamer0.10-ffmpeg, libavcodec52 | libavcodec53, > gstreamer0.10-plugins-ugly | vlc | mplayer > Section: x11 > Priority: extra > Homepage: http://code.google.com/p/pymaxe/ > Description: A music downloader application > PYMAXE is an application which provides > the ability to download music and video. > > -------------------------------------------------------------------------- > > Hay que modificar la sección "Depends", añadiendo un "| > libavcodec56", que dicho en lenguaje coloquial sería "también > vale el paquete libavcodec56". Para añadir el carácter "|", se > hace con Altgr + 1, quedando el archivo de texto de esta forma: > > ------------------------------------------------------------------------ > > Package: pymaxe > Version: 0.60 > Architecture: all > Maintainer: Mamut R. Ghiunhan <vene...@blug.ro> > Installed-Size: 82 > Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg, > gstreamer0.10-ffmpeg, libavcodec52 | libavcodec53 | libavcodec56, > gstreamer0.10-plugins-ugly | vlc | mplayer > Section: x11 > Priority: extra > Homepage: http://code.google.com/p/pymaxe/ > Description: A music downloader application > PYMAXE is an application which provides > the ability to download music and video. > > -------------------------------------------------------------------------- > > E) Ahora sólo hace falta empaquetarlo todo otra vez en > formato .deb, escribiendo lo siguiente en el terminal: > > ~/Descargas$ sudo dpkg --build temporal > > F) Por último, cambiar de nombre el paquete deb por el nombre > del paquete original, cosa que hará que el paquete nuevo > sustituya al viejo automáticamente, cosa que se hace con el > siguiente comando: > > ~/Descargas$ mv temporal.deb pymaxe.deb > > El enlace que me ha servido de ayuda para editar el paquete .deb > lo he encontrado en esta web: > > http://www.taringa.net/post/linux/17294752/Editar-Paquete-deb.html > > Si uno quiere un script para que sirva de ayuda a la hora de > editar un paquete .deb de forma más automática, este enlace > puede os puede valer. Si uno entiende bien shell-script imagino > que se podrá personalizar al gusto que uno quiera: > > https://gist.github.com/chetan/1410666 > > 5) Una vez instaladas todas las dependencias, instalar el paquete > pymaxe: > ~/Descargas$ sudo dpkg -i pymaxe.deb > > 6) Si uno quiere limpiar la carpeta de Descargas, escribir en el > terminal: > ~/Descargas$ sudo rm pymaxe.deb > > > -----------Instalación de Pymaxe en Debian 7 estable----------- > > 1) Ir a la web donde está pymaxe: > www.pymaxe.com > > 2) Darle al botón "Download". > 3) Elegir la opción "Debian / Ubuntu-compatible". > > 4) Una vez bajado el paquete, antes de instalarlo, hay que instalar una > serie de paquetes (dependencias), de lo contrario nuestro paquete se > romperá. Puedes usar Synaptic o hacerlo por la consola o terminal. > > Dependencias necesarias: > > - python2.6 o python2.7 > - python-gtk2 > - python-glade2 > - ffmpeg > - gstreamer0.10-ffmpeg > - libavcodec52 o libavcodec53 > - gstreamer0.10-plugins-ugly o bien vlc o bien mp > > Aparte de esos paquetes, saber que buena parte de las dependencias se > resuelven instalando el paquete "libav-tools", aparte de que sería > aconsejable tener también incluido el repositorio multimedia de Debian, > explicado en la sección anterior. > > 5) Una vez instaladas las dependencias necesarias, instalamos el paquete > pymaxe: > ~/Descargas$ sudo dpkg -i pymaxe.deb > > 6) Si uno quiere tener la carpeta de Descargas limpia después de la > instalación, se ejecuta el siguiente comando en el terminal: > > ~/Descargas$ sudo rm pymaxe.deb > > > -------------Instalación en Debian 7 sid------------------ > > NOTA: Este caso no lo he probado, porque no tengo Debian sid instalado. > Sin embargo esto ha sido sugerido por otros usuarios de la lista de > correos como alternativa válida, por eso lo incluyo también. > > Pasos: > > 1) Ir a la web donde está pymaxe: > www.pymaxe.com > > 2) Darle al botón "Download". > 3) Elegir la opción "Debian / Ubuntu-compatible". > > 4) Ejecutar este comando en el terminal: > > ~/Descargas$ sudo dpkg -i pymaxe.deb > > Sin embargo, el paquete acaba roto al no tener instaladas sus > dependencias. > > Para este caso, en sid se modifican las dependencias, para ello se puede > o bien editar el paquete .deb para que las dependencias de su archivo de > control quede así: > > Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg, > gstreamer0.10-ffmpeg|gstreamer1.0-libav, libavcodec52 | libavcodec53 | > libavcodec56, gstreamer0.10-plugins-ugly | gstreamer1.0-plugins-ugly | > vlc | mplayer > > Explicado en la sección "Instalación de Pymaxe en Debian 8 usando el > paquete.deb". > > O bien, uno puede usar el script videbcontrol: > https://gist.github.com/chetan/1410666 > > Si uno entiende bien shell-script. > > 5) Luego, para arreglar el paquete pymaxe.deb, ejecutaríamos este > comando en el terminal: > > ~/Descargas$ sudo apt-get -f install > > Donde se instalarían las dependencias necesarias a posteriori y > pymaxe.deb acabaría bien instalado. > > 6) Para limpiar la carpeta de Descargas escribir en el terminal: > > ~/Descargas$ sudo rm pymaxe.deb > > > ----- Apunte de la instalación de paquetes con Debian testing ------ > > En experimental ya se puede usar apt-get con un fichero local, algo > deseado desde 1999 y realizado el año pasado, enlace que lo explica: > > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=47379 > > Es decir, que uno podría hacer en Debian testing así por las buenas: > > # apt-get install file:/home/user/Descargas/pymaxe.deb > > Y pymaxe quedaría instalado, aunque imagino que previamente habría que > instalar las dependencias necesarias para que el paquete no acabara roto > o ejecutar después el comando "apt-get -f install" para arreglar el > paquete roto. > > No he probado esta opción al no tener instalado Debian testing, sin > embargo, si las dependencias traen problemas por el paquete > libavcodec53, uno puede editar el paquete .deb y modificar su archivo de > control para que admita el libavcodec que uno tiene instalado > (especialmente si es una versión posterior a libavcodec53). > > El cómo editar un paquete .deb se explica en la sección "Instalación de > Pymaxe en Debian 8 usando el paquete.deb" > > > --------------------Configuración de pymaxe---------------------- > > Es muy sencilla, con irse al menú Pymaxe/Preferencias, ahí podemos > decidir cómo lo queremos todo. Eso a gusto del usuario. > > Si no sabéis qué carpeta elegir para meter los plugins que puedan > surgir en un futuro con pymaxe, podéis crearos una carpeta > en /home/user/.pymaxe, para tenerlos ahí guardados. > > Para eso o bien lo hacemos en nuestro explorador de archivos de forma > gráfica: > > - Dentro de nuestra carpeta personal, botón derecho en la ventana, > elegimos la opción de "Nueva Carpeta" y por último renombramos esa > nueva carpeta como ".pymaxe" (sin las comillas). > > O bien podemos escribir en nuestra consola o terminal (sabiendo que > estamos en nuestra carpeta personal): > > ~$ mkdir .pymaxe > > Después nos vamos a la aplicación pymaxe, le damos al menú > Pymaxe/Preferencias, en la pestaña de "Advanced settings", elegimos en > el campo "Custom Pymaxe plugin folder (restart required):" > /home/user/.pymaxe > > > -----------Convertir formato de vídeo a formato de música----------- > > Con Songr había una opción en el menú contextual (botón derecho sobre el > archivo seleccionado) para extraer el mp3 de los vídeos de youtube que > encontraba. > > Con pymaxe, encuentra vídeo y audio igualmente en la lista de búsqueda. > No he encontrado dentro de pymaxe una opción para convertir el vídeo en > audio. La forma que he encontrado para convertir el vídeo en audio es > bajándome el vídeo de pymaxe y después usar el comando ffmpeg en la > consola o terminal para terminar de conseguir el archivo de audio. > > A través de esta web nos dice un resumen muy acertado para convertir el > vídeo en audio: > http://www.taringa.net/posts/linux/1341389/Convertir-videos-FLV-a-Avi-o-MP3-Ubuntu-64-Bits.html > > En esencia para convertir el vídeo en audio hay que escribir lo > siguiente en el terminal: > > $ ffmpeg -i videofile.flv -f mp3 audiofile.mp3 > > Concretamente con esto a partir de videofile.flv (que no modificamos) > nos genera un archivo de audio en formato mp3 (audiofile.mp3). > > Igualmente esto mismo se puede hacer con archivos .avi: > > $ ffmpeg -i videofile.avi -f mp3 audiofile.mp3 > > Hay que decir que debemos estar siempre en la carpeta donde se encuentra > el archivo de vídeo para realizar esta operación. > > Para más detalles sobre cómo funciona el comando ffmpeg, hacer esto > mismo en el terminal: > > $ man ffmpeg > > Aprovecho este último correo para dar las gracias a todos los que me han > ayudado a instalar este programa con éxito, así como aquéllos que me han > dado la información necesaria sobre los casos de Debian sid y testing y > sobre los puntos fuertes y débiles de aplicaciones como pymaxe: > > - alparkom > - Javier Barroso > - José Maldonado > - Camaleón > > Gracias por toda vuestra ayuda. > >
He tenido una pequeña errata al poner el número 5 dos veces en Debian sid. Lo he corregido ahora aquí. Erratas aparte espero que todo esto sea útil. Saludos. Jorge.