Skip to main content

Whisper with speaker diarization

Project description

Whisper-Run

Whisper-Run is a pip CLI tool for processing audio files using Whisper models with speaker diarization capabilities. The tool allows you to process audio files, select models for audio processing, and save the results in JSON format.

It uses the OpenAI-Whisper model implementation from OpenAI Whisper, based on the ctranslate2 library from faster-whisper, and pyannote's speaker-diarization-3.1. Check their documentation if needed.

Installation

To install Whisper-Run, run the following command:

pip install whisper-run

Usage

You can call Whisper-Run from the command line using the following syntax:

whisper-run --file_path=<file_path>

Example

To process an audio file using the CPU and a specific file path:

whisper-run --device=cpu --file_path=your_file_path

When you run the command, you'll be prompted to select a model for audio processing:

[?] Select a model for audio processing:
 > distil-large-v3
   distil-large-v2
   large-v3
   large-v2
   large
   medium
   small
   base
   tiny

Flags

  • --device: Specify the device to use for processing (e.g., cpu or cuda).
  • --file_path: Specify the path to the audio file you want to process.
  • --hf_auth_token: Optional. Pass the Hugging Face Auth Token or set the HF_AUTH_TOKEN environment variable.

Output

Results are printed to the terminal as a JSON object. If the --save flag is set, the results are also saved in the results directory as a JSON file. You can change the output format in the audio_processor.py file.

Programmatic Usage

You can also use Whisper-Run programmatically in your Python scripts. Below is a basic usage example demonstrating how to use the Whisper-Run library:

Example Script

from whisper_run import AudioProcessor

def main():
    processor = AudioProcessor(file_path="your_file_path",
                               device="cpu",
                               model_name="large-v3",
                               hf_auth_token="your_hf_token",
                               save=True)
    processor.process()

if __name__ == "__main__":
    main()

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

License

This project is licensed under the Apache 2.0 License.

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

whisper-run-1.0.1.tar.gz (5.6 MB view details)

Uploaded Source

Built Distribution

whisper_run-1.0.1-py3-none-any.whl (5.6 MB view details)

Uploaded Python 3

File details

Details for the file whisper-run-1.0.1.tar.gz.

File metadata

  • Download URL: whisper-run-1.0.1.tar.gz
  • Upload date:
  • Size: 5.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.13

File hashes

Hashes for whisper-run-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a63ec6730a601255ffcb8bc8e19a04bc0e17df270223d806abd76d1c4dd911f6
MD5 d1347115f7397aa0f2b493916f8f6598
BLAKE2b-256 b2b9774d4369a6f67634aa9ba3db709971adcb42bbca3673be76c95b7422e33a

See more details on using hashes here.

File details

Details for the file whisper_run-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: whisper_run-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.13

File hashes

Hashes for whisper_run-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 39691d283e2187b12b1e4779860a4affe1b98a10b9b87d279f38becabd781e80
MD5 aaf515d64825c6e6b77be717356cb1d8
BLAKE2b-256 181bccfa34726fa4d333a8430f008f1e554d0bc3c90e60949bf1a9b7b87c7a55

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