/cercami-bordone

A set of tools to download, transcribe and index podcast episodes.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Cercami Bordone

This is a speech-to-text experiment consisting in transcribing episodes of a podcast and making the transcriptions searchable through a web application.

Steps involved:

  1. Retrieve podcast episodes
  2. Cut initial and ending credits
  3. Upload cut episodes to Azure Storage
  4. Transcribe episodes in Azure Storage using Azure Speech Services
  5. Expose transcriptions as a search engine web application

Setup

  1. Install required Python packages
    python -m venv venv
    source venv/bin/activate
    python -m pip install -r requirements.txt
  2. Setup secrets in .env file
    AZURE_SUB_KEY: Azure Speech Services subscription key
    AZURE_REGION: Azure Speech Services region
    AZURE_STORAGE_CONNECTION_STRING: Azure Storage Account connection key (Storage account > Access keys)
    AZURE_BLOB_CONTAINER_URI: Azure Container URL (Container > Shared access token - Read and List rights)
    ILPOST_USER: Il Post username
    ILPOST_PASS: Il Post password
    
  3. Setup output folders
    mkdir -p output/episodes-original output/episodes/cut output/transcriptions
    ln -s $(pwd)/output/transcriptions api/transcriptions

Add new transcriptions

Run ./create_transcriptions.sh.

Develop web app

Start frontend development server:

cd frontend
npm start
# to build the React application in ./api/static
npm run build

Start API server:

cd api
flask --debug --app server run

References