yttopodcast

package module
v0.0.0-...-92dddc7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 14, 2024 License: AGPL-3.0 Imports: 0 Imported by: 0

README

yttopodcast

Tools to convert YouTube video feeds to standard Podcast RSS feeds. A workaround is done, bouncer, to serve files from youtube directly, rather than storing the audio files and serving them independantly.

A web server is required to serve the RSS feed as a file, and an HTTP boucner server is used to fetch valid links from yt. Since getting the content URLs is quite slow, the implemented bouncer has a basic cache.

Usage

The tools can be used standalone, imported and invoked in go code, or run with the helpers as a collection.

yttopodcast

Generates single or multiple feeds on an interval, serves the feed files (RSS/XML), and launches a yt link bouncer. This can be used as a complete service.

cd cmd/yttopodcast
go build .
./yttopodcast -id CHANNEL_ID

genfeed

Generate a feed given a channel id

cd cmd/genfeed
go build .
./genfeed -id CHANNEL_ID > feed.xml

feed.xml file can be used as an RSS feed.

ytbouncer

The bouncer uses standard go http and can be embedded. To run it standalone

cd cmd/ytbouncer
go build .
./ytbouncer

starts a server.

Note: the url resolution is quite slow and heavy computaionally, due to yt-dlp backend. It can be used as a DoS without the use of rate limiting or other measures.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL