Metadata-Version: 2.1
Name: parrot1
Version: 0.1.2
Summary: A tool for writing a recap mail or report from a video recording of a call
Author: Gerlando Re
Author-email: gerlaxrex@gmail.com
Requires-Python: >=3.9,<=3.13
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Provides-Extra: all
Provides-Extra: docx
Provides-Extra: faster-whisper
Provides-Extra: llama-cpp
Provides-Extra: os-models
Provides-Extra: plotting
Requires-Dist: faster-whisper (>=0.9.0,<0.10.0) ; extra == "faster-whisper" or extra == "os-models" or extra == "all"
Requires-Dist: ffmpeg-python (>=0.2.0,<0.3.0)
Requires-Dist: huggingface-hub (>=0.19.4,<0.20.0) ; extra == "llama-cpp" or extra == "os-models" or extra == "all"
Requires-Dist: llama-cpp-python (>=0.2.20,<0.3.0) ; extra == "llama-cpp" or extra == "os-models" or extra == "all"
Requires-Dist: matplotlib (>=3.8.1,<3.9.0) ; extra == "plotting" or extra == "all"
Requires-Dist: numpy (>=1.26.2,<2.0.0)
Requires-Dist: openai (>=1.2.2,<1.3.0)
Requires-Dist: pydantic (>=2.6.1,<3.0.0)
Requires-Dist: pydub (>=0.25.1,<0.26.0)
Requires-Dist: python-docx (>=1.1.0,<1.2.0) ; extra == "docx" or extra == "all"
Requires-Dist: pytimeparse2 (>=1.7.1,<1.8.0) ; extra == "docx" or extra == "all"
Requires-Dist: typer[all] (>=0.9.0,<0.10.0)
Description-Content-Type: text/markdown

# PARRoT: Precise Audio Recognition and Recap over Transcription

[![powered by OpenAI](https://img.shields.io/badge/%7F-powered_by_OpenAI-grey.svg?logo=OpenAI)](https://shields.io/)<br>

<img src="https://github.com/gerlaxrex/parrot/blob/dbf60ce0d294d31afcebd811c5d89239623fa9d7/assets/images/parrot-logo.png?raw=true" width="500" height="500" />

A tool for writing a recap mail or report from a video recording of a call.

## Installation

PARRoT can be installed from pyPI by simply doing:

```shell
python -m pip install parrot1
```

with the following extras:

`faster-whisper` -> to install faster-whisper dependencies</br>
`llama-cpp` -> to install llama-cpp dependencies</br>
`os-models` -> to install both the previous ones</br>
`docx` -> to use external transcription</br>
`all` -> install everything</br>

For instance:
```shell
python -m pip install parrot1[os-models]
```

**NOTE:** PARRoT requires [FFmpeg](https://ffmpeg.org/) available and visible in the system! 

## Usage

You can find all the information needed for using the tool by doing 

`parrot --help`

At the moment, there are two commands:

`parrot mail <video_path>`
and
`parrot report <video_path>`

Options:

`--transcript (-t) <PATH>`: path to the transcript with speakers (Optional).

`--output-filepath (-o) <PATH>`: path to the final result (Optional, by default it creates the file in the current working directory).

`--faster-whisper (-fw)`: If set, it uses faster whisper instead of hosted OpenAI Whisper.

`--llama-cpp (-lc)`: If set, it uses llama-cpp instead of the hosted OpenAI GPT model.

## Contributing

First of all make sure you have installed pre-commit and can use it.

`pip install pre-commit`

and

`pre-commit install`

You can't push your code directly in the contrib branch. You should open a branch (feat|fix)/<major-feature>[/<sub-feature>] and then open a PR with reviewers.

Please try sticking to the code style or, for any eventual suggestion for libraries/patterns, discuss it before in a issue.

