Liam's mom has poor eyesight but really loves reading, just like he does. He always sees his mom do that thing old people do when they can't read something, the good ol' "hold the phone far away and squint" maneuver. When brainstorming ideas, Liam always came up with stuff like "Automatic Code Commenting", "Automatic News Curation" or "Automatic article-to-podcast so you don't have to exert effort to read anything or waste time trying to comprehend what's written when you can just listen to the knowledge on 2x speed".True story. Clearly, the last idea was the most well developed. So we went with that.
What it does
AutoPod is a web app that converts any medium post or .pdf file to an RSS feed link which is automatically downloaded onto your favourite podcast player. All it requires from the user's end is a link to whatever Medium or PDF they want to be converted into a podcast and the text in audio form will be loaded into the user's favourite podcast app like iTunes or Stitcher Radio.
How we built it
We scraped text from .pdfs and Medium posts when given a link. We then ran that text through Google Cloud's Text-To-Speech API to get the text recorded in the voice of Wavenet. The .mp3 file then gets uploaded to YouTube as a .mp4 using an external library called ffmpy. The file then gets converted to an RSS feed link which the user can enter into a podcast app on the user's phone. We used selenium which is a python library used for automation to make these processes seamless for the user, all done in less than a minute.
Challenges we ran into
- For most of the hackathon, we actually worked on a different idea which kept us pretty time constrained
- We didn't really know how to work with flask or any other framework to run a python program in real-time with the user's request from the web app
Accomplishments that we're proud of
- Almost screamed when the first test file actually converted to a youtube playlist link, easy to automate from there using selenium
- bootstrapping everything to make an MVP that we would actually use every day (we're both huge on learning about the world through podcasts and articles which was part of the inspo. as well as Liam's mom's troubles)
What we learned
- The agonizing part is coming up with an idea, building it is actually fun and not too hard with perseverance
- It's important to take breaks and get enough sleep, both of us were super exhausted mid-Saturday so we took naps and played lots of Smash Bros. to celebrate progress which helped us not burn out
- Having the same buy-in when considering team dynamic is key (need to be on the same page when solving a problem)
What's next for AutoPod
- Building a much nicer front end and moving to develop an app if this gets big enough (neither of us are mobile developers)
- Using transfer learning to make the narrator sound much more realistic (could take up to 30 hours to train which is why we couldn't implement it here)
- Supporting more text formats like a social media news feed