Extractor de Música de Youtube - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: Aplicaciones/Fragmentos de Código (https://gambas-es.org/forum-8.html) +--- Tema: Extractor de Música de Youtube (/thread-1019.html) Páginas:
1
2
|
Extractor de Música de Youtube - Shordi - 06-09-2022 Background: Soy un viejo maniático y cuando se trata de escuchar música siempre suelo escuchar las mismas cosas. Es por eso que en Youtube tengo una serie de listas con canciones y siempre recurro a ellas porque no todo lo que me gusta está en mi disco duro. La siguiente pregunta es ¿Por qué no lo está? Pues porque buscar los temas individuales para descarga por los bajos fondos de la web es un peñazo y porque youtube lo pone muy fácil. (Sí ya lo sé todos usáis espotifai y de más zarandajas y yo sólo soy un anticuado... pero es lo que hay). Circunstancia A) A partir de éste hilo https://gambas-es.org/showthread.php?tid=999 y de la solución que ahí encontré decidí dar un nuevo empuje a mi programa reproductor de Música gbAmp (https://gitlab.com/shordi/gbamp), al que quiero dar nueva apariencia, pulir ciertos bugs y añadir alguna feature, entre ellas el poder descargar la música desde youtube para escucharla con mi gbAmp y no ocupar ancho de banda, que no me sobra, oiga, mientras hago otras cosas. Circunstancia B) Una investigación en la Granja de Gambas sobre lo que ya había hecho al respecto me dio acceso a varias herramientas... que no me llegaron a gustar. Sobre todo por la lentitud que el youtube-dl manifiesta... En ello estaba cuando descubrí este canal de Youtube https://www.youtube.com/c/atareao (Que os recomiendo encarecidamente) y en él oí hablar de la versión "avanzada" de youtube-dl: yt-dlp (https://youtu.be/sgYCyg4TErk), que viene en los repositorios de ubuntu. La instalé comprobé su velocidad y capacidad de extraer el sonido de los vídeos, me encantó y comencé a teclear. Circunstancia C) La idea era hacer un botoncito o algo en el gbAmp que abriese un formulario que permitiese descargar un vídeo o, mejor aún, una lista de reproducción completa. Para no "engorrinar" el proyecto y no volver loco al gitlab creé un proyecto nuevo y cuando lo tuve caí en la cuenta de que daba para ser presentado en sociedad. Un pequeño logo, hacer traducible el proyecto y ya está. Resultado: Aquí tenéis YT-Sound, un miniproyecto que hace eso que arriba describo: descarga vídeos de youtube, extrae el sonido y luego borra los vídeos descargados. Uso: 1.-) Captáis la URL del vídeo o Lista que queréis descargar (bien en la opción "Compartir" de youtube o copiando la url del enlace "VER LISTA DE REPRODUCCIÓN COMPLETA" que aparece al abrir la pestaña "Listas" de cualquier canal de Youtube con el botón derecho y "Copiar Enlace" 2.-) La pegáis en la primera casilla 3.-) Elegís/Creáis la carpeta de destino de la descarga 4.-) Pulsáis "Descargar". Este es su aspecto: Consideraciones: - yt-dlp es un software magnífico que hace un montón de cosas, este programa es muy limitado porque sólo hace eso que describo. De hecho todo el meollo del programa se limíta a llamar a yt-dlp con las opciones correspondientes. -La versión de yt-dlp que viene en los repositorios de ubuntu es anticuada y genera muchos warnings. Afortunadamente en su página web (https://github.com/yt-dlp/yt-dlp/releases/)puedes descargar el binario compilado para tu distribución y sustituir el que existe en /usr/bin con él. (no he probado con otras distribuciones, sólo con mi Linux Mint) -Las actualizaciones y mejoras (si las hay) las iré colocando en el gitlab https://gitlab.com/shordi/YT-Sound Saludos RE: Extractor de Música de Youtube - tincho - 06-09-2022 (06-09-2022, 12:44)Shordi escribió: Soy un viejo maniático En serio ? jajaja !!! (06-09-2022, 12:44)Shordi escribió: Youtube https://www.youtube.com/c/atareao (Que os recomiendo encarecidamente) Muy buen canal, varias veces solucione cosas de linux gracias al blog de este muchacho. (06-09-2022, 12:44)Shordi escribió: Para no "engorrinar" el proyecto y no volver loco al gitlab creé un proyecto nuevo y cuando lo tuve caí en la cuenta de que daba para ser presentado en sociedad. Un pequeño logo, hacer traducible el proyecto y ya está.Gracias por compartir. (06-09-2022, 12:44)Shordi escribió: 2.-) La pegáis en la primera casilla Pedido de caracteristica antes de probar nada jeje, no es posible que el peograma se entere solo que copiaste un link youtube ? sin tener que pegarlo. (06-09-2022, 12:44)Shordi escribió: -Las actualizaciones y mejoras (si las hay) las iré colocando en el gitlab https://gitlab.com/shordi/YT-Sound No esta accesible o no existe el proyecto. (06-09-2022, 12:44)Shordi escribió: Aquí tenéis YT-Sound, un miniproyecto que hace eso que arriba describo: descarga vídeos de youtube, extrae el sonido y luego borra los vídeos descargados. es necesario descargar el video? no se puede descargar solo el sonido? (06-09-2022, 12:44)Shordi escribió: - yt-dlp es un software magnífico que hace un montón de cosas, este programa es muy limitado porque sólo hace eso que describo. De hecho todo el meollo del programa se limíta a llamar a yt-dlp con las opciones correspondientes. Gracias por el dato, no conocia este programa. RE: Extractor de Música de Youtube - Shordi - 06-09-2022 Cita:Pedido de caracteristica antes de probar nada jeje, no es posible que el peograma se entere solo que copiaste un link youtube ? sin tener que pegarlo.Pos no lo sé... cosa a mirar. Cita:No esta accesible o no existe el proyecto.Siempre se me olvida activar lo de "Visibilidad Público", que está escondido de entrada en la web... Cita:es necesario descargar el video? no se puede descargar solo el sonido?No. Es la manera en que trabaja yp-dlp. Primero se baja la página web, luego hace algún tipo de scrapping para pillar el enlace del vídeo, lo descarga (muy rápido, eso sí) y después hace todo lo que ellos llaman "post-producción", extraer audio, poner subtítulos, etc. etc. Con un parámetro más que añadas (-k, creo recordar) no elimina el vídeo descargado... pero mi programa sólo está interesado en la música. He probado a bajar con él algún podcast y alguna conferencia y también mola. Saludos. Salidas RE: Extractor de Música de Youtube - tincho - 06-09-2022 me respondo solo, es igual que youtube-dl, tiene los mismos parametros yt-dlp -f 140 https://www.youtube.com/.... Esto descarga solo el audio RE: Extractor de Música de Youtube - Shordi - 07-09-2022 Cita:me respondo solo, es igual que youtube-dl, tiene los mismos parametrosSí, creo que había un youtube-dlc y yt-dlp es una evolución del mismo o algo así (nunca he usado ni conocía youtube-dl). Cita:yt-dlp -f 140 https://www.youtube.com/....No. Ese parámetro es el que yo utilizo y hace lo que arriba describí. La sensación es de que sólo baja el audio, pero si pulsas la opción de "Ver Salida Completa" (o si la ejecutas en un terminal) puedes ver que descarga todo. Por cierto, el enlace que pones lleva sólo al youtube Saludos RE: Extractor de Música de Youtube - Shordi - 07-09-2022 Le he añadido un botón "Cancelar", que a veces empiezas a descargar una lista sin darte cuenta de que contiene vídeos de 3 horas... Saludos RE: Extractor de Música de Youtube - tincho - 07-09-2022 (07-09-2022, 06:58)Shordi escribió: No. Ese parámetro es el que yo utilizo y hace lo que arriba describí. La sensación es de que sólo baja el audio, pero si pulsas la opción de "Ver Salida Completa" (o si la ejecutas en un terminal) puedes ver que descarga todo. No estoy de auerdo, desde mi punto de vista solo descarga el audio. dejo un ejemplo con la salida completa de la terminal Código: [dave@hal9000 ~]$ yt-dlp -f 140 https://www.youtube.com/watch?v=Q42H6b85sTM&ab_channel=LaRengaVEVO (07-09-2022, 06:58)Shordi escribió: Por cierto, el enlace que pones lleva sólo al youtube Si era solo un ejemplo, le recorte a drede el URL. RE: Extractor de Música de Youtube - Shordi - 07-09-2022 Pues la información que da con tu formato no cuadra con la que da con el mío... Dejando el tiempo de descarga aparte, que creo que tu conexión es mucho más rápida que la mía, veo que a tí te ha descargado 5.15 mb y a mí 4.98. Por lo que supongo que en ambos casos descarga lo mismo. Quizá el forma m4a es superior al opus, que es el que a mí me genera. He probado tu cadena de descarga con el formato 251, que es el webm (porque el m4a no funciona en mi programa), y lo mismo. Me da la sensación de que hace lo mismo con las dos sintáxis y que cuando se pide un formato concreto limita la información en consola de lo que hace. Por otro lado, con mi sintáxis de "best audio", hasta siempre genera archivos .opus, que es un formato libre, mientras que el webm es propietario... y eso es un punto en contra. Falta información por algún lado, me temo, pero de momento lo voy a dejar como está. Saludos RE: Extractor de Música de Youtube - tincho - 07-09-2022 (06-09-2022, 21:11)Shordi escribió:Cita:es necesario descargar el video? no se puede descargar solo el sonido?No. Es la manera en que trabaja yp-dlp. Primero se baja la página web, luego hace algún tipo de scrapping para pillar el enlace del vídeo, lo descarga (muy rápido, eso sí) y después hace todo lo que ellos llaman "post-producción", extraer audio, poner subtítulos, etc. etc. Con un parámetro más que añadas (-k, creo recordar) no elimina el vídeo descargado... pero mi programa sólo está interesado en la música. He probado a bajar con él algún podcast y alguna conferencia y también mola. Hice unas pruebas con un programa llamado vnstat para ver que cantidad de mb se descargaban en cada comando con opciones. Puedo confirmar que el programa yt-dlp no descarga el video y luego le recorta la pista, si le indicas que descargue solo hace eso exactamente. yt-dlp -f 140 https://www.youtube.com/watch?v=Q42H6b85sTM&ab_channel=LaRengaVEVO rx | tx --------------------------------------+------------------ bytes 5,83 MiB | 441,34 KiB --------------------------------------+------------------ yt-dlp https://www.youtube.com/watch?v=Q42H6b85sTM&ab_channel=LaRengaVEVO rx | tx --------------------------------------+------------------ bytes 23,40 MiB | 682,64 KiB --------------------------------------+------------------ yt-dlp -f 251 https://www.youtube.com/watch?v=Q42H6b85sTM&ab_channel=LaRengaVEVO rx | tx --------------------------------------+------------------ bytes 5,45 MiB | 169,39 KiB --------------------------------------+------------------ yt-dlp -f "ba" --add-metadata -o "%(title)s.%(ext)s" https://www.youtube.com/watch?v=Q42H6b85sTM rx | tx --------------------------------------+------------------ bytes 5,45 MiB | 166,33 KiB --------------------------------------+------------------ RE: Extractor de Música de Youtube - Shordi - 07-09-2022 Ok, creo que ya sé lo que ocurre. yt-dlp descarga efectivamente solo el sonido. Con la sintáxis yt-dlp -f "ba" --add-metadata -o "%(title)s.%(ext)s" https://www.youtube.com/watch?v=Q42H6b85sTM obtienes el fichero: La Renga - Hey Hey, My My (InsoportablemENte VIVO).webm El formato webm (cito de una web: https://www.ionos.es/digitalguide/paginas-web/creacion-de-paginas-web/webm/) "es un formato contenedor (con extensión *.webm) para archivos multimedia, es decir, para vídeos y archivos de audio." Cuando usas la sintáxis yt-dlp -x -f "ba" --add-metadata -o "%(title)s [%(id)s].%(ext)s" https://www.youtube.com/watch?v=Q42H6b85sTM descarga el .webm y luego en "post-producción" convierte el archivo .webm "de video" a .opus, de sonido. y luego elimina "el video" webm. Si añades el parámetro -k (keep) es decir: yt-dlp -xk -f "ba".... lo que obtienes son los dos archivos el webm y el opus. Pero la descarga, efectivamente es sólo el sonido. Hay que ver lo que se aprende cuando juntas tu cabeza con la de otro... Saludos |