Metadata-Version: 2.1
Name: outspeed
Version: 0.2.9
Summary: 
Author: Outspeed
Author-email: contact@outspeed.ai
Requires-Python: >=3.9,<4.0
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: plugins
Provides-Extra: silero
Requires-Dist: aiohttp (>=3.9.5,<4.0.0)
Requires-Dist: aiortc (>=1.8.0,<2.0.0)
Requires-Dist: azure-cognitiveservices-speech (>=1.37.0,<2.0.0)
Requires-Dist: click (>=8.1.7,<9.0.0)
Requires-Dist: coloredlogs (>=15.0.1,<16.0.0)
Requires-Dist: dacite (>=1.8.1,<2.0.0)
Requires-Dist: dill (>=0.3.8,<0.4.0)
Requires-Dist: elevenlabs (>=1.2.0,<2.0.0) ; extra == "plugins" or extra == "all"
Requires-Dist: fal-client (>=0.4.0,<0.5.0) ; extra == "plugins" or extra == "all"
Requires-Dist: fastapi (>=0.110.2,<0.111.0)
Requires-Dist: fireworks-ai (>=0.14.0,<0.15.0) ; extra == "plugins" or extra == "all"
Requires-Dist: google-cloud-vision (>=3.7.2,<4.0.0) ; extra == "plugins" or extra == "all"
Requires-Dist: google-generativeai (>=0.7.0,<0.8.0)
Requires-Dist: llama-index (>=0.11.17,<0.12.0)
Requires-Dist: numpy (>=1.26.4,<2.0.0)
Requires-Dist: openai (>=1.35.10,<2.0.0)
Requires-Dist: opencv-python-headless (>=4.10.0.82,<5.0.0.0) ; extra == "plugins" or extra == "all"
Requires-Dist: pillow (>=10.3.0,<11.0.0)
Requires-Dist: pydub (>=0.25.1,<0.26.0)
Requires-Dist: pyloudnorm (>=0.1.1,<0.2.0)
Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
Requires-Dist: python-multipart (>=0.0.9,<0.0.10)
Requires-Dist: realtime-aioice (>=0.9.0,<0.10.0)
Requires-Dist: requests (>=2.31.0,<3.0.0)
Requires-Dist: scipy (>=1.13.1,<2.0.0)
Requires-Dist: setuptools (>=69.5.1,<70.0.0)
Requires-Dist: silero-vad (>=5.1,<6.0) ; extra == "silero" or extra == "all"
Requires-Dist: torch (>=2.2.0,<3.0.0) ; extra == "silero" or extra == "all"
Requires-Dist: torchaudio (>=2.2.0,<3.0.0) ; extra == "silero" or extra == "all"
Requires-Dist: torchvision (>=0.17.0,<0.18.0) ; extra == "silero" or extra == "all"
Requires-Dist: urllib3 (<2.0)
Requires-Dist: uvicorn (>=0.29.0,<0.30.0)
Requires-Dist: websockets (>=12.0,<13.0)
Description-Content-Type: text/markdown

<div align="center">

<p align="center">
  <picture>
  <source media="(prefers-color-scheme: dark)" srcset="/.github/outspeed_dark.jpg">
  <source media="(prefers-color-scheme: light)" srcset="/.github/outspeed_light.jpg">
  <img style="width:50%;" alt="The Outspeed Logo and SDK repository." src="https://raw.githubusercontent.com/outspeed/outspeed/main/.github/banner_light.png" width="50%">
  </picture>
</p>

[![Twitter](https://img.shields.io/twitter/url/https/twitter.com/outspeed.svg?style=social&label=Follow%20%40outspeedAI)](https://twitter.com/outspeedAI) [![GitHub Repo stars](https://img.shields.io/github/stars/outspeed-ai/outspeed?style=social)](https://github.com/outspeed-ai/outspeed)
[![pypi](https://img.shields.io/pypi/v/outspeed.svg)](https://pypi.python.org/pypi/outspeed)
[![Downloads](https://static.pepy.tech/badge/outspeed/month)](https://pepy.tech/project/outspeed)

[Community](https://discord.gg/cmffw6syvp) | [Docs](https://docs.outspeed.com) | [Dashboard](https://app.outspeed.com)

</div>

# Outspeed

Outspeed is a PyTorch-inspired SDK for building real-time AI applications on voice and video input. It offers:

- Low-latency processing of streaming audio and video
- Intuitive API familiar to PyTorch users
- Flexible integration of custom AI models
- Tools for data preprocessing and model deployment

Ideal for developing voice assistants, video analytics, and other real-time AI applications processing audio-visual data.

## Install

You can install `outspeed` SDK from pypi using

```
pip install "outspeed[silero]>=0.1.143"
```

This would install the core `outspeed` package.
Read our [quickstart guide](https://docs.outspeed.com/examples/quickstart) to get started.

### Usage

Read the [docs](http://docs.outspeed.com) to learn more about the SDK.

To deploy your realtime function on Outspeed's infra, you can use the `outspeed deploy` CLI.

```
# functions.py contains your realtime function code
outspeed deploy --api-key=<your-api-key> functions.py
```

[Contact us](mailto:contact@outspeed.com) to get an API key and deploy.

Once deployed, you can use the playground in the examples repo to test the deployed code.

### Examples

All the examples are available in the `examples` folder.
To install the package so that all examples run, use:

```
pip install "outspeed[silero]>=0.1.143"
```

Or, if you're using poetry:

```
poetry add 'outspeed[silero]'
```

This will install all the additional libraries that are required for examples to work.

---

### Logging

To develop on top of the SDK, set environment variable `DEV_INFO` or `DEV_DEBUG` to get logs from the SDK for the corresponding log level.

## Roadmap

| Feature                                                      | Status     | Target Release |
| ------------------------------------------------------------ | ---------- | -------------- |
| Local STT                                                    | On the way | Q4 2024        |
| DeepReel Integration (Human Clone)                           | On the way | Q4 2024        |
| Long Conversation Support                                    | Planned    | Q4 2024        |
| Local Model Vision and Text (With Ollama, and vision models) | Planned    | Q4 2024        |
| Call Recording                                               | Planned    | Q4 2024        |
| Wakeup Word                                                  | Planned    | Q4 2024        |
| On device models                                             | Planned    | Q4 2024        |
| Local TTS                                                    | Planned    | Q4 2024        |

## Run CircleCI Tests Locally

Make sure docker is installed and running.

```
brew install circleci
circleci local execute run-tests
```

## Contribute

We welcome contributions to the Outspeed SDK! If you're interested in contributing, please submit a PR or [contact us](mailto:contact@outspeed.com).

