Skip to main content

Add your description here

Project description

Macscribe

Macscribe is a command-line tool for transcribing audio from YouTube videos, Apple Podcast episodes, and local audio/video files. It downloads audio from URLs or processes local files, transcribes them using a state-of-the-art ML model, and copies the transcription directly to your clipboard for easy use.

Features

  • Multi-Platform Support: Accepts YouTube, Apple Podcast, and X URLs.
  • Local File Support: Transcribes local audio files (MP3, WAV, FLAC, M4A, OGG, WMA) and video files (MP4, MOV, AVI, MKV, WEBM, M4V, WMV).
  • Automated Audio Processing: Downloads high-quality audio from URLs or processes local files directly.
  • State-of-the-Art Transcription: Utilizes mlx-whisper for accurate and fast transcription.
  • Clipboard Integration: Automatically copies the transcript to your clipboard.
  • Customizable Models: Option to specify a different Hugging Face model for transcription.
  • Simple CLI Interface: Easy-to-use command-line interface built with Typer.

Installation

Macscribe can be installed using pip. Ensure you have Python 3.12 or later installed, then run:

pip install macscribe

This will install Macscribe along with its dependencies, including yt-dlp, mlx-whisper, and typer.

Usage

Once installed, you can run Macscribe directly from the command line. The basic usage is:

macscribe <INPUT> [--model MODEL]

Arguments:

  • <INPUT>: Either a URL (YouTube, Apple Podcast, X) or path to a local audio/video file.
  • --model MODEL: (Optional) The Hugging Face model to use for transcription.
    Defaults to "mlx-community/whisper-large-v3-mlx" if not specified.

Examples:

  1. Transcribe a YouTube video using the default model:

    macscribe https://www.youtube.com/watch?v=dQw4w9WgXcQ
    
  2. Transcribe an Apple Podcast episode with a specific model:

    macscribe https://podcasts.apple.com/us/podcast/example-episode-url --model some/alternative-model
    
  3. Transcribe a local audio file:

    macscribe /path/to/your/audio.mp3
    
  4. Transcribe a local video file:

    macscribe /path/to/your/video.mp4
    

After transcription, the resulting text is automatically copied to your clipboard.

Contributing

Contributions are welcome! If you'd like to contribute to Macscribe, please follow these steps:

  1. Fork the repository on GitHub.
  2. Clone your fork and create a new branch for your feature or bugfix.
  3. Make your changes, ensuring code quality and consistency.
  4. Test your changes thoroughly.
  5. Submit a pull request describing your changes and why they should be merged.

License

This project is licensed under the MIT License. See the LICENSE file for details.


This README provides an introduction, key features, installation instructions, usage examples, contribution guidelines, and licensing information, offering a comprehensive guide to using and contributing to Macscribe.

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

macscribe-0.1.2.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

macscribe-0.1.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file macscribe-0.1.2.tar.gz.

File metadata

  • Download URL: macscribe-0.1.2.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.13

File hashes

Hashes for macscribe-0.1.2.tar.gz
Algorithm Hash digest
SHA256 aad4dfc8f706f7e78ba4cbc25a20fa54f6bc3cff8a995800a72a9a15e2d81a63
MD5 9e80b7ae958f3a006116c424005353b1
BLAKE2b-256 f73473b21740c5cc16bfb4d41eb6208fa9a81195af1fba5bbf2331910295c7da

See more details on using hashes here.

File details

Details for the file macscribe-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: macscribe-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.13

File hashes

Hashes for macscribe-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0c45f6aa83630a9282e3bfc9aa5b685816be437b4d5c8cc854765c3cbb8ee817
MD5 30427eb53d1a7c0d2322cf6de8946983
BLAKE2b-256 4cec400d42ecda61ae86e48a1efeaf4a0c29b7f1f9832b65e9f3f77c3fccf748

See more details on using hashes here.

Supported by

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