Coder Social home page Coder Social logo

brandy2015 / buzz Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chidiwilliams/buzz

0.0 0.0 0.0 28.05 MB

Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAI's Whisper.

License: MIT License

Python 95.10% Makefile 3.78% Inno Setup 1.11%

buzz's Introduction

Buzz

Transcribe and translate audio offline on your personal computer. Powered by OpenAI's Whisper.

MIT License CI codecov GitHub release (latest by date) Github all releases

Buzz

Features

Installation

To install Buzz, download the latest version for your operating system. Buzz is available on Mac, Windows, and Linux.

Mac (macOS 11.7 and later)

  • Install via brew:

    brew install --cask buzz

    Alternatively, download and run the Buzz-x.y.z.dmg file.

Windows (Windows 10 and later)

  • Download and run the Buzz-x.y.z.exe file.

Linux (Ubuntu 20.04 and later)

  • Install dependencies:

    sudo apt-get install libportaudio2
  • Download and extract the Buzz-x.y.z-unix.tar.gz file

How to use

Live Recording

To start a live recording:

  • Select a recording task, language, quality, and microphone.
  • Click Record.

Note: Transcribing audio using the default Whisper model is resource-intensive. If your computer is unable to keep up with real-time transcription, consider turning on GGML inference.

Field Options Default Description
Task "Transcribe", "Translate" "Transcribe" "Transcribe" converts the input audio into text in the selected language, while "Translate" converts it into text in English.
Language See Whisper's documentation for the full list of supported languages "Detect Language" "Detect Language" will try to detect the spoken language in the audio based on the first few seconds. However, selecting a language is recommended (if known) as it will improve transcription quality in many cases.
Quality "Very Low", "Low", "Medium", "High" "Very Low" The transcription quality determines the Whisper model used for transcription. "Very Low" uses the "tiny" model; "Low" uses the "base" model; "Medium" uses the "small" model; and "High" uses the "medium" model. The larger models produce higher-quality transcriptions, but require more system resources. See Whisper's documentation for more information about the models.
Microphone [Available system microphones] [Default system microphone] Microphone for recording input audio.

Live Recording on Buzz

Record audio playing from computer

To record audio playing from an application on your computer, you may install an audio loopback driver (a program that lets you create virtual audio devices). The rest of this guide will use BlackHole on Mac, but you can use other alternatives for your operating system ( see LoopBeAudio, LoopBack, and Virtual Audio Cable).

  1. Install BlackHole via Homebrew

    brew install blackhole-2ch
  2. Open Audio MIDI Setup from Spotlight or from /Applications/Utilities/Audio Midi Setup.app.

    Open Audio MIDI Setup from Spotlight

  3. Click the '+' icon at the lower left corner and select 'Create Multi-Output Device'.

    Create multi-output device

  4. Add your default speaker and BlackHole to the multi-output device.

    Screenshot of multi-output device

  5. Select this multi-output device as your speaker (application or system-wide) to play audio into BlackHole.

  6. Open Buzz, select BlackHole as your microphone, and record as before to see transcriptions from the audio playing through BlackHole.

File import

To import a file:

  • Click Import Media File on the File menu (or the '+' icon on the toolbar, or Command/Ctrl + O).
  • Choose an audio or video file.
  • Select a task, language, and the model settings.
  • Click Run.
  • When the transcription status shows 'Completed', double-click on the row (or select the row and click the '⤢' icon) to open the transcription.
Field Options Default Description
Export As "TXT", "SRT", "VTT" "TXT" Export file format
Word-Level Timings Off / On Off If checked, the transcription will generate a separate subtitle line for each word in the audio. Enabled only when "Export As" is set to "SRT" or "VTT".

(See the Live Recording section for more information about the task, language, and quality settings.)

Media File Import on Buzz

Build

To build/run Buzz locally from source, first install the requirements:

  1. Poetry

Then:

  1. Clone the repository

    git clone --recurse-submodules https://github.com/chidiwilliams/buzz
  2. Install the project dependencies.

    poetry install
  3. (Optional) To use Whisper.cpp inference, run:

    make buzz/whisper_cpp.py
  4. (Optional) To compile the translations, run:

    make translation_mo
  5. Finally, run the app with:

    poetry run python main.py

    Or build with:

    poetry run pyinstaller --noconfirm Buzz.spec

FAQ

  1. Where are the models stored?

    The Whisper models are stored in ~/.cache/whisper. The Whisper.cpp models are stored in ~/Library/Caches/Buzz ( Mac OS), ~/.cache/Buzz (Unix), or C:\Users\<username>\AppData\Local\Buzz\Buzz\Cache (Windows). The Hugging Face models are stored in ~/.cache/huggingface/hub.

  2. What can I try if the transcription runs too slowly?

    Try using a lower Whisper model size or using a Whisper.cpp model.

buzz's People

Contributors

chenrui333 avatar chidiwilliams avatar faveoled avatar jordimas avatar kohasummons avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.