Signed-off-by: HeshamTB <hishaminv@gmail.com>
This commit is contained in:
HeshamTB 2024-06-09 14:30:47 +03:00
parent a33b90c5c7
commit 716083b114
Signed by: Hesham
GPG Key ID: 74876157D199B09E
2 changed files with 31 additions and 0 deletions

30
README.md Normal file
View File

@ -0,0 +1,30 @@
# 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.
## genfeed
Generate a feed given a channel id
```sh
cd cmd/genfeed
go build .
./genfeed -id CHANNEL_ID > feed.xml
```
## ytbouncer
The bouncer uses standard go http and can be embedded
```sh
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.

1
cmd/ytbouncer/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
ytbouncer