YouTube video to Audio Podcast in Overcast?

The real tricky part (for me) is automating the upload to Overcast. If anybody knows how to do that, feel free to share. I’m sure there’s a way to get Keyboard Maestro to do it, but I’m not well-versed enough in KM to manage it. (I’ve tried.)

@tonycraine If you’re on iOS isn’t there an Add to overcast action for Shortcuts/Workflow that takes in a URL?

1 Like

So there is! I had no idea. Of course, I don’t know Shortcuts any better than I know KM, but maybe this is the project that gets me going on it.

But can that upload a file to my upload space on Overcast, or does it just add the URL as a feed? I need the former.

From podsync Patreon page

You will get access to goal features:

  • Quality selection (high/low)
  • Pagination (50, 100 or 150)
  • Audio feeds (please note: this feature is experimental and may not work for some cases)

note: Overcast is not supported at the moment

I have a premium Overcast subscription and have used Huffduffer in the past but it seems to be broken now with the workflow I was using

I’ve been playing around with this and I’ve come up with a solution that works.

https://www.icloud.com/shortcuts/afee9db0be824b1ab03f88cb6fa1f4f0

This shortcut does the following:

  1. Accepts a YouTube video URL
  2. Downloads the video and extracts the audio
  3. Saves the audio to Files
  4. Opens Overcast.fm for you to upload the file
  5. Deletes the file from Files upon your return

It’s not completely hands-off, but it does work pretty well.

I can’t take full credit for this as it’s an amalgamation of a few different Shortcuts. Unfortunately I didn’t make a note of the creators of those Shortcuts when I downloaded them, so apologies to the actual creators!

7 Likes

I got something working “automagically”, although it requires a bit of orchestration. I am working on some sort of screencast to illustrate it better but it goes as follows:

  • While in YouTube (Safari) I open the share sheet and run a Siri shortcut.
  • This Siri shortcut takes the url and saves it as a file in my dropbox account.
  • My Mac then, using a Hazel rule detects the change and runs a command that takes the file, downloads the video and extracts the audio as an mp3; after this is done, the same script deletes the txt file and moves the mp3 file to a different folder.
  • A second Hazel rule monitors the destination folder and uploads the mp3 file to my server. Once the file is uploaded, it gets deleted from Dropbox.
  • In that server, I have a PHP file that when requested renders an RSS feed with all the mp3 files on that folder.
  • Overcast after sometime will catch the new item in the RSS feed and I’ll be able to listen to it.

Dependencies / Asumptions:

  • My Mac at home is always on, so it will catch those files as soon as they come.
  • Hazel is not free, but I already have a license.
  • Some command line tools are required for the job, youtube-dl and ffmpeg. Both can be easily installed with Homebrew.
  • I have a server I use for some other tasks with PHP.

Make a few tweaks to make this Shortcut work with Castro’s side load feature. Here are the changes I made:

  1. Changed the name of the folder created from Overcast to Castro.
  2. Set a variable for for the file saved in /Shortcuts/Castro as holding file.
  3. Open a save dialogue to save the just created file in a second location. To be saved in the /Castro/Sideloads. (Couldn’t come up with another way to set the file name)
  4. Delete the file saved in #2. (No need to duplicate, right?)

https://www.icloud.com/shortcuts/3e9d39a065a04e7787d046aa219a40da

Thanks for the jumping off point!

I’ve been using JustCast - https://justcast.herokuapp.com - once I set it up and subscribed to the feed, I can save an audio file to a dropbox folder and it gets pulled into Overcast.

1 Like

I made a python script that checks my youtube watch later, downloads new videos as an mp3 and then updates an RSS feed. It hosts the rss and the mp3 files on Dropbox so its free to use. If anyone is keen I can make it publically accessible.

5 Likes

Yes I would love to see that one

Yeah, I would love to see that, thx!

Hmmm. This looks like exactly what I was searching for, but received an error that the file after the Get Contents of URL call that the file didn’t exist.

Hmm. Just tried running it on my iPhone and I didn’t get that error. Not sure what the problem is.

Maybe I’m starting in the wrong place?

I’m using the share button in YouTube, then selecting Shortcuts, and then the shortcut.

Hi Automators!
I’ve recently published a command line uploader to overcast premium “Uploads” feed. Feel free to create an issue on GitHub in case you run into problems, I’ve only tested it with my account.
Mac binary is available in releases.

So after some mucking around, I found a great tool to do this.

You can tell it to download all the files in a playlist (your own or a channel), convert them to MP3 and then delete the videos. Just awesome. Next using @AndrewM command-line updater to Overcast, they appear in Overcast.

Some thoughts on automating this.

Have a cron job (scheduled task) on my mac mini (always on) to check every day (say 2 am) and
because youtube-dl has a playlist archive feature (it remembers which files have already been downloaded), download and add the files to a watch folder (once converted to MP3) that Hazel monitors and have it run an Applescript that calls the overcast uploader, using *.mp3 and they get uploaded. Have it send me an email off the output. All done!

Thoughts?

2 Likes

Try Listenbox https://listenbox.app/

I have a simple shortcut that sends a URL to my server. On the server, I run youtube-dl and the audio part of the video (if it’s a video) goes into a specific folder. That folder is part of a dircaster hierarchy, so the file is added to an RSS feed that I’ve subscribed to in Overcast. The video/audio muxed file goes into a different dircaster RSS feed which I subscribe to in Downcast.

Complicated, but I had everything in place but the shortcut for a long time, so it was basically no extra effort.

1 Like

I would love to see this, @jonpdw. I’ve been learning Python and this is the exact kind of thing I’m trying to do. I’ve tried to do it myself but I’m running into some trouble. Seeing your example would be a big help!