Skip to content

lkmeta/txtify

Repository files navigation

Whisper SeamlessM4T Hugging Face DeepL FastAPI Python

Txtify is a free and open-source web app for converting audio and video to text using advanced AI models. It supports YouTube videos and personal media files, offering fast and accurate transcriptions. Txtify can be self-hosted, giving you full control over your transcription process.

Table of Contents

About

Txtify is designed to simplify the process of converting audio and video content into text. Whether you're looking to transcribe a YouTube video or your own audio/video files, Txtify offers an easy-to-use interface and powerful AI models to ensure accuracy and speed. The application supports multiple output formats including .txt, .pdf, .srt, .vtt, and .sbv.

Demo

Txtify Demo Video
Check out the demo video to see Txtify in action.

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Python 3.10 installed on your machine
  • Conda installed on your machine (recommended to run on a conda environment)
  • An API key for DeepL if you want to enable translation (in case you need to use this tool for translation)

Installation

To install Txtify locally, follow these steps:

  1. Clone the repository:
git clone https://github.com/lkmeta/txtify.git
cd txtify
  1. Create a conda environment and activate it:
conda create --name txtify python=3.10
conda activate txtify
  1. Install the dependencies:
pip install -r requirements_linux.txt

Usage

Run Online Simulation Demo

You can use the online simulation demo of Txtify to understand how it works. Visit Txtify Website and follow the instructions to upload your media or enter a YouTube URL for a simulated transcription process.

Self Host

To self-host Txtify with full features, follow these steps:

  1. Ensure you have completed the installation steps above.

  2. Rename the .env.example file to .env and add your required DeepL API key for translation.

  3. Start the server:

cd src/
python -m uvicorn main:app --reload --port 5000  --host "0.0.0.0"
  1. Open your web browser and navigate to http://localhost:5000 and enjoy.

Roadmap

  • Basic transcription functionality
  • Support for multiple output formats
  • Integration with DeepL for translations
  • Improved UI/UX
  • Enhance performance and scalability
  • Web browser Whisper option

Report Issues

If you encounter any issues or have suggestions, please use the contact form on the Contact Page to let us know.

Contributing

Feel free to contribute by opening issues, suggesting improvements, or submitting pull requests. Your feedback is highly appreciated!

License

This project is licensed under Apache 2.0.