Autor |
Mensaje |
romeox
Usuario
Registrado: Marzo 2010
Mensajes: 16
Edad: 39 Ubicación:
|
Youtube-dl En Gambas
Empecé a practicar el comando shell, y uno de los comandos que mas utilizó es el del script de youtube-dl para descargar videos de youtube.
El problema es que youtube-dl dejó de funcionar de un dia para otro. Ya lo desinstalé y reinstale con apt y aptitude y sigue sin funcionar.
Si alguien me puede ayudar con una progressbar se los agradecería.
' gambas class file
PUBLIC SUB _new()
END
PUBLIC SUB Form_Open()
END
PUBLIC SUB bt_descarga_Click()
'declara las variables que serán utilizadas en el textarea. Gracias abarzuaf
DIM buffer AS String
DIM cadena AS NEW String[]
DIM bucle AS Integer
'calidad del video
DIM calidad AS String
TextArea1.Clear 'limpia el textarea cada que se usa
IF rbtflv.Value = TRUE THEN calidad = "-f 6 " 'calidad FLV
IF rbtmp4.Value = TRUE THEN calidad = "-f 18 " 'calidad MP4
IF rbtmp4hd.Value = TRUE THEN calidad = "-f 22 " 'calidad MP4 HD
IF rbt3gp.Value = TRUE THEN calidad = "-f 17 " 'calidad 3GP Móvil
'manda llamar al comando youtube-dl + la calidad del video + la dirección
SHELL "youtube-dl " & calidad & Str(txt_url.Text) WAIT TO buffer
cadena = Split(buffer, "\n")
'envia el texto del shell al textarea
FOR bucle = 0 TO cadena.Count - 1
TextArea1.Insert(Str(cadena[bucle]) & "\n")
NEXT
'habilita el textarea. Propiedad "enable" = false por default
TextArea1.Enabled = TRUE
END
PUBLIC SUB bt_end_Click()
FMain.Close()
END
|
#1 Viernes, 09 Abril 2010, 07:52 |
|
|
abarzuaf
Ingeniero Programador
Registrado: Octobre 2009
Mensajes: 265
Edad: 54 Ubicación:
|
Re: Youtube-dl En Gambas
La versión que viene con Ubuntu Karmic Koala es bastante antigua (22-03-2008) y parece no funcionar.(No se que distribución tienes)
Descarga la versión mas actualizada con fecha 04.04.2010 que se encuentra en la pagina web principal.
http://bitbucket.org/rg3/youtube-dl/wiki/Home
Puedes descargarlo en el Escritorio y darle permisos de ejecución al script con:
$sudo chmod +x youtube-dl
Luego pruebalo desde consola con:
$./youtube-dl [Dirección de video a descargar]
Si funciona, debiera funcionar con tu programa.
Saludos
última edición por abarzuaf el Viernes, 09 Abril 2010, 15:38; editado 1 vez
|
#2 Viernes, 09 Abril 2010, 15:37 |
|
|
romeox
Usuario
Registrado: Marzo 2010
Mensajes: 16
Edad: 39 Ubicación:
|
Re: Youtube-dl En Gambas
Muchas gracias ya regreso el poder de youtube-dl; pero ahora trae más funciones.
Alguien sabe como agregar la progressbar para que muestre el progreso de la descarga?
|
#3 Viernes, 09 Abril 2010, 23:17 |
|
|
chen_08
Aprendiz
Registrado: Octobre 2009
Mensajes: 86
Edad: 34 Ubicación: Coclé
|
Re: Youtube-dl En Gambas
Bueno creo que es muy difícil hacer el progressbar ya que estas ejecutando un script, pero tu no sabes que porcentaje va de la descarga. Lo que puedes hacer es darte cuenta si el proceso esta corriendo o no..!!
Yo estaba haciendo un programa que bajar archivos flash de diferentes paginas web, Utilizando un perl llamado "get_flash_videos"
Sitio Web
La cual pude hacer que bajara el video pude guardarlo en un directorio especifico pero lo que no pude hacer es ver el estado de descarga 1% 2% 3% etc..!
Lo que hice fue un progressbar que cargaba y se llenaba, luego regresaba a 0 y luego se cargaba hasta que se descargara el vídeo !! Aquí te dejo el codigo por si te sirve
Saludos romeox
última edición por chen_08 el Viernes, 09 Abril 2010, 23:35; editado 1 vez
|
#4 Viernes, 09 Abril 2010, 23:34 |
|
|
romeox
Usuario
Registrado: Marzo 2010
Mensajes: 16
Edad: 39 Ubicación:
|
Re: Youtube-dl En Gambas
Gracias por responder chen.
De hecho el youtube-dl si muestra el progreso de la descarga.
el problema es que no se como sincronizar con la progressbar.
|
#5 Sabado, 10 Abril 2010, 00:59 |
|
|
chen_08
Aprendiz
Registrado: Octobre 2009
Mensajes: 86
Edad: 34 Ubicación: Coclé
|
Re: Youtube-dl En Gambas
Si tambien el perl que usaba mostrba el procentaje de descarga..!! Bueno lo que se me ocurre es que modifiques el script youtube-dl para que solamente imprima en cada linea, la velocidad de descarga y el porcentaje de descarga para entonces que lo puedas almacenar en una variable y convertirla a tipo double o float.
Por ejemplo
Que al poner el link del video a descargar salga
101.8 k/s
3.4
Ahi ya podras sacar el porcentaje y la velocidad de descarga..!! Esa es la unica idea que se me ocurre..!!
|
#6 Sabado, 10 Abril 2010, 15:58 |
|
|
Ender
Aprendiz
Registrado: Diciembre 2009
Mensajes: 55
Edad: 48
|
Re: Youtube-dl En Gambas
curl aprovecha la salida standard de errores (stderror) para indicar estados de descarga, porcentajes, etc., usando -# en la llamada del EXEC o SHELL, e indicando FOR READen la ejecución (página 137 del libro de gambas de Daniel Campos y José Luís Redrejo). No se si esto sería extrapolable a youtube-dl....
Salu2, cracks
|
#7 Domingo, 11 Abril 2010, 15:33 |
|
|
romeox
Usuario
Registrado: Marzo 2010
Mensajes: 16
Edad: 39 Ubicación:
|
Re: Youtube-dl En Gambas
Hola ender, gracias por el dato.
Ya llevo 2 dias y no he podido implementar la progressbar.
El ejemplo que mencionas si funciona, pero no se trata de una progressbar.
La cosa deberia ser mas o menos que
Mientras el proceso "descarga" este "corriendo" la progressbar deberá irse llenando.
Aun no se como seria el cálculo del tiempo. el youtube-dl muestra el tamaño del archivo y el porcentaje que lleva de descarga.
|
#8 Martes, 13 Abril 2010, 06:10 |
|
|
Ender
Aprendiz
Registrado: Diciembre 2009
Mensajes: 55
Edad: 48
|
Re: Youtube-dl En Gambas
Y dentro de mi aún ignorancia en gambas, que espero superar en breve....
No podrías extrapolar ese dato del porcentaje de la descarga a la progressbar? Intentaré hacer esta tarde algunas pruebas con el tema del curl, y ver si se podría aplicar a tu caso.
Salu2, crack
|
#9 Martes, 13 Abril 2010, 09:38 |
|
|
h4k
Usuario
Registrado: Febrero 2010
Mensajes: 43
Edad: 33 Ubicación:
|
Re: Youtube-dl En Gambas
A mi se me ocurre una pequeña idea un tanto diferente a las anteriores... pero no se si sea posible implementarla porque no se como funciona el script.
Si supieras el tamaño total del archivo con anticipación, y el nombre del archivo temporal, podrías ir verificando el tamaño de este, y con eso, calcular el porcentaje de descarga.
Saludos
|
#10 Miercoles, 14 Abril 2010, 05:16 |
|
|
|