Skip to main content

An Open Source alternative to NotebookLM's podcast feature: Transforming Multimodal Content into Captivating Multilingual Audio Conversations with GenAI

Project description

Podcastfy.ai 🎙️🤖

An Open Source API alternative to NotebookLM's podcast feature: Transforming Multimodal Content into Captivating Multilingual Audio Conversations with GenAI

https://github.com/user-attachments/assets/f1559e70-9cf9-4576-b48b-87e7dad1dd0b

Paper | Python Package | CLI | REST API | Web App | Feedback

Open In Colab PyPi Status PyPI Downloads Issues Pytest Docker Documentation Status License GitHub Repo stars

Podcastfy is an open-source Python package that transforms multi-modal content (text, images) into engaging, multi-lingual audio conversations using GenAI. Input content includes websites, PDFs, YouTube videos, as well as images.

Unlike UI-based tools focused primarily on note-taking or research synthesis (e.g. NotebookLM ❤️), Podcastfy focuses on the programmatic and bespoke generation of engaging, conversational transcripts and audio from a multitude of multi-modal sources, enabling customization and scale.

Star History Chart

Audio Examples 🔊

This sample collection is also available at audio.com.

Images

Image Set Description Audio
Senecio, 1922 (Paul Klee) Connection of Civilizations (2017) by Gheorghe Virtosu Senecio, 1922 (Paul Klee) and Connection of Civilizations (2017) by Gheorghe Virtosu 🔊
The Great Wave off Kanagawa, 1831 (Hokusai) Takiyasha the Witch and the Skeleton Spectre, c. 1844 (Kuniyoshi) The Great Wave off Kanagawa, 1831 (Hokusai) and Takiyasha the Witch and the Skeleton Spectre, c. 1844 (Kuniyoshi) 🔊
Taylor Swift Mona Lisa Pop culture icon Taylor Swift and Mona Lisa, 1503 (Leonardo da Vinci) 🔊

Text

Content Type Description Audio Source
Youtube Video YCombinator on LLMs Audio YouTube
PDF Book: Networks, Crowds, and Markets Audio book pdf
Research Paper Climate Change in France Audio PDF
Website My Personal Website Audio Website
Website + YouTube My Personal Website + YouTube Video on AI Audio Website, YouTube

Multi-Lingual Text

Language Content Type Description Audio Source
French Website Agroclimate research information Audio Website
Portuguese-BR News Article Election polls in São Paulo Audio Website

Features ✨

  • Generate conversational content from multiple sources and formats (images, websites, YouTube, and PDFs).
  • Customize transcript and audio generation (e.g., style, language, structure, length).
  • Generate transcripts using 100+ LLM models (OpenAI, Anthropic, Google etc).
  • Leverage local LLMs for transcript generation for increased privacy and control.
  • Integrate with advanced text-to-speech models (OpenAI, Google, ElevenLabs, and Microsoft Edge).
  • Provide multi-language support for global content creation.
  • Integrate seamlessly with CLI and Python packages for automated workflows.

Updates 🚀

v0.3.0+ release

  • Generate podcasts from input topic using real-time internet search
  • Integrate with 100+ LLM models (OpenAI, Anthropic, Google etc) for transcript generation
  • Integrate with Google's Multispeaker TTS model for high-quality audio generation

See CHANGELOG for more details.

Quickstart 💻

Prerequisites

  • Python 3.11 or higher
  • $ pip install ffmpeg (for audio processing)

Setup

  1. Install from PyPI $ pip install podcastfy

  2. Set up your API keys

Python

from podcastfy.client import generate_podcast

audio_file = generate_podcast(urls=["<url1>", "<url2>"])

CLI

python -m podcastfy.client --url <url1> --url <url2>

Usage 💻

Experience Podcastfy with our HuggingFace 🤗 Spaces app. (Note: This UI app is less extensively tested than the Python package.)

Customization 🔧

Podcastfy offers a range of customization options to tailor your AI-generated podcasts:

Built with Podcastfy 🛠️

License

This software is licensed under Apache 2.0. Here are a few instructions if you would like to use podcastfy in your software.

Contributing 🤝

We welcome contributions! See Guidelines for more details.

Example Use Cases 🎧🎶

  • Content Creators can use Podcastfy to convert blog posts, articles, or multimedia content into podcast-style audio, enabling them to reach broader audiences. By transforming content into an audio format, creators can cater to users who prefer listening over reading.

  • Educators can transform lecture notes, presentations, and visual materials into audio conversations, making educational content more accessible to students with different learning preferences. This is particularly beneficial for students with visual impairments or those who have difficulty processing written information.

  • Researchers can convert research papers, visual data, and technical content into conversational audio. This makes it easier for a wider audience, including those with disabilities, to consume and understand complex scientific information. Researchers can also create audio summaries of their work to enhance accessibility.

  • Accessibility Advocates can use Podcastfy to promote digital accessibility by providing a tool that converts multimodal content into auditory formats. This helps individuals with visual impairments, dyslexia, or other disabilities that make it challenging to consume written or visual content.

Contributors

contributors

↑ Back to Top ↑

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

podcastfy-0.3.5.tar.gz (34.2 kB view details)

Uploaded Source

Built Distribution

podcastfy-0.3.5-py3-none-any.whl (40.1 kB view details)

Uploaded Python 3

File details

Details for the file podcastfy-0.3.5.tar.gz.

File metadata

  • Download URL: podcastfy-0.3.5.tar.gz
  • Upload date:
  • Size: 34.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.10 Linux/6.8.0-48-generic

File hashes

Hashes for podcastfy-0.3.5.tar.gz
Algorithm Hash digest
SHA256 5b3111a28aaadd31c6e13983719996f05de7b70a7f656dd56ce6ed74e294e1ef
MD5 f7c542c0b8a2fef85a8ca117dfed850a
BLAKE2b-256 524ddf54236e19e6c00fc7fe48611874e7772b7be0d2694ba5e3c7045cb24404

See more details on using hashes here.

File details

Details for the file podcastfy-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: podcastfy-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 40.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.10 Linux/6.8.0-48-generic

File hashes

Hashes for podcastfy-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c5aef31a1320800e5d22257ee763abb0e748a115112e1914084f5331462d1a32
MD5 63a9f9349217398e2095ac2eea53edde
BLAKE2b-256 0925b0da407bc16902320266f4e64d487d4db3a1eb99dfae061083da51519229

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page