487 - Actualizando podcasts de YouTube
u2vpodcast es una servicio para desplegar con #docker o #podman en #linux y que te permitirá escuchar vídeos de YouTube en formato podcast
Cada día consumo mas YouTube, pero, eso si, en formato podcast. Es la mejor manera que tengo actualmente de consumir contenido. Y es que, el formato podcast, tiene la gran ventaja de que te permite realizar otras tareas, y sin embargo, te permite estar atento. Hay quien tiene la maravillosa virtud de poder realizar varias tareas a la vez. Ya te digo, que este no es mi caso. O al menos no de forma eficiente. Quiero decir, que puedo realizar varias tareas, pero no con los resultados que obtengo cuando le dedico toda mi atención a una sola. Y sin embargo, en el caso del podcast, si que me permite realizar varias tareas, puedo correr, y la vez escuchar un podcast, de forma activa. Todo esto me ha llevado a actualizar podcasat de YouTube.
Actualizando podcasts de Youtube
u2vpodcast
Sobre u2vpodcast ya te hablé en el episodio 446, titulado escuchar YouTube en formato podcast.Todo nació de una idea de Ángel de uGeek. El había implementado un script en Bash para poder escuchar YouTube en formato podcast. Me gustó tanto la idea, que decidí hacer algo similar, pero implementado en Rust.
Así nació u2vpodcast, una herramienta que a partir de una lista de canales, listas de reproducción o como tu lo quieras o puedas organizar, te permita crear uno o varios podcast.
Esta herramienta se encarga de descargar los audios de los vídeos, generar el correspondiente feed, y ofrecerlo en formato podcast, que es precisamente lo que andaba yo buscando inicialmente.
Ahí no quedó el asunto
La cuestión, es que después de ese primer paso, quise añadirle nuevas características a la herramienta. Por ejemplo, la posibilidad de listar todos los canales o listas que hayamos agregado. También una opción para navegar entre todos los capítulos o episodios de un podcast, y por supuesto, y como no podía ser de otra forma, también la posibilidad de reproducirlos directamente en la web.
Te tengo que confesar, que todos estos añadidos, los he utilizado en cuanto a penas, lo que básicamente utilizo es la reproducción en formato podcast. Esto me ha permitido escuchar otras categorías de podcast que hasta el momento no estaba escuchando.
Sobre las actualizaciones
La duración
Hace ya algún tiempo que estoy utilizando PocketCasts como mi reproductor por defecto en Android. En este reproductor tengo creada la lista de los 30 minutos. Se trata de la lista que utilizo por defecto, y es la lista donde van a parar todos los podcast que tienen una duración igual o inferior a 30 minutos. Es el formato que mas me gusta, y que me permite consumir mas contenido.
La cuestión es que desde que me pasé a este reproductor, observé que los audios de u2vpodcast nunca aparecían, a pesar, de que normalmente estoy siguiendo canales que ofrecen contenido de ese tamaño mas o menos.
Se trataba de un detalle que había pasado por completo por alto, y es que es necesario en la creación del feed, incorporar la duración del podcast para que un reproductor como PocketCasts lo pueda ordenar.
El interfaz web
Otro de los problemas con los que me encontraba habitualmente era localizar el feed para poder añadir al reproductor. Así, ahora, cuando entras en la página del servicio, verás un listado con todos los canales que tienes. Este litado tiene un enlace a cada una de las listas de reproducción y un enlace al feed, de forma que ahora es realmente sencillo acceder
Por otro lado, cuando accedes a uno de los canales o podcast, te muestra los últimos vídeos, ordenados por la fecha de publicación en sentido descendente. El último publicado el primero de todos.
La paginación
Otro de los detalles es la paginación, y es que por algún tipo de extraña razón no estaba funcionando como esperas. Con esta última versión, se muestran los episodios del podcast en bloques de diez episodios, aunque esto es configurable. Y he añadido, tanto el título, como la descripción, la portada y un reproductor, que te va a permitir consumir los episodios de forma cómoda.
Lo próximo
Llevo ya algunas semanas dando vueltas a la configuración de la aplicación, y es que realmente no tiene mucho sentido que esta configuración esté en un archivo y que para modificarla tengas que entrar al servidor.
Esto me ha llevado definitivamente a pensar en realizar toda la configuración desde la propia web. Con un interfaz sencillo, pero que me permita realizar todas las gestiones de forma sencilla. Es decir,
- Añadir o crear una nueva lista de reproducción
- Quitar una lista de reproducción
- Eliminar todos los audios que ya he escuchado
- Cambiar la descripción de una lista de reproducción.
Inicialmente, cuando hice la aplicación, no pensé en que esto fuera dinámico, y sin embargo, con el paso del tiempo ha resultado que si, que es dinámico, que me canso de algunos podcast y quiero cambiar algunos canales.
Pues nada, que para la futura versión lo incorporaré de esta forma.
Instalar u2vpodcast
Si quieres instalar y probar u2vpodcat, lo puedes hacer fácilmente siguiendo las intrucciones que puedes encontrar GitHub. Básicamente se trata de utilizar el siguiente docker-compose.yml
,
version: "3.7"
services:
u2vpodcast:
image: atareao/u2vpodcast:latest
container_name: u2vpodcast
init: true
restart: always
volumes:
- audios:/app/audios
- db:/app/db
- ./cookies.txt:/app/cookies.txt
- ./config.yml:/app/config.yml
ports:
- 8080:8080
volumes:
audios: {}
db: {}
Espero que te haya gustado este nuevo episodio del podcast. Si puedes, te agradecería una valoración en iVoox y/o en Apple Podcast.
La idea de este servicio me parece fantastica, pero al intentar arrancar el contenedor docker de u2vpodcast me da este error:
u2vpodcast | Error with config file `config.yml`: missing field `db_url`
Me puedes indicar el motivo por favor
Saludos,