Skip to content

segment a podcast episode automatically and add chapter markers

Notifications You must be signed in to change notification settings

cstollw/podcast-chapterize

 
 

Repository files navigation

podcast-chapterize

This project aims to automatically provide longform audio podcast episodes with chapter markers. This is achieved with statistical natrual language processing algorithms that try to subdivide transcribed podcast episodes into topically cohesive parts.

[work in progress]

Requirements

CLI:

Web interface:

  • node.js
  • npm

Usage

This program can be used in the command line or as an HTTP API with a web interface.

CLI

Usage: python3 main.py [subcommand] [options] ...

  • Help: python3 main.py --help
  • Subcommand help: python3 main.py [subcommand] --help
  • Possible subcommands:
    • python3 main.py run: Start chapterization process from podcast RSS feed URL
    • python3 main.py transcribe: Transcribe podcast episode from RSS feed URL
    • python3 main.py chapterize: Chapterize transcript

Web interface

API:

  • Create python3 venv: python3 -m venv venv
  • Activate venv: source venv/bin/activate
  • (optional) Set environment variables for IP address and Port in the ´.flaskenv´ file
  • start API server with flask run

Frontend:

  • Serve frontend files 'web/client/dist' on web server

If the server is not running on the same machine:

  1. specify API host in web/client/.env
  2. cd into 'web/client'
  3. install dependencies with npm install
  4. build files with npm run build
  5. serve built files from (web/client/dist) on web server

About

segment a podcast episode automatically and add chapter markers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 66.8%
  • Vue 25.3%
  • JavaScript 6.0%
  • HTML 1.8%
  • CSS 0.1%